ISLISP

Last updated
ISLISP
Paradigms Multi-paradigm: functional, procedural, object-oriented, reflective, meta
Family Lisp
Designed by Many
Developers Many
Implementation language C, C#, Go, Java, JavaScript, Lisp
Platform IA-32, x86-64
OS Windows, macOS, Linux, BSD, AIX, Solaris, Android, QNX
Dialects
dayLISP, Easy-ISLisp, Iris, Isle ISLISP, ISLisproid, Kiss, OKI ISLISP, OpenLisp, PRIME-LISP
Influenced by
Common Lisp, EuLisp, Le Lisp, Scheme

ISLISP (also capitalized as ISLisp) is a programming language in the Lisp family standardized by the International Organization for Standardization (ISO) and International Electrotechnical Commission (IEC) joint working group ISO/IEC JTC 1/SC 22/WG 16 [1] (commonly termed simply SC22/WG16 or WG16). The primary output of this working group was an international standard, published by ISO. [2] The standard was updated in 2007 and republished as ISO/IEC 13816:2007(E). [3] [4] Although official publication was through ISO, versions of the ISLISP language specification are available that are believed to be in the public domain. [5]

Contents

The goal of this standards effort was to define a small, core language to help bridge the gap between differing dialects of Lisp. It attempted to accomplish this goal by studying primarily Common Lisp, EuLisp, Le Lisp, and Scheme and standardizing only those features shared between them.

19581960196519701975198019851990199520002005201020152020
 LISP 1, 1.5, LISP 2(abandoned)
  Maclisp
  Interlisp
  MDL
  Lisp Machine Lisp
  Scheme  R5RS R6RS R7RS small
  NIL
  ZIL (Zork Implementation Language)
  Franz Lisp
  Common Lisp  ANSI standard
  Le Lisp
  MIT Scheme
  XLISP
  T
  Chez Scheme
  Emacs Lisp
  AutoLISP
  PicoLisp
  Gambit
  EuLisp
  ISLISP
  OpenLisp
  PLT Scheme   Racket
  newLISP
  GNU Guile
  Visual LISP
  Clojure
  Arc
  LFE
  Hy

Design goals

ISLISP has these design goals: [6]

ISLISP has separate function and variable namespaces (hence it is a Lisp-2).

ISLISP's object system, ILOS, is mostly a subset of the Common Lisp Object System (CLOS).

Major differences from Common Lisp

Implementations

ISLISP implementations have been made for many operating systems including: Windows, most Unix and POSIX based (Linux, macOS, FreeBSD, OpenBSD, NetBSD, Solaris, HP-UX, AIX, Cygwin, QNX), Android, DOS, OS/2, Pocket PC, OpenVMS, and z/OS.

Implementations for hardware computer architectures include: x86, x86-64, IA-64, SPARC, SPARC9, PowerPC, MIPS, Alpha, PA-RISC, ARM, AArch64

ISLISP implementations
NameCreatorComplete ISLispArchitectureWritten in Operating system License Source code available
OpenLisp Eligis [7] Yes interpreter, compiles to C C, Lisp Windows, macOS, Linux, BSD, AIX, Solaris, QNX Proprietary Partial
OKI ISLISP [8] Kyoto University and Oki Electric Industry Co.Yes Bytecode machine, compiles to bytecodeCWindows?No
Prime-Lisp [9] Mikhail SemenovYesInterpreter C# Windows Proprietary, Shareware, freely redistributable binariesNo
Iris [10] Masaya Taniguchi [11] NoInterpreter Go anyFree, Mozilla Public License 2.0Yes [12]
Iris web REPL [13] Masaya Taniguchi [14] NoInterpreter, compiles to JavaScript Go, JavaScriptBrowserFree, Mozilla Public License 2.0Yes [15]
Kiss [16] Yuji Minejima [17] No, not yetInterpreterC, LispanyFree, GPL v3+Yes [18]
ISLisproid [19] Hiroshi GomiNoInterpreter Java Android Proprietary No
dayLISP [20] Matthew DensonNoInterpreterJava, LispAnyFree, BSD Yes [21]
Easy-ISLisp [22] Kenichi SasagawaYesInterpreter, compiles to CC, LispLinux, MacOS, OpenBSDFree, BSD Yes [23]
Isle ISLISPKIM TaegyoonNoCompiler Common Lisp OSes on which Common Lisp operates (including Linux and Windows)Free, Unlicense Yes [24]
islisp-compat [25] Derek NewhallYesPackage on top of Common Lisp Common Lisp OSes on which Common Lisp operates (including Linux and Windows)Free, CDDL [26] Yes

Two older implementations are no longer available:

References

  1. "WG16 Mail archive".[ permanent dead link ]
  2. "ISO/IEC 13816:1997(E)". International Organization for Standardization. Retrieved 2018-11-10.
  3. "ISO/IEC 13816:2007(E)". International Organization for Standardization. Retrieved 2018-11-10.
  4. "Programming Language ISLISP: History".
  5. "Programming Language ISLISP: Specification". Archived from the original on 2016-01-22. Retrieved 2011-03-20.
  6. "ISLISP.info".
  7. "Eligis".
  8. "OKI ISLISP".
  9. "Prime-Lisp".
  10. "Iris".
  11. "Masaya Taniguchi". GitHub . Archived from the original on November 21, 2021.
  12. "Iris source code". GitHub . 4 September 2021.
  13. "Iris web REPL".
  14. "Masaya Taniguchi". GitHub . Archived from the original on November 21, 2021.
  15. "Iris source code". GitHub .
  16. "Kiss". 8 April 2017.
  17. "Yuji Minejima".
  18. "Kiss source code". GitHub . 26 September 2021.
  19. "ISLisproid".
  20. "dayLISP".
  21. "dayLISP source code".
  22. "Easy-ISLisp".
  23. "Easy-ISLisp source code". GitHub . 21 November 2021.
  24. "Isle ISLISP source code". GitHub . 15 October 2023.
  25. "islisp-compat". GitHub . 20 November 2024. Retrieved 5 February 2025.
  26. "islisp-compat LICENSE.txt". GitHub . Retrieved 5 February 2025.
  27. "TISL: An Experimental Interpreter and Compiler for ISLisp". 28 October 1998. Retrieved 6 February 2025.