ISLISP (sau ISLisp ) este un limbaj de programare din familia LISP de limbaje a cărei specificație a fost dezvoltată de ISO/IEC JTC 1/SC 22/WG 16 [1] (denumit în mod obișnuit SC22/WG16 sau WG16 ). Scopul dezvoltării a fost de a defini un limbaj compact care să combine trăsăturile comune ale dialectelor Lisp utilizate efectiv în scopuri industriale și ar putea ajuta la depășirea diferențelor dintre ele.
Prima versiune a fost publicată de ISO în 1997 sub titlul „ ISO/IEC 13816:1997(E) ”. O actualizare a fost lansată în 2007 și publicată ca „ ISO/IEC 13816:2007(E) ”. [2] Publicațiile oficiale ale standardului au trecut prin ISO, dar sunt disponibile proiecte de specificații de domeniul public . [3]
ISLISP este caracterizat ca fiind „compatibil din punct de vedere ideologic” cu Common Lisp , este construit pe aceleași principii arhitecturale de bază (sfera lexicală, spații de nume separate pentru funcții și variabile, sistem macro, suport OOP), dar nu este un subset al acestuia. Specificația ISLISP este de aproximativ zece ori mai mică decât specificația Common Lisp.
Grupul de lucru a studiat principalele dialecte „vii” Lisp la momentul dezvoltării, în primul rând Common Lisp , EuLisp , Le Lisp și Scheme ; numai mijloacele comune acestora au fost incluse în standard.
Conform site-ului web ISLISP.info, ISLISP a fost construit pe următoarele principii:
ISLISP, ca și Common Lisp, acceptă definirea lexicală (deși permite ca variabilele dinamice să fie utilizate cu facilități speciale) și implementează spații de nume separate pentru funcții și variabile (de unde Lisp-2).
Sistemul de obiecte ISLISP, ILOS, este în cea mai mare parte un subset al CLOS .
Nume | Autor | Implementarea completă a ISLisp | Arhitectură | Limbajul de implementare | OS | Licență | Disponibilitatea surselor |
---|---|---|---|---|---|---|---|
openlisp | Eligis | da | interpret, compilare către C | C, Lisp | Windows, macOS, Linux, BSD, AIX, Solaris, QNX | proprietate | parţial |
OKI ISLISP | Universitatea din Kyoto și Oki Electric Industry Co. | da | compilare la bytecode, execuție de bytecode într-o mașină virtuală | C | Windows | nu există date | Nu |
PRIME-LISP | Mihail Semionov | da | interpret | C# | Windows | shareware (distribuit gratuit în formă binară) | Nu |
iris | TANIGUCHI Masaya (link indisponibil) | Nu | interpret | Merge | orice | Licență publică Mozilla 2.0 | da |
Iris web REPL | TANIGUCHI Masaya (link indisponibil) | Nu | interpret, compilare la JavaScript | Du-te, JavaScript | browser | Licență publică Mozilla 2.0 | da |
Sărut | Yuji Minejima | Nu încă | interpret | C, Lisp | orice | GPL v3+ | da |
ISLisproid | GOMI Hiroshi | Nu | interpret | Java | Android | proprietate | Nu |
dayLISP | Matthew Denson | Nu | interpret | Java Lisp | orice | BSD | da |
Easy-ISLisp | Kenichi Sasagawa | ? | interpret, compilare către C | C, Lisp | Windows, Linux | proprietar (numai pentru uz necomercial) | parţial |
Nume | Autor | Implementarea completă a ISLisp | Arhitectură | Limbajul de implementare | OS | Licență | Disponibilitatea surselor |
Două implementări mai vechi nu sunt disponibile în prezent:
Lisp | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Caracteristici |
| ||||||||||||||
Implementări |
| ||||||||||||||
Hardware |
| ||||||||||||||
Comunitate |
| ||||||||||||||
|