{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:09:29Z","timestamp":1763467769339,"version":"3.32.0"},"publisher-location":"Berlin, Heidelberg","reference-count":41,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540665403"},{"type":"electronic","value":"9783540481645"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[1999]]},"DOI":"10.1007\/10704567_1","type":"book-chapter","created":{"date-parts":[[2006,12,28]],"date-time":"2006-12-28T23:27:08Z","timestamp":1167348428000},"page":"1-28","source":"Crossref","is-referenced-by-count":19,"title":["C-\u2014: A Portable Assembly Language that Supports Garbage Collection"],"prefix":"10.1007","author":[{"given":"Simon Peyton","family":"Jones","sequence":"first","affiliation":[]},{"given":"Norman","family":"Ramsey","sequence":"additional","affiliation":[]},{"given":"Fermin","family":"Reig","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"issue":"2","key":"1_CR1","doi-asserted-by":"publisher","first-page":"171","DOI":"10.1002\/spe.4380190206","volume":"19","author":"A.W. Appel","year":"1989","unstructured":"Appel, A.W.: Simple generational garbage collection and fast allocation. Software\u2014Practice & Experience\u00a019(2), 171\u2013183 (1989)","journal-title":"Software\u2014Practice & Experience"},{"key":"1_CR2","doi-asserted-by":"crossref","unstructured":"Russ, A., Demers, A., Hauser, C., Jacobi, C., Kessler, P., Weiser, M.: Experiences creating a portable Cedar. In: Proceedings of the 1989 SIGPLAN Conference on Programming Language Design and Implementation, SIGPLAN Notices, vol.\u00a024(7), pp. 322\u2013329 (1989)","DOI":"10.1145\/74818.74847"},{"key":"1_CR3","unstructured":"Bartlett, J.F.: Compacting garbage collection with ambiguous roots. Technical Report 88\/2, DEC WRL, 100 Hamilton Avenue, Palo Alto, California 94301 (February 1988)"},{"key":"1_CR4","unstructured":"Bartlett, J.F.: Mostly-copying garbage collection picks up generations and C++. Technical Report TN-12, DEC WRL, 100 Hamilton Avenue, Palo Alto, California 94301 (October 1989a)"},{"key":"1_CR5","unstructured":"Bartlett, J.F.: SCHEME to C: A portable Scheme-to-C compiler. Technical Report RR 89\/1, DEC WRL (1989b)"},{"key":"1_CR6","doi-asserted-by":"publisher","first-page":"329","DOI":"10.1145\/53990.54023","volume-title":"ACM Conference on Programming Languages Design and Implementation (PLDI 1988)","author":"M.E. Benitez","year":"1988","unstructured":"Benitez, M.E., Davidson, J.W.: A portable global optimizer and linker. In: ACM Conference on Programming Languages Design and Implementation (PLDI 1988), pp. 329\u2013338. ACM, New York (1988)"},{"key":"1_CR7","doi-asserted-by":"crossref","unstructured":"Nick, B., Kennedy, A., Russell, G.: Compiling Standard ML to Java bytecodes. In: ACM Sigplan International Conference on Functional Programming (ICFP 1998), Balitmore, pp. 129\u2013140 (1998)","DOI":"10.1145\/291251.289435"},{"issue":"10","key":"1_CR8","doi-asserted-by":"crossref","first-page":"1021","DOI":"10.1002\/spe.4380151009","volume":"15","author":"R.L. Bernstein","year":"1985","unstructured":"Bernstein, R.L.: Producing good code for the case statement. Software Practice and Experience\u00a015(10), 1021\u20131024 (1985)","journal-title":"Software Practice and Experience"},{"issue":"9","key":"1_CR9","doi-asserted-by":"crossref","first-page":"807","DOI":"10.1002\/spe.4380180902","volume":"18","author":"H.-J. Boehm","year":"1988","unstructured":"Boehm, H.-J., Weiser, M.: Garbage collection in an uncooperative environment. Software Practice and Experience\u00a018(9), 807\u2013820 (1988)","journal-title":"Software Practice and Experience"},{"key":"1_CR10","unstructured":"Chase, D.: Implementation of exception handling, Part I. The Journal of C Language Translation\u00a05(4), 229\u2013240 (1994a)"},{"key":"1_CR11","unstructured":"Chase, D.: Implementation of exception handling, Part II: Calling conventions, asynchrony, optimizers, and debuggers. The Journal of C Language Translation\u00a06(1), 20\u201332 (1994b)"},{"key":"1_CR12","unstructured":"Clausen, L.R., Danvy, O.: Compiling proper tail recursion and first-class continuations: Scheme on the Java virtual machine. Technical report, Department of Computer Science, University of Aarhus, BRICS (April 1998)"},{"issue":"10","key":"1_CR13","doi-asserted-by":"publisher","first-page":"5","DOI":"10.1145\/368924.368928","volume":"1","author":"M.E. Conway","year":"1958","unstructured":"Conway, M.E.: Proposal for an UNCOL. Communications of the ACM\u00a01(10), 5\u20138 (1958)","journal-title":"Communications of the ACM"},{"key":"1_CR14","first-page":"1","volume-title":"21st ACM Symposium on Principles of Programming Languages (POPL 1994)","author":"A. Diwan","year":"1993","unstructured":"Diwan, A., Tarditi, D., Moss, E.: Memory subsystem performance of programs using copying garbage collection. In: 21st ACM Symposium on Principles of Programming Languages (POPL 1994), pp. 1\u201314. ACM, Charleston (1993)"},{"key":"#cr-split#-1_CR15.1","unstructured":"Franz, M.: Beyond Java: An infrastructure for highperformance mobile code on theWorld WideWeb. In: Lobodzinski, S., Tomek, I. (eds.) Proceedings of WebNet 1997, World Conference of the WWW, Internet, and Intranet, pp. 33???38 (1997);"},{"key":"#cr-split#-1_CR15.2","unstructured":"Association for the Advancement of Computing in Education"},{"key":"1_CR16","unstructured":"George, L.: MLRISC: Customizable and reusable code generators (1996), Unpublished report, available from http:\/\/www.cs.bell-labs.com\/george\/"},{"key":"1_CR17","volume-title":"C: A Reference Manual","author":"S.P. Harbison","year":"1995","unstructured":"Harbison, S.P., Steele Jr. G.L.: C: A Reference Manual, 4th edn. Prentice Hall, Englewood Cliffs (1995)","edition":"4"},{"key":"1_CR18","unstructured":"Fergus, H., Conway, T., Somogyi, Z.: Compiling logic programs to C using GNU C as a portable assembler. In: ILPS 1995 Postconference Workshop on Sequential Implementation Technologies for Logic Programming, Portland, pp. 1\u201315 (1995)"},{"issue":"6","key":"1_CR19","doi-asserted-by":"crossref","first-page":"546","DOI":"10.1109\/TSE.1979.230191","volume":"-5","author":"B.H. Liskov","year":"1979","unstructured":"Liskov, B.H., Snyder, A.: Exception handling in CLU. IEEE Transactions on Software Engineering\u00a0SE-5(6), 546\u2013558 (1979)","journal-title":"IEEE Transactions on Software Engineering SE"},{"key":"1_CR20","unstructured":"Macrakis, S.: The Structure of ANDF: Principles and Examples. Open Systems Foundation (January 1993)"},{"key":"1_CR21","unstructured":"Steven, N., Hummel, J., Nicolau, A.: A Simple Mechanism for Improving the Accuracy and Efficiency of Instruction-level Disambiguation. LNCS, vol.\u00a0ch. 19. Springer, Heidelberg (1995)"},{"key":"1_CR22","unstructured":"Pettersson, M.: Simulating tail calls in C. Technical report, Department of Computer Science, Linkoping University (1995)"},{"key":"1_CR23","doi-asserted-by":"crossref","unstructured":"Jones, P., Simon, L., Gordon, A.J., Finne, S.O.: Concurrent Haskell. In: Symposium on Principles of Programming Languages (POPL 1996), pp. 295\u2013308. St Petersburg Beach, Florida (January 1996)","DOI":"10.1145\/237721.237794"},{"key":"1_CR24","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/BFb0055421","volume-title":"Implementation of Functional Languages","author":"S.L. Peyton Jones","year":"1998","unstructured":"Peyton Jones, S.L., Oliva, D., Nordin, T.: C\u2013: A portable assembly language. In: Clack, C., Hammond, K., Davie, T. (eds.) IFL 1997. LNCS, vol.\u00a01467, pp. 1\u201319. Springer, Heidelberg (1998)"},{"issue":"2","key":"1_CR25","doi-asserted-by":"publisher","first-page":"127","DOI":"10.1017\/S0956796800000319","volume":"2","author":"P. Jones","year":"1992","unstructured":"Jones, P., Simon, L.: Implementing lazy functional languages on stock hardware: The spineless tagless G-machine. Journal of Functional Programming\u00a02(2), 127\u2013202 (1992)","journal-title":"Journal of Functional Programming"},{"key":"#cr-split#-1_CR26.1","unstructured":"Ramsey, N., Peyton Jones, S.L.: Exceptions need not be exceptional (1999);"},{"key":"#cr-split#-1_CR26.2","unstructured":"Draft available from http:\/\/www.cs.virginia.edu\/nr"},{"key":"1_CR27","doi-asserted-by":"crossref","unstructured":"Ramsey, Norman.: A Retargetable Debugger. PhD thesis, Princeton University, Department of Computer Science. Also Technical Report CS-TR- 403-92 (December 1992)","DOI":"10.1145\/143095.143112"},{"key":"1_CR28","unstructured":"Reig, F., Peyton Jones, S.L.: The C\u2013 manual. Technical report, Department of Computing Science, University of Glasgow (1998)"},{"key":"1_CR29","volume-title":"ACM Conference on Programming Languages Design and Implementation (PLDI 1991)","author":"J.H. Reppy","year":"1991","unstructured":"Reppy, J.H.: CML: a higher-order concurrent language. In: ACM Conference on Programming Languages Design and Implementation (PLDI 1991), June 1991, ACM, New York (1991)"},{"key":"1_CR30","doi-asserted-by":"crossref","unstructured":"Serrano M., Weis, P.: In: Mycroft, A. (ed.) SAS 1995. LNCS, vol.\u00a0983, pp. 366\u2013381. Springer, Heidelberg (1995)","DOI":"10.1007\/3-540-60360-3_50"},{"key":"1_CR31","doi-asserted-by":"crossref","unstructured":"Shivers, O., Clark, J.W., McGrath, R.: Atomic heap transactions and fine-grain interrupts. In: ACM Sigplan International Conference on Functional Programming (ICFP 1999), Paris (September 1999)","DOI":"10.1145\/317636.317783"},{"key":"1_CR32","unstructured":"SPARC International. The SPARC Architecture Manual, Version 8. Prentice Hall, Englewood Cliffs (1992)"},{"key":"1_CR33","unstructured":"Stallman, R,M.: Using and Porting GNU CC (Version 2.0). Free Software Foundation (February 1992 )"},{"key":"1_CR34","unstructured":"Steele, Jr., G.L.: . Rabbit : A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, MIT, Cambridge, MA (May 1978 )"},{"key":"1_CR35","doi-asserted-by":"crossref","unstructured":"Stichnoth, J.M., Lueh, G.-Y., Cierniak, M.: Suppport for garbage collection at every instruction in a Java compiler. In: ACM Conference on Programming Languages Design and Implementation (PLDI 1999), Atlanta, pp. 118\u2013127 (1999)","DOI":"10.1145\/301618.301652"},{"key":"1_CR36","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/BFb0013475","volume-title":"Reliable Software Technologies - Ada Europe 96","author":"T. Taft","year":"1996","unstructured":"Taft, T.: Programming the Internet in Ada 95. In: Strohmeier, A. (ed.) Ada-Europe 1996. LNCS, vol.\u00a01088, pp. 1\u201316. Springer, Heidelberg (1996)"},{"issue":"2","key":"1_CR37","doi-asserted-by":"publisher","first-page":"161","DOI":"10.1145\/151333.151343","volume":"1","author":"D. Tarditi","year":"1992","unstructured":"Tarditi, D.: No assembly required: compiling Standard ML to C. ACM Letters on Programming Languages and Systems\u00a01(2), 161\u2013177 (1992)","journal-title":"ACM Letters on Programming Languages and Systems"},{"key":"1_CR38","doi-asserted-by":"publisher","first-page":"181","DOI":"10.1145\/231379.231414","volume-title":"ACM Conference on Programming Languages Design and Implementation (PLDI 1996)","author":"D. Tarditi","year":"1996","unstructured":"Tarditi, D., Morrisett, G., Cheng, P., Stone, C., Harper, R., Lee, P.: TIL: A type-directed optimizing compiler for ML. In: ACM Conference on Programming Languages Design and Implementation (PLDI 1996), pp. 181\u2013192. ACM, Philadelphia (1996)"},{"key":"1_CR39","doi-asserted-by":"crossref","unstructured":"Wakeling, D.: Mobile Haskell: compiling lazy functional languages for the Java virtual machine. In: Proceedings of the 10th International Symposium on Programming Languages, Implementations, Logics and Programs, PLILP 1998 Pisa (1998)","DOI":"10.1007\/BFb0056624"}],"container-title":["Lecture Notes in Computer Science","Principles and Practice of Declarative Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/10704567_1","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,1,12]],"date-time":"2025-01-12T18:50:29Z","timestamp":1736707829000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/10704567_1"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1999]]},"ISBN":["9783540665403","9783540481645"],"references-count":41,"URL":"https:\/\/doi.org\/10.1007\/10704567_1","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[1999]]}}}