Джинн (язык программирования)
Редактор подал заявку на удаление этой статьи. Вы можете принять участие в обсуждении удаления , в ходе которого будет решено, сохранять его или нет . |
Парадигма | мультипарадигмальность : императивная , структурированная , объектно-ориентированная. |
---|---|
Разработано | Джейми Маккракен |
Впервые появился | 2008 год |
Стабильная версия | 0.52.3
/ 1 мая 2021 г |
Дисциплина набора текста | статический , сильный |
ТЫ | Кроссплатформенность (каждая платформа, поддерживаемая GLib ) |
Лицензия | LGPLv2.1+ |
Расширения имен файлов | .gs |
Веб-сайт | неделя |
Под влиянием | |
Python , Бу , D , Объектный Паскаль |
Genie общего назначения, — современный язык программирования высокого уровня разрабатываемый с 2008 года. [1] Он был разработан как альтернативный, более простой и понятный диалект Vala компилятора , сохраняющий при этом ту же функциональность языка Vala. Genie использует тот же компилятор и библиотеки, что и Vala; эти два действительно могут использоваться рядом друг с другом. [2] Различия только синтаксические.
Genie Синтаксис заимствован из многих современных языков, таких как Python , Boo , D и Delphi . В духе Python Genie использует отступы, а не явные разделители блоков (например, фигурные скобки для разделения блоков ) .
Как и Vala, Genie использует систему типов GObject для создания классов и интерфейсов, объявленных в исходном коде Genie, без предъявления дополнительных требований времени выполнения (т. е. в отличие от Python, Java или C# не требуется виртуальная машина ).
Genie обеспечивает доступ к библиотекам C , особенно к библиотекам, основанным на GObject (например, GTK ), без использования другого двоичного интерфейса приложения (ABI). Во время компиляции код сначала транслируется в исходный код C и файлы заголовков, которые затем компилируются в машинный код , специфичный для платформы, с использованием любого доступного компилятора C, такого как GCC , что позволяет разрабатывать кросс-платформенное программное обеспечение.
Программы, разработанные в Vala и Genie, не зависят от среды рабочего стола GNOME и обычно требуют только GLib .
Примеры кода
[ редактировать ]"Привет, мир"
[ редактировать ]В этом примере для отступов явно используются четыре пробела.
[indent=4] init print "Hello, world!"
Объекты
[ редактировать ]Без явного объявления отступов по умолчанию используются табуляции.
class Sample def run() stdout.printf("Hello, world! \n ") init var sample = new Sample() sample.run()
Критика
[ редактировать ]В этом разделе есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
По состоянию на 2013 год [update]Циклы Genie "for" являются инклюзивными, что делает обработку пустых списков затруднительной: [3]
var l = new list of string
if l.size > 0
for var i = 0 to (l.size - 1)
print l.[i]
Однако можно также перебирать списки с помощью конструкции for-in. Это легко и просто: [4]
var l = new list of string
for s in l:
print s
Ссылки
[ редактировать ]- ^ Джейми Маккракен (2008). «Представляем Genie — умный язык программирования» . Архивировано из оригинала 18 августа 2011 г.
- ^ Совместное использование Джини и Валы.
- ^ Таль Лирон (11 января 2013 г.). Джинн . Событие происходит в 32:29. Архивировано из оригинала 20 декабря 2021 г.
- ^ «Проекты/Джинн — GNOME Wiki!» .
Внешние ссылки
[ редактировать ]- Официальный сайт
- Страница Барри Каулера о Genie at the Wayback Machine (архивировано 17 февраля 2010 г.)
- Использование языка программирования Genie под Puppy Linux
- Puppy Linux: программирование Vala и Genie
- API-документация
- искать проекты GitHub, написанные на genie
- программное обеспечение 2008 года
- Кроссплатформенное бесплатное программное обеспечение
- Языковые привязки GTK
- Языки программирования высокого уровня
- Объектно-ориентированные языки программирования
- Языки программирования, созданные в 2008 году.
- Программное обеспечение, использующее лицензию LGPL
- Статически типизированные языки программирования
- Незавершенные темы по языку программирования