Maguire@COLUMBIA-20.ARPA (07/19/83)
From: Chip Maguire <Maguire@COLUMBIA-20.ARPA> [In response to Chris Ryland's message to Editor-People. -- KIL] Once again T is Touted as "... the most efficient and portable Lisp to appear on the market." As one of the people associated with the development of PSL (Portable Standard LISP) at the University of Utah, I feel that I must point out that PSL has been ported to the Apollo, VAX/UNIX, DECSystem-20/TOPS-20, HP9836/???, Wicat/!?!?!?, and versions are currently being implemented for the CRAY and 370 families. The predecessor system "Standard LISP" along with the REDUCE symbolic algebra system ran on the following machines (as October 1979): Amdahl: 470V/6; CDC: 640, 6600, 7600, Cyber 76; Burroughs: B6700, B7700; DEC: PDP-10, DECsystem-10, DECsystem-20; CEMA: ES 1040; Fujitsu: FACOM M-190; Hitachi: MITAC M-160, M-180; Honneywell: 66/60; Honeywell-Bull: 1642; IBM: 360/44, 360/67, 360/75, 360/91, 370/155, 370/158, 370/165, 370/168, 3033, 370/195; ITEL: AS-6; Siemens: 4004; Telefunken: TR 440; and UNIVAC: 1108, 1110. Then experiments began to port the system without having to deal with a hand-coded LISP system which was slightly or grossly different for each machine. This lead to a series of P-coded implementations (for the 20, PDP-11, Z80, and Cray). This then lead via the Portable LISP Compiler (Hearn and Griss) to the current compiler-based PSL system. So lets hear more about the good ideas in T and fewer nebulous comments like: "more efficient and portable".
Mishkin@YALE.ARPA@sri-unix.UUCP (07/25/83)
From: Nathaniel Mishkin <Mishkin@YALE.ARPA> Date: Tue 19 Jul 83 15:24:00-EDT From: Chip Maguire <Maguire@COLUMBIA-20.ARPA> Subject: Lisp Portability [...] So lets hear more about the good ideas in T and fewer nebulous comments like: "more efficient and portable". I can give my experience working on a display text editor, U, written in T. (U's original author is Bob Nix.) U is 10000+ lines of T code. Notable U features are a "do what I did" editing by example system, an "infinite" undo facility, and a Laurel (or Babyl) -like mail system. U runs well on the Apollo and almost well on VAX/VMS. U runs on VAX/Unix as well as can be expected for a week's worth of work. Porting U went well: the bulk of U did not have to be changed. - - - - - Notable features of T: - T, like Scheme (from which T is derived) supports closures (procedures are first-class data objects). Closures are implemented efficiently enough so that they are used pervasively in the implementation of the T system itself. - Variables are lexically-scoped; variables from enclosing scopes can be accessed from closed procedures. - T supports an object-oriented programming style that does not conflict with the functional nature of Lisp. Operations (like Smalltalk messages) can be treated as functions; e.g. they can be used with the MAP functions. - Compiled and interpreted T behave identically. - T has fully-integrated support for multiple namespaces so software written by different people can be combined without worrying about name conflicts. - The T implementors (Jonathan Rees and Norman Adams) have not felt constrained to hold on to some of the less modern aspects of older Lisps (e.g. hunks and irrational function names). - T is less of a bag of bits than other Lisps. T has a language definition and a philosophy. One feels that one understands all of T after reading the manual. The T implementors have resisted adding arbitrary features that do not fit with the philosophy. - Other features: inline procedure expansion, procedures accept arbitrary numbers of parameters ("lexpr's" or "&rest-args"), interrupt processing. All these aspects of T have proved to be very useful. - - - - - The predecessor system "Standard LISP" along with the REDUCE symbolic algebra system ran on the following machines (as October 1979): Amdahl: 470V/6; CDC: 640, 6600, 7600, Cyber 76; Burroughs: B6700, B7700; DEC: PDP-10, DECsystem-10, DECsystem-20; CEMA: ES 1040; Fujitsu: FACOM M-190; Hitachi: MITAC M-160, M-180; Honneywell: 66/60; Honeywell-Bull: 1642; IBM: 360/44, 360/67, 360/75, 360/91, 370/155, 370/158, 370/165, 370/168, 3033, 370/195; ITEL: AS-6; Siemens: 4004; Telefunken: TR 440; and UNIVAC: 1108, 1110. Hmm. Was the 370/168 implementation significantly different from the 370/158 implementation? Also, aren't some of those Japanese machines "360s". When listing implementations, let's do it in terms of architectures and operating systems. While it may be the case that PSL is more portable than T, T does presently run on the Apollo, VAX/VMS and VAX/Unix. Implementations for other architectures are being considered.