{"title":"Mechanical construction of a new efficient FLATTEN","authors":"Y. Kodratoff, J. Jouannaud","doi":"10.1145/1411829.1411835","DOIUrl":"https://doi.org/10.1145/1411829.1411835","url":null,"abstract":"An efficient function FLATTEN is \"well-known\" and due to Mc CARTHY[5]. We give below a version of it, using the predicates NULL and ATOM.","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"287 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1979-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115532078","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Does LISP differ from ALGOL essentially?","authors":"F. Simon","doi":"10.1145/1411829.1411836","DOIUrl":"https://doi.org/10.1145/1411829.1411836","url":null,"abstract":"A fare spread opinion is that LISP and ALGOL belong to different \"families\" of programming languages. In our current activities concerning LISP, we are trying to characterise pure LISP as an ALGOL-like programming language in the sense of ALGOL 60 resp. ALGOL 68 /1/, /2/. LISP is considered as a sublanguage of ALGOL 60, where the datatype \"s-expression\" with its 5 standard functions is introduced and where procedure identifiers are allowed as values of function-procedures (ALGOL 68) in order to have upward FUNARGs /3/. In contrast to the operational semantic definitions via interpreters, this approach gives a precise, mathematical definition of the LISP-semantic. Within this framework we are able to prove properties of LISP-programs much easier than using inductive proofs based on an interpreter. Our method for modelling variable bindings follows the well known ALGOL 60 definitions, which are very close to the FUNARG-feature of LISP 1.5, while other authors prefer the \"shallow access binding\" method; e. g. M.J. Gordon gives a formal definition of pure LISP by algebraic methods /4/.","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1979-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129058622","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"LISP history","authors":"H. Stoyan","doi":"10.1145/1411829.1411837","DOIUrl":"https://doi.org/10.1145/1411829.1411837","url":null,"abstract":"For the SIGPLAN conference on history of programming languages held in Los Angeles in this June, J. McCarthy had to write a paper about LISP-history (1). He was very able to do this because he has given a talk on LISP history in summer 1974 at M.I.T. (2) and has contributed since then a lot of remarks and comments to my work on compiling a complete history of our language. His paper corresponds to the state of our knowledge in May of this year (1978) before D. Park found the original LISP 1 manual (3).","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1979-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125403742","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The VLISP KIT: description implementation and evaluation","authors":"J. Chailloux","doi":"10.1145/1411829.1411832","DOIUrl":"https://doi.org/10.1145/1411829.1411832","url":null,"abstract":"This study presents the realization of three systems VLISP (a dialect of LISP) developped at the University of Paris 8 - Vincennes, on the following machines:\u0000 - a 8 bit words micro-processor (Intel8080/Zilog80)\u0000 - a 16 bit words PDP-11\u0000 - a 36 bit words PDP-10\u0000 From these realizations is extracted an implementation model.\u0000 Our study proposes a solution to the problems of construction and evaluation of such a system. These problems are :\u0000 1) The exhaustive description of the implementation. We propose a description based on the virtual, referential and prototype machine VCMC2.\u0000 2) The adequate representations of the VLISP objects and functions. We have associated some natural properties and we have established a functionnal typology.\u0000 3) The efficiency of the interpreter (in words of core, execution time and power). Our iterpreter does, for his own need, a optimal core allocation (in term of CONS module calls). The direct acces (which needs only one memory access) to the values of objects variable and function, and a type classification of functions allow a direct invocation of all typed functions.\u0000 4) The power of control structures. Our implementation's KIT generalizes the VLISP control structures SELF an ESCAPE, extends them with the new constructions EXIT, WHERE and LETF and unifies completly their description and implementation.\u0000 An incarnation of our model is given by the realization of a complete VLISP system in the referential machine VCMC2. The full code is given in appendix.","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"54 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1979-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123500676","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A system to understand incorrect programs","authors":"H. Wertz","doi":"10.1145/1411798.1411808","DOIUrl":"https://doi.org/10.1145/1411798.1411808","url":null,"abstract":"This paper presents a systems (PHENARETE) which understands and improves incompletely defined LISP programs, such as those written by students beginning to program in LISP. This system takes, as input, the program without any additional information. In order to understand the program, the system meta-evaluates it, using a library of \"pragmatic rules\", describing the construction and correction of general program constructs, and a set of \"specialists\", describing the syntax and semantics of the standard LISP functions. The system can use its understanding of the program to detect errors in it, to debug them and, eventually, to justify its proposed modification. This paper gives a brief survey of the working of the system, emphasizing on some commented examples.","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1978-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125277324","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Review of \"The Anatomy of LISP by John Allen,\" McGRAW HILL, New York, 1977","authors":"J. Laubsch","doi":"10.1145/1411798.1411801","DOIUrl":"https://doi.org/10.1145/1411798.1411801","url":null,"abstract":"","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1978-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120962825","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The use of LISP at computer centers in Western Germany","authors":"J. Chailloux","doi":"10.1145/1411798.1411804","DOIUrl":"https://doi.org/10.1145/1411798.1411804","url":null,"abstract":"A summary of G. GÖRZ \"Die Verwendung von LISP an wissenschaft-lichen Rechenzentren in der BRD\", IAB Nr 63, Universität Erlangen-nürnberg, Rechenzentrum, Dez. 76.","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"145 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1978-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116907986","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Useful functions: a definition of the inverse quote function","authors":"J. Laubsch","doi":"10.1145/1411798.1411806","DOIUrl":"https://doi.org/10.1145/1411798.1411806","url":null,"abstract":"It frequently happens that a LISP programmer wants a function to produce a data-structure or function containing constant and variable substructures. The usual solution is to program a form containing a lot of data-structure composing functions (like LIST, CONS and APPEND). The resulting expression is hard to decipher for humans unless more mnemonic constructor-functions are defined. A simple way out is to write the resulting structure with its variable substructures especially marked.","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1978-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117139769","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Technical notes: a VLISP interpreter on the VCMC1 machine","authors":"J. Chailloux","doi":"10.1145/1411798.1411807","DOIUrl":"https://doi.org/10.1145/1411798.1411807","url":null,"abstract":"VCMC1 is a virtual machine designed to observe \"in vitro\" the behaviour of VLISP interpreters. VCMC1 is actually entirely simulated in VLISP 10. We present a short description of the VCMC1 machine followed by the complete listing of the code of a VLISP interpreter, This interpreter incorporates the special feature for tail-recursion function calls.","PeriodicalId":404213,"journal":{"name":"ACM Lisp Bulletin","volume":"278 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1978-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134115113","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}