RemObjects Software — американская компания-разработчик программного обеспечения, основанная в 2002 году Алессандро Федеричи и Марком Хоффманом. Она разрабатывает и предлагает инструменты и библиотеки для разработчиков программного обеспечения на различных платформах разработки, включая Embarcadero Delphi , Microsoft .NET , Mono и Xcode от Apple .
Компания RemObjects Software была основана летом 2002 года. Ее первым продуктом был RemObjects SDK 1.0 для Delphi, решение компании для удаленного взаимодействия, которое сейчас находится в своей 6-й версии. В конце 2003 года RemObjects расширила свой портфель продуктов, добавив Data Abstract для Delphi, многоуровневую структуру баз данных, построенную поверх SDK.
В 2004 году Карло Кок, который в конечном итоге стал главным архитектором компиляторов Oxygene , присоединился к компании, добавив библиотеку Pascal Script с открытым исходным кодом для Delphi в портфолио компании. Первоначальная разработка началась на Oxygene (который тогда назывался Chrome ) на основе опыта Карло по написанию широко используемого движка сценариев Pascal Script. К концу 2004 года был выпущен RemObjects SDK для .NET, расширив фреймворк удаленного взаимодействия до второй платформы.
Chrome 1.0 был выпущен в середине 2005 года, обеспечивая поддержку .NET 1.1 и .NET 2.0, который в то время все еще находился в стадии бета-тестирования, что сделало Chrome первым языком поставки для .NET, который поддерживал такие функции, как дженерики. За ним последовал Chrome 1.5, когда .NET 2.0 был поставлен в ноябре того же года. В 2005 году Data Abstract также был расширен до .NET в качестве второй платформы. Data Abstract для .NET был первым продуктом RemObjects (помимо самого Oxygene), написанным на Oxygene.
Hydra 3.0 была выпущена для .NET в декабре 2006 года, привнеся в продукт сдвиг парадигмы, отходя от обычного фреймворка плагинов и сосредоточившись на взаимодействии между плагинами и хост-приложениями, написанными как на .NET, так и на Delphi/Win32, что по сути позволило использовать как управляемый, так и неуправляемый код в одном проекте.
Летом 2007 года RemObjects выпустила Chrome «Joyride», в который была добавлена официальная поддержка .NET 3.0 и 3.5. Chrome снова стал первым языком, предоставившим поддержку на уровне релиза для новых функций фреймворка .NET, поддерживаемых этой средой выполнения — в первую очередь последовательностей и запросов (также известных как LINQ ).
Разработка продолжилась, и в мае 2008 года был выпущен Oxygene 3.0, в котором было убрано название «Chrome». Oxygene снова принес основные улучшения языка, включая обширную поддержку параллелизма и параллельного программирования как части синтаксиса языка. В октябре 2008 года RemObjects Software и Embarcadero Technologies объявили о планах сотрудничества и выпуска будущих версий Oxygene под названием Delphi Prism , позднее измененным на Embarcadero Prism. Первый из этих релизов Prism стал доступен в декабре 2008 года.
В течение 2009 года компания RemObjects Software завершила расширение своего продукта Data Abstract и RemObjects SDK на третью платформу разработки — Xcode и Cocoa, для разработки клиентов Mac OS X и iPhone SDK . RemObjects SDK для OS X был выпущен весной 2009 года, а осенью — Data Abstract для OS X.
В 2011 году Oxygene был расширен и добавил поддержку платформы Java в дополнение к NET.
В 2014 году RemObjects представила компилятор C# , работающий как плагин Visual Studio 2013, который может выводить код для iOS , MacOS ( Cocoa ) и Android, в дополнение к коду, совместимому с .NET. [1] Кроме того, для macOS была представлена IDE под названием Fire, которая работает с их компиляторами C# и Oxygene. [2]
Вместе компилятор, поддерживающий как Oxygene, так и C#, был переименован в Elements Compiler, при этом CE# получил кодовое название «Hydrogene».
В феврале 2015 года RemObjects представила бета-версию компилятора Swift под названием Silver в рамках своих усилий Elements. Silver также мог создавать код, который будет выполняться на Android, JVM, платформе .NET, а также создавать собственный код Cocoa. [3] Silver добавил новые функции в язык Swift, такие как исключения, и имеет несколько отличий и ограничений по сравнению с Swift от Apple. [4]
В феврале 2020 года поддержка языка программирования Go была представлена в RemObjects Gold, включая возможность компиляции кода языка Go для всех платформ Elements, а также порт обширной базовой библиотеки Go, доступной для всех языков Elements. [5]
В 2021 году Mercury был добавлен в компилятор Elements в качестве шестого языка, обеспечив будущее для языка Visual Basic .NET, недавно объявленного устаревшим Microsoft . Mercury поддерживает создание и поддержку существующих проектов VB.NET, а также использование языка для новых проектов как на .NET, так и на других платформах.