



Native Linux and Windows

Welcome to the Island! With Version 9, Elements gains its fourth major target platform: native Windows and Linux (as well as the groundwork for other native targets, moving forward).

Read More about Island or browse the Docs.





Swift 3.0

Apple has evolved the Swift language in major ways for version 3.0, and Elements adds support for this new version of the language, including many language enhancements and changes, as well as the Grand Rename of imported Cocoa APIs.

And of course — Silver continues to be completely free.

Read More and browse the Docs.





Unified Class Syntax for Oxygene

Oxygene is growing up and throwing away the shackles of separating class declaration and implementation – if you want to. With the new Unified Class Syntax, you can now implement methods right inside the declaration, bringing Oxygene closer to the simplicity of C# and Swift or Java.

Read our blog post.





Integrated EUnit Testing in Fire

Elements 9 takes unit testing with EUnit to the next level. Simple press ⌘T in Fire, and your test project will build, run, and report test results back to you right within the context of your code – the same way you also see build messages.

Read our blog post or browse the Docs.





Escape from Delphi: The Library

Continuing our Escape from Delphi theme, we keep making changes to make it easier for Delphi developers to port their code over to Oxygene.

Elements 9 ships a preview, really just a first glimpse of what's to come, of a new library that aims to bring the most common Delphi RTL and (non-visual, non-db) VCL functions and classes over to Oxygene, so that you can reuse yet more code, unchanged.

This includes a Delphi-compatible WideString type, units such as SysUtils , and of course classes such as TStringList & Co.

The library is open source, and a work in progress, but a first preview is shipping in this release.

Read more about Escaping from Delphi, or see the library on GitHub.





Sugar: Improved

Sugar has improved a lot for Elements 9, with new APIs on existing classes, new encapsulations (such as Encoding, TimeZone or Locale), and dozens of fixes. The library is really coming together as a great base library to use in projects – cross-platform or otherwise.

Read more about Sugar or see it on GitHub.





Language Improvements

And like always, Elements has a plethora of other core languages and compiler improvements.

New in this version are support for interface extensions and default interface implementations (think "mix-ins") for Oxygene and C#, full extension type support in C#, some initial C# 7 features, and much more.





Fire “2.0”

Shipped just earlier this year, Fire (our brand new development environment for Elements on the Mac) keeps getting better and better. From a new Call Parameter list in the editor to inline in the debugger locals, from a new Command Line Argument Manager to Integrated EUnit testing, and more.

Read More about Fire or browse the Docs.



See also what was new in Version 8.3, Version 8.2, Version 8.1, Version 8.