Кава (реализация схемы) - Kawa (Scheme implementation)
| Семья | Лисп |
|---|---|
| Разработано | Пер Ботнер |
| Разработчик | Сообщество Кава |
| Впервые появился | 9 февраля 1998 г. |
| Стабильный выпуск | |
| Язык реализации | Ява, Схема |
| Платформа | Виртуальная машина Java |
| Операционные системы | Кроссплатформенность |
| Лицензия | Массачусетский технологический институт |
| Интернет сайт | www |
| Под влиянием | |
| Лисп, Схема | |
Кава это язык рамки написано на языке программирования Ява который реализует язык программирования Схема, диалект Лисп, и может использоваться для реализации других языков для работы на Виртуальная машина Java (JVM). Это часть Проект GNU.
Название Кава исходит из Польский слово для кофе; игра слов, поскольку Java - еще одно знакомое название кофе.
Интеграция с Java
Помимо использования языковой схемы, к полям и методам объектов Java можно получить доступ с помощью такого кода, как: (вызывать объект 'метод аргумент ...). Это вызовет метод Java и сделает то же самое, что и объект.метод(аргумент, ...) в Java. Доступ к полям объекта можно получить с помощью: объект: имя-поля или же (вызывать объект 'имя-поля). Статические (классовые) методы можно вызывать с помощью функции invoke-static. Kawa можно расширить с помощью кода Java (путем создания схемных функций на Java) и объединить с другими реализациями JVM.
Как пользоваться
Kawa можно нормально запустить через кава сценарий:
$ кава [необязательные аргументы] ...Как вариант, Kawa можно запустить рукой:
$ java -jar /path/to/kawa/kawa.jar [необязательные аргументы] ...Чтобы скомпилировать файл схемы в файл класса, -C параметр используется:
$ java kawa.repl --main -C file.scmЭто произведет file.class, который можно запустить, набрав файл java. Также возможно создать апплет или сервлет (чтобы скомпилировать сервлет, сервлет-xxx.jar должен быть в КЛАСС Переменная).
Смотрите также
внешняя ссылка
| 1955 | 1960 | 1965 | 1970 | 1975 | 1980 | 1985 | 1990 | 1995 | 2000 | 2005 | 2010 | 2015 | 2020 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LISP 1, 1.5, LISP 2(заброшенный) | ||||||||||||||
| Маклисп | ||||||||||||||
| Интерлисп | ||||||||||||||
| Лисп-машина Лисп | ||||||||||||||
| Схема | R5RS | R6RS | R7RS маленький | |||||||||||
| Ноль | ||||||||||||||
| Ференц Лисп | ||||||||||||||
| Common Lisp | ||||||||||||||
| Le Lisp | ||||||||||||||
| Т | ||||||||||||||
| Chez Scheme | ||||||||||||||
| Emacs Lisp | ||||||||||||||
| AutoLISP | ||||||||||||||
| ПикоЛисп | ||||||||||||||
| EuLisp | ||||||||||||||
| ISLISP | ||||||||||||||
| OpenLisp | ||||||||||||||
| Схема PLT | Ракетка | |||||||||||||
| GNU Guile | ||||||||||||||
| Визуальный LISP | ||||||||||||||
| Clojure | ||||||||||||||
| Дуга | ||||||||||||||
| LFE | ||||||||||||||
| Hy | ||||||||||||||
- ^ "Кава: Новости - Последние изменения". gnu.org. Получено 2020-02-14.