Genie (язык программирования) - Википедия - Genie (programming language)
Парадигма | мультипарадигма: императив, структурированный, объектно-ориентированный |
---|---|
Разработано | Джейми МакКракен |
Впервые появился | 2008 |
Стабильный выпуск | 0.38.8 / 15 февраля 2018 г. |
Печатная дисциплина | статический, сильный |
Операционные системы | Кроссплатформенность (каждая платформа поддерживается GLib ) |
Лицензия | LGPLv2.1 + |
Расширения имени файла | .gs |
Интернет сайт | вики |
Под влиянием | |
Python, Бу, D, Object Pascal |
Джинн современный универсальный язык программирования высокого уровня в разработке с 2008 года.[1] Он был разработан как альтернативный, более простой и понятный диалект для Вала компилятор, сохраняя при этом ту же функциональность, что и язык Vala. Genie использует тот же компилятор и библиотеки, что и Vala; эти два действительно могут использоваться вместе друг с другом.[2] Различия только синтаксические.
Джинна синтаксис происходит от множества современных языков, таких как Python, Бу, D и Delphi. В духе Паскаля и Python Genie использует отступ скорее, чем фигурные скобки разграничивать блоки.
Как и Вала, Джинн использует GObject система типов для создания классов и интерфейсов, объявленных в исходном коде Genie, без дополнительных требований времени выполнения (т.е., в отличие от Python, Ява или C #, не требуется виртуальная машина ).
Genie открывает доступ к C библиотеки, особенно основанные на GObject (например, GTK ), без использования другого двоичный интерфейс приложения (ABI). В течение сборник, код сначала транслируется в исходные файлы и заголовочные файлы C, которые затем компилируются в зависимости от платформы. Машинный код используя любой доступный компилятор C, например GCC, что позволяет кросс-платформенный разработка программного обеспечения.
Программы, разработанные в Vala и Genie, не зависят от ГНОМ Окружение рабочего стола, обычно требующее только GLib.
Примеры кода
"Привет, мир"
В этом примере для отступа явно используются четыре пробела.
[indent = 4] init print "Привет, мир!"
Объекты
Без явного объявления отступа по умолчанию используются вкладки.
class Sample def run () stdout.printf ("Привет, мир! n") init var sample = new Sample () sample.run ()
Критика
Эта статья должна быть обновлено.Июнь 2019) ( |
По состоянию на 2013 год[Обновить], Genie для циклов являются включенными, что затрудняет обработку пустых списков:[3]
вар л = новый список из нитьесли л.размер > 0 за вар я = 0 к (л.размер - 1) Распечатать л.@получать(я)
Однако списки можно перебирать легко и просто с помощью конструкции for-in:[4]
вар л = новый список из нитьза s в л: Распечатать s
Рекомендации
- ^ Джейми Маккракен (2008). «Представляем Genie - умный язык программирования». Архивировано из оригинал на 18.08.2011.
- ^ Совместное использование Джини и Валы
- ^ Таль Лирон (11 января 2013 г.). Джинн. Событие происходит в 32:29.
- ^ https://wiki.gnome.org/Projects/Genie#Lists_.28Gee.27s_ArrayList.29
внешняя ссылка
- Официальный веб-сайт
- Страница Барри Каулера на Genie на Wayback Machine (архивировано 17 февраля 2010 г.)
- Использование языка программирования Genie в Puppy Linux
- Puppy Linux: программирование на Vala и Genie
- Документация по API
- поиск проектов на github, написанных на genie
Этот язык программирования -связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |