{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,11,13]],"date-time":"2023-11-13T00:13:07Z","timestamp":1699834387324},"reference-count":45,"publisher":"Wiley","issue":"2","license":[{"start":{"date-parts":[[2006,10,27]],"date-time":"2006-10-27T00:00:00Z","timestamp":1161907200000},"content-version":"vor","delay-in-days":10467,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1978,3]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Self\u2010compiling compilers are compilers written in the programming language they are made to compile. They constitute a very interesting case of portable programs, and are rapidly gaining in popularity. This paper is an attempt to classify and evaluate the different methods which have been used for writing and transporting such compilers, according to numerous and various criteria. The potential implementor is then given an idea of the important factors to be considered when selecting one of the many implementation methods available. The study is centred around a specific case, the programming language Pascal and its many compilers.<\/jats:p>","DOI":"10.1002\/spe.4380080205","type":"journal-article","created":{"date-parts":[[2006,11,17]],"date-time":"2006-11-17T12:51:38Z","timestamp":1163767898000},"page":"149-170","source":"Crossref","is-referenced-by-count":14,"title":["Self\u2010compiling compilers: An appraisal of their implementation and portability"],"prefix":"10.1002","volume":"8","author":[{"given":"Olivier","family":"Lecarme","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Marie\u2010Claude","family":"Peyrolle\u2010Thomas","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"311","published-online":{"date-parts":[[2006,10,27]]},"reference":[{"key":"e_1_2_1_2_2","first-page":"93","volume-title":"International Computing Symposium 73","author":"Ammann U.","year":"1974"},{"key":"e_1_2_1_3_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380070311"},{"key":"e_1_2_1_4_2","unstructured":"U.Ammann \u2018The Zurich implementation\u2019 Third Annual Computer Studies Symp.: Pascal\u2014the Language and Its Implementation Southampton (1977)."},{"key":"e_1_2_1_5_2","doi-asserted-by":"publisher","DOI":"10.1145\/800027.808439"},{"key":"e_1_2_1_6_2","doi-asserted-by":"publisher","DOI":"10.1145\/942596.807062"},{"key":"e_1_2_1_7_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380040103"},{"key":"e_1_2_1_8_2","unstructured":"M.De Lacroix \u2018Software transportable \u00e9crit en Pascal\u2019 Th\u00e8se de sp\u00e9cialit\u00e9 en informatique Universit\u00e9 Paul Sabatier Toulouse (1976)."},{"key":"e_1_2_1_9_2","unstructured":"P.Desjardins \u2018Pascal 2 Sigma: un syst\u00e8me de programmation Pascal\u2019 Master's thesis Universit\u00e9 de Montr\u00e9al (1975)."},{"key":"e_1_2_1_10_2","doi-asserted-by":"publisher","DOI":"10.1145\/355598.362740"},{"key":"e_1_2_1_11_2","article-title":"The Multics PL\/I compiler","volume":"35","author":"Freiburghouse R. A.","year":"1969","journal-title":"Proceedings of FJCC"},{"key":"e_1_2_1_12_2","volume-title":"The Macro\u2010implementation of Snobol4, a Case Study in Machine\u2010independent Software Development","author":"Griswold R. E.","year":"1972"},{"key":"e_1_2_1_13_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380060103"},{"key":"e_1_2_1_14_2","volume-title":"Machine\u2010independent Computer Programming","author":"Halstead M. H.","year":"1962"},{"key":"e_1_2_1_15_2","unstructured":"M.HenneronandJ.Tassart private communications IREP Universit\u00e9 des Sciences Sociales Grenoble (1973)."},{"key":"e_1_2_1_16_2","first-page":"161","volume-title":"Machine\u2010oriented Higher\u2010level Languages","author":"Ichbiah J. D.","year":"1974"},{"key":"e_1_2_1_17_2","volume-title":"Bootstrapping Pascal using a Trunk","author":"Ishihata K.","year":"1976"},{"key":"e_1_2_1_18_2","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-06950-X"},{"key":"e_1_2_1_19_2","doi-asserted-by":"publisher","DOI":"10.1145\/953224.953226"},{"key":"e_1_2_1_20_2","unstructured":"O.Lecarme \u2018Reliability portability teachability: three issues on new programming languages\u2019 in New Directions in Algorithmic Languages (ed. S. E. Schumann) IRIA Rocquencourt 1975 pp.19\u201325."},{"key":"e_1_2_1_21_2","unstructured":"O.Lecarme \u2018Pascal and portability\u2019 Third Annual Computer Studies Symp.: Pascal\u2014the Language and its Implementation Southampton (1977)."},{"key":"e_1_2_1_22_2","first-page":"218","volume-title":"Information Processing 74","author":"Lecarme O.","year":"1974"},{"key":"e_1_2_1_23_2","doi-asserted-by":"publisher","DOI":"10.1145\/362835.362838"},{"key":"e_1_2_1_24_2","unstructured":"P.MancelandD.Thibault \u2018Transport d'un compilateur \u00e9crit en Pascal d'un CDC 6400 sur un CII Iris 80\u2019 Th\u00e9se de docteur\u2010ing\u00e9nieur Universit\u00e9 de Paris VI (1974)."},{"key":"e_1_2_1_25_2","volume-title":"A Compiler Generator","author":"McKeemann W. M.","year":"1970"},{"key":"e_1_2_1_26_2","doi-asserted-by":"publisher","DOI":"10.21236\/AD0406138"},{"key":"e_1_2_1_27_2","unstructured":"C. N.MooersBeginner's Manual for Trac Language Rockford Research Cambridge 1972. See the review by W. D. Maurer in Comp. Rev. 16 No. 9 review 28848 (1975)."},{"key":"e_1_2_1_28_2","unstructured":"H.N\u00e4geli private communications Institut f\u00fcr Informatik Eidgen\u00f6ssische Technische Hochschule Zurich (1976and 1977)."},{"key":"e_1_2_1_29_2","volume-title":"The Pascal (P) Compiler Implementation Notes","author":"Nori K. V.","year":"1975"},{"key":"e_1_2_1_30_2","first-page":"63","article-title":"Pascal Compiler Project, Department of Computer Science, SUNY at Stony Brook, 1976\u201077","volume":"5","year":"1976","journal-title":"See Pascal Newsletter"},{"key":"e_1_2_1_31_2","first-page":"53","volume-title":"Pascal Newsletter","author":"Mickel A.","year":"1976"},{"key":"e_1_2_1_32_2","first-page":"183","volume-title":"Advanced Course in Software Engineering","author":"Poole P. C.","year":"1973"},{"key":"e_1_2_1_33_2","unstructured":"M. J.Rees J. I.Goodson J. J. M.ReynoldsandH. J.Zell \u2018Pascal on an advanced architecture the ICL 2900 series\u2019 Third Annual Computer Studies Symp.: Pascal\u2014the Language and its Implementation Southampton (1977)."},{"key":"e_1_2_1_34_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380010204"},{"key":"e_1_2_1_35_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380070214"},{"key":"e_1_2_1_36_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380060309"},{"key":"e_1_2_1_37_2","doi-asserted-by":"crossref","first-page":"53","DOI":"10.1016\/B978-0-08-009763-3.50009-6","volume-title":"Annual Review in Automatic Programming","author":"Shaw C. J.","year":"1963"},{"key":"e_1_2_1_38_2","volume-title":"Implementing Software for Non\u2010numeric Applications","author":"Waite W. M.","year":"1973"},{"key":"e_1_2_1_39_2","volume-title":"Manitoba Pascal User Guide","author":"Wells J.","year":"1975"},{"key":"e_1_2_1_40_2","unstructured":"J.Welsh \u2018Two ICL 1900 Pascal compilers\u2019 Third Annual Computer Studies Symp.: Pascal\u2010the Language and its Implementation Southampton(1977)."},{"key":"e_1_2_1_41_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380020108"},{"key":"e_1_2_1_42_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380010403"},{"key":"e_1_2_1_43_2","unstructured":"N.Wirth \u2018Pascal\u2010S: A Subset and Its Implementation\u2019 institut f\u00fcr Informatik Eidgen\u00f6ssische Technische Hochschule Zurich 1975."},{"key":"e_1_2_1_44_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1975.6312839"},{"key":"e_1_2_1_45_2","volume-title":"The Design of an Optimizing Compiler","author":"Wulf W.","year":"1975"},{"key":"e_1_2_1_46_2","volume-title":"Computer Programming with Comit II","author":"Yngve V. H.","year":"1972"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380080205","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380080205","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,11,12]],"date-time":"2023-11-12T07:42:39Z","timestamp":1699774959000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380080205"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1978,3]]},"references-count":45,"journal-issue":{"issue":"2","published-print":{"date-parts":[[1978,3]]}},"alternative-id":["10.1002\/spe.4380080205"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380080205","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1978,3]]}}}