{"title":"The scheme of things: the June 1987 meeting","authors":"William D. Clinger","doi":"10.1145/1317273.1317276","DOIUrl":"https://doi.org/10.1145/1317273.1317276","url":null,"abstract":"The second occasional meeting of people interested in the continuing evolution of the Scheme programming language took place at the end of June on the MIT campus. This meeting was less satisfying than the remarkably successful first meeting, at Brandeis in the autumn of 1984. At Brandeis we had come prepared to agree on the core language, which is described in the Revised a Report on the Algorithmic Language Scheme. At MIT we came prepared to agree on what problems remain to be solved, but we did not bring complete solutions.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125252153","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":"Foreign functions and common Lisp","authors":"H. Sexton","doi":"10.1145/1317273.1317275","DOIUrl":"https://doi.org/10.1145/1317273.1317275","url":null,"abstract":"The language Common Lisp is a standard dialect of Lisp which has been implemented on a wide range of machines by a variety of commercial and academic groups. One serious flaw in the Common Lisp standard, at least to many Common Lisp users on \"general-purpose\" hardware,1 is the lack of an defined foreign function interface, or FFI. The subject of this note is a discussion of FFI's for three different Common Lisp systems on engineering workstations and some thoughts on what foreign function interfaces ought to look like.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"02 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128862740","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":"An alternative dynamic binding model: deep binding with cacheing","authors":"C. Alberga","doi":"10.1145/1317273.1317274","DOIUrl":"https://doi.org/10.1145/1317273.1317274","url":null,"abstract":"The two most common dynamic binding models used in Lisp systems are shallow and deep binding. For a succinct summery of these see Padget and Fitch [1985], which includes a proposed third model. It is often claimed that shallow binding are unsuited to systems which allow context switching. We wish to describe an alternative binding model, deep binding with cacheing, which provides the efficiency of shallow binding in \"ordinary\" call/return control, while exhibiting the ease of context switching of deep binding. This binding model was implemented in the Lisp system built at the IBM Research Center, later elaborated into LISP/VM. In this article the term LISP/VM will be used to encompass both that program and all of its progenitors developed at IBM Research.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"266 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116043813","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":"Annotation-based program stepping","authors":"G. R. Parker","doi":"10.1145/1317216.1317217","DOIUrl":"https://doi.org/10.1145/1317216.1317217","url":null,"abstract":"Traditionally, stepping is achieved by modifying the evaluator. In the approach presented here, stepping is achieved by annotating the user's program with calls to stepping procedures. This provides greater flexibility in the selection of which program sections the user is interested in stepping. In addition, the sections not selected are executed without overhead. Stepped program sections are visually highlighted inside the user's program editor, providing a sense of context. Stepping control mechanisms, such as the ability to execute until a certain point and then step, permit the user to navigate through a program in a precise and flexible manner. A prototype stepper based on this approach has been implemented.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116987679","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 scheme of things: streams versus generators","authors":"William D. Clinger","doi":"10.1145/1317216.1317219","DOIUrl":"https://doi.org/10.1145/1317216.1317219","url":null,"abstract":"With this article I'm changing the series title to \"The Scheme of Things\". The original title was a weak pun on the technical term environment. An environment, you see, associates names with their meanings. In the Scheme environment, for example, the word \"environment\" has the meaning just stated, while in some other parts of the programming language world the word \"environment\" has a less technical meaning that refers to the stuff that comes with a programming system. One of my purposes has been to explain the meaning of terms in the Scheme environment. Sometimes a word like \"environment\" or \"stream\" means something different in Scheme than it does in some other dialect of Lisp, usually because the Scheme terminology follows that of another well-established language or group of languages.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132583501","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":"Windows to the future","authors":"K. Kimbrough","doi":"10.1145/1317216.1317218","DOIUrl":"https://doi.org/10.1145/1317216.1317218","url":null,"abstract":"This article traces the development of the next generation of window system standards, such as the X Window System. A short program using CLX, the Common Lisp interface to X, is shown with extensive annotations.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116361520","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":"((lambda (discussions) (report on X3J13)) (work on an international standard))","authors":"R. Mathis","doi":"10.1145/1317216.1317222","DOIUrl":"https://doi.org/10.1145/1317216.1317222","url":null,"abstract":"X3J13 has always taken a very active interest in the progress of an international standard for Lisp. We would very much like to make sure that the national and international standards for Lisp turn out to be the same.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126332819","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":"Overview of garbage collection in symbolic computing","authors":"Timothy J. McEntee","doi":"10.1145/1317203.1317205","DOIUrl":"https://doi.org/10.1145/1317203.1317205","url":null,"abstract":"Many readers of this article have heard the term \"garbage collection\" on occasion without being given much explanation as to what it is. One purpose of this paper, therefore, is to describe what garbage collection is and why it is a subject of concern for computing in general and symbolic computing in particular. The first section briefly describes garbage collection. The next section gives a general description of what has come to be known as the \"classical\" garbage collection algorithms. A few of the classical algorithms' shortcomings for use in today's systems are described in the next section. This is followed by a section on a few techniques in garbage collection which address the needs of today's and tomorrow's symbolic computing systems.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"177 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134194770","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 scheme environment: dynamic variables","authors":"William D. Clinger","doi":"10.1145/1317203.1317208","DOIUrl":"https://doi.org/10.1145/1317203.1317208","url":null,"abstract":"Scheme variables have static scope and indefinite extent. That is, the visibility (or scope) of a Scheme variable can be determined statically by looking at the lexical structure of a program, and the lifetime (or extent) of the variable is unbounded. The reason variables have indefinite extent in Scheme is that they may be remembered by procedures created as the result of evaluating a lambda expression.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"62 3","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131490735","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":"LYSP: a Lisp dialect for programming small applications","authors":"P. Kosinski","doi":"10.1145/1317203.1317207","DOIUrl":"https://doi.org/10.1145/1317203.1317207","url":null,"abstract":"Some ten years ago, a small group of us at IBM Research undertook to write a new kind of text editor, to run in the VM/370 environment, based on our experience with the experimental Business Definition System (BDS) we had implemented previously. This new editor, called the Parametric Editor, or P-EDIT, was to be upwards compatible with an existing popular editor in use at that time, while providing the ability to edit multiple versions of a file simultaneously, and providing a general UNDO command which could be used to return to any previous state of the editing session, and which itself was UNDOable.","PeriodicalId":262740,"journal":{"name":"ACM SIGPLAN Lisp Pointers","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1987-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123882352","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}