About RemObjects Oxygene

Next generation Object Pascal language for .NET, Java, Android and iOS apps.

RemObjects Oxygene is a modern, object oriented programming language. It builds on the strong foundation of Object Pascal, but extends it with many groundbreaking language features that will change the way you create software. Oxygene lets you target all platforms truly natively. This means that whether you are developing for iOS, watchOS, tvOS, the Mac, Android, Windows Phone, the regular Windows desktop, Linux or the Web, you will be working directly with each platform's native APIs and frameworks, and using the platform's native UI widgets. No unnecessary abstractions, and no lowest-common-denominator UI.

RemObjects Oxygene Features

Oxygene lets you compile your code for different target platforms. A target platform can be an operating system (such as Windows, or macOS) or a more virtualized multi-platform runtime environment (such as Java or .NET). The same language features are available on each platform and it is really easy to share code between platforms. But first and foremost, Oxygene is a great native fit on each individual platform, giving you full access to all the native APIs, frameworks, UI widgets, and so on:

  • .NET - The .NET platform includes the regular .NET Framework, as well as Mono, .NET Core, ASP.NET, WinRT and Universal Windows Projects). .NET is a great target for writing Windows GUI apps, cross-platform servers (to deploy with .NET Core or Mono), command line tools, and websites.
  • Cocoa - Build apps for Apple's macOS, iOS, iPadOS, tvOS and watchOS, based on the Cocoa frameworks. Code interacts directly with Objective-C runtime classes and APIs, and also has full access to lower-level C and POSIX APIs.
  • Android - Build applications for Android, both using the regular Java-based Android SDK as well as extensions using the native Android NDK (using the same language!). SDK applications give you full access to the standard Android APIs, while Android NDK extensions are great for high-performance or low-level code in Android apps that cannot easily be achieved on the Java level.
  • Java - Build projects for the Java Runtime and related platforms. Your code will be compiled to Java byte code that can run anywhere the Java VM is supported.
  • WebAssembly - Build modules that can run in the browser and interact with JavaScript and the HTML Document Object Model.
  • Windows (native) - Build CPU-native Windows projects against the lower-level Win32 API or using Delphi RTL/VCL.
  • Linux - Build CPU-native Linux projects against the low-level libc and POSIX APIs.