Acornsoft LISP

Acornsoft LISP (marketed simply as LISP[4]) is a dialect and commercial implementation of the Lisp programming language, released in the early 1980s for the 8-bit Acorn Atom, BBC Micro and Acorn Electron computers.

Acornsoft LISP
Screenshot (BBC Model B, cassette version)
Original author(s)Mike Gardner, Jeremy Bennett[1]
Developer(s)Acornsoft
Initial release1982 (BBC Micro),[2] 1984 (Acorn Electron) [1]
Written in6502 machine language, Lisp
PlatformBBC Micro, Acorn Electron
Available inEnglish, German[3]
TypeLisp interpreter
LicenseProprietary

Description

Loading screen (BBC Model B)

Acornsoft LISP was released on cassette, disk and ROM cartridge.[2][5][6] The ROM cartridge version had instantaneous loading as well as a greater amount of available free RAM for user definitions.[5]

In contrast with large-scale LISP implementations, Acornsoft's variant only had a modest number of built-in definitions as it had to fit in the limited memory space of the 8-bit Acorn computers.[5]

The interpreter was implemented in 6502 machine-code and was 5.5K in size. It was based on Owl LISP written by Mike Gardner of Owl Computers, which he published for the Apple II in 1979. Acornsoft licensed it from Owl Computers in 1981 and developed it for the Acorn Atom and BBC Microcomputer.

The supplied LISP workspace image containing commonly used built-in functions and constants was 3K in size, although this could be deleted if not needed by the user to free up more memory.[1]

Supported datatypes included nested lists, 16-bit signed integers and strings up to 127 characters in length. LOOP, WHILE and UNTIL keywords were available for program control.[7]

Acornsoft also commissioned a book "LISP on the BBC Microcomputer", by Arthur Norman and Gillian Cattell, published in 1983. Arthur Norman was a lecturer in computer science at Cambridge University, and Gillian Cattell did research into LISP at Cambridge. The book was sold separately from the software and contained examples illustrating use of the Acornsoft specific features such as the VDU function allowing for machine-specific graphics capabilities. The book also contained working examples including a tree-sorting program, an arbitrary arithmetic package, an animal guessing game, a route finding program, a graphics package, a simple compiler and an adventure game.[8][9]

Demonstration image

A route-finding demo program was supplied as standard with the interpreter.[10] The program can be loaded with the command (LOAD 'ROUTE-M) and tested by typing (ROUTE-M 'OXFORD 'CAMBRIDGE) which for example will display the output (85 CAMBRIDGE BEDFORD WATFORD OXFORD) thus showing the total mileage of the shortest possible route and listing intermediate towns visited.[10]

gollark: Also an approximate cross-server TPS measuring thing, although that's something like 5 lines of code and really does not need a library much (unless I add rolling averages and stuff).
gollark: I also have a ridiculously gigantic DEFLATE thing tweaked slightly from jackmacwindows's port of some WoW developer's thing.
gollark: Would adding the LZW library potatOS uses be useful? It's basically a minimal compression thing.
gollark: Maybe libdatatape would be useful if I swap out the random proprietary (and mostly made by someone else and tweaked by me because it did integers wrong) serialization format for CBOR, or let you provide your own.
gollark: I think a big one is RXI's JSON thing, although that got obsoleted on newer versions by `textutils.unserialiseJSON` or whatever it is.

References

  1. "LISP, Cassette (Acornsoft) Back and Inner Inlay". Acornsoft. Retrieved 2001-10-03. 1984: LISP (Cassette), Acornsoft, £12.95
  2. "Computing History - Acorn BBC Micro Model B". The Centre for Computing History. Archived from the original on 2019-03-22. Retrieved 2010-10-03. LISP - Disk Version Acornsoft 1982
  3. "LISP (German cover, Acorn Electron version)" (in German). Acornsoft. Archived from the original on 2011-07-17. Retrieved 2010-10-03. Eine programmiersprache von Acornsoft
  4. "Optional Software Expansion" (PDF). BBC Master Reference Manual Part 1. Acorn Computers. March 1986. Retrieved 2010-10-03. LISP - an artificial intelligence problem-solving language;
  5. Waddilove, Roland. "The Language That Strikes Like Lightning". Electron User (Issue 2.4). Retrieved 2010-10-03. Acornsoft's variant is available on cassette or ROM cartridge.
  6. "LISP ROM fitting instructions". Acornsoft. 1983. Retrieved 2010-10-03. Your LISP ROM may be placed in any spare 'sideways ROM' socket.
  7. "A CHOICE OF PROGRAMMING LANGUAGES FOR THE BRITISH BROADCASTING CORPORATION MICROCOMPUTER SYSTEM" (PDF). Acornsoft. Retrieved 2010-10-03. Acornsoft LISP is a fast interactive implementation of LISP containing a number of useful extensions to LISP including LOOP, WHILE and UNTIL control functions.
  8. "LISP on the BBC Microcomputer (Open Library)". Internet Archive. Retrieved 2010-10-03. This book described the Acornsoft LISP system for the BBC Microcomputer and Acorn Electron.
  9. Norman, Arthur; Cattell, Gillian (1983). LISP on the BBC Microcomputer. Acornsoft. ISBN 0-907876-08-0.
  10. "LISP for the BBC Microcomputer Model B". Acornsoft. Archived from the original on 2011-07-16. Retrieved 2010-10-03. To load the demonstration image, which contains a LISP program to work out the best route between towns on a map, enter (LOAD 'ROUTE-M) from within LISP
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.