{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:52:19Z","timestamp":1750308739763,"version":"3.41.0"},"reference-count":21,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2010,1,18]],"date-time":"2010-01-18T00:00:00Z","timestamp":1263772800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGCSE Bull."],"published-print":{"date-parts":[[2010,1,18]]},"abstract":"<jats:p>The code generation portion of a compiler is still typically constructed by hand in an ad-hoc manner. When teaching a compiler construction class, the code generation phase can occupy a large portion of a one semester project. To address this, we have created an extremely small instruction set simulator which is easily learned in a short period of time. We've termed this a RRISC (Really Reduced Instruction Set Computer) and have been using it successfully for several years.<\/jats:p>","DOI":"10.1145\/1709424.1709440","type":"journal-article","created":{"date-parts":[[2010,1,26]],"date-time":"2010-01-26T14:01:38Z","timestamp":1264514498000},"page":"30-34","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Teaching compiler code generation"],"prefix":"10.1145","volume":"41","author":[{"given":"William","family":"Mahoney","sequence":"first","affiliation":[{"name":"University of Nebraska at Omaha, Omaha, Nebraska"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jay","family":"Pedersen","sequence":"additional","affiliation":[{"name":"University of Nebraska at Omaha, Omaha, Nebraska"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2010,1,18]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"ACM; http:\/\/www.acm.org\/education\/curricula-recommendations  ACM; http:\/\/www.acm.org\/education\/curricula-recommendations"},{"issue":"4","key":"e_1_2_1_2_1","volume":"19","author":"Agarwal Krishna","year":"2004","unstructured":"Agarwal , Krishna , Achla Agarwal . Do We Need a Separate Assembly Language Programming Course? Journal of Computing Sciences in Colleges , Volume 19 , Issue 4 , April 2004 . Agarwal, Krishna, Achla Agarwal. Do We Need a Separate Assembly Language Programming Course? Journal of Computing Sciences in Colleges, Volume 19, Issue 4, April 2004.","journal-title":"Journal of Computing Sciences in Colleges"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/381841.381847"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/792548.611974"},{"key":"e_1_2_1_5_1","unstructured":"Bovet Jean. ANTLRWorks: The ANTLR GUI Development Environment; http:\/\/antlr.org\/works\/index.html  Bovet Jean. ANTLRWorks: The ANTLR GUI Development Environment; http:\/\/antlr.org\/works\/index.html"},{"issue":"1","key":"e_1_2_1_6_1","volume":"22","author":"Buckner Kim","year":"2006","unstructured":"Buckner , Kim . A Non-Traditional Approach to an Assembly Language Course. Journal of Computing Sciences in Colleges , Vol. 22 , Issue 1 , October 2006 . Buckner, Kim. A Non-Traditional Approach to an Assembly Language Course. Journal of Computing Sciences in Colleges, Vol. 22, Issue 1, October 2006.","journal-title":"Journal of Computing Sciences in Colleges"},{"key":"e_1_2_1_7_1","unstructured":"Cygwin; http:\/\/cygwin.com\/  Cygwin; http:\/\/cygwin.com\/"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1345375.1345418"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/1047124.1047364"},{"issue":"5","key":"e_1_2_1_10_1","volume":"20","author":"Hunter Scott B","year":"2005","unstructured":"Hunter , Scott B . Teaching Assembly Language Without Using (as much) Assembly Language. Journal of Computing Sciences in Colleges , Vol. 20 , Issue 5 , May , 2005 . Hunter, Scott B. Teaching Assembly Language Without Using (as much) Assembly Language. Journal of Computing Sciences in Colleges, Vol. 20, Issue 5, May, 2005.","journal-title":"Journal of Computing Sciences in Colleges"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/TE.2002.808277"},{"key":"e_1_2_1_12_1","volume-title":"Viljem Zumer. Compiler\/Interpreter Generator System LISA. 33rd Hawaii International Conference on System Sciences","volume":"8","author":"Mernik Marjan","year":"2000","unstructured":"Mernik , Marjan , Lenic Mitja , Enis Avdicauevic , Viljem Zumer. Compiler\/Interpreter Generator System LISA. 33rd Hawaii International Conference on System Sciences , Volume 8 , 2000 . Mernik, Marjan, Lenic Mitja, Enis Avdicauevic, Viljem Zumer. Compiler\/Interpreter Generator System LISA. 33rd Hawaii International Conference on System Sciences, Volume 8, 2000."},{"key":"e_1_2_1_13_1","unstructured":"MIPS; http:\/\/www.mips.com\/products\/processors\/architectures\/mips32\/  MIPS; http:\/\/www.mips.com\/products\/processors\/architectures\/mips32\/"},{"key":"e_1_2_1_14_1","unstructured":"MIPS; http:\/\/www.mips.com\/media\/files\/MD00565-2B-MIPS32-QRC-01.01.pdf  MIPS; http:\/\/www.mips.com\/media\/files\/MD00565-2B-MIPS32-QRC-01.01.pdf"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/290320.283123"},{"key":"e_1_2_1_16_1","unstructured":"Spim; http:\/\/pages.cs.wisc.edu\/~larus\/spim.html  Spim; http:\/\/pages.cs.wisc.edu\/~larus\/spim.html"},{"issue":"2","key":"e_1_2_1_17_1","volume":"24","author":"Vegdahl","year":"2008","unstructured":"Vegdahl , Steven R. MipsPilot: A Compiler-Oriented MIPS Simulator. Journal of Computing Sciences in Colleges , Volume 24 , Issue 2 , December 2008 . Vegdahl, Steven R. MipsPilot: A Compiler-Oriented MIPS Simulator. Journal of Computing Sciences in Colleges, Volume 24, Issue 2, December 2008.","journal-title":"Journal of Computing Sciences in Colleges"},{"issue":"1","key":"e_1_2_1_18_1","volume":"21","author":"Vollmar Kenneth","year":"2005","unstructured":"Vollmar , Kenneth , Pete Sanderson. A MIPS Assembly Language Simulator Designed for Education. Journal of Computing Sciences in Colleges , Volume 21 , Issue 1 , October 2005 . Vollmar, Kenneth, Pete Sanderson. A MIPS Assembly Language Simulator Designed for Education. Journal of Computing Sciences in Colleges, Volume 21, Issue 1, October 2005.","journal-title":"Journal of Computing Sciences in Colleges"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1121341.1121415"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1124706.1121370"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1275604.1275612"}],"container-title":["ACM SIGCSE Bulletin"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1709424.1709440","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1709424.1709440","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T20:22:09Z","timestamp":1750278129000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1709424.1709440"}},"subtitle":["simpler is better"],"short-title":[],"issued":{"date-parts":[[2010,1,18]]},"references-count":21,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2010,1,18]]}},"alternative-id":["10.1145\/1709424.1709440"],"URL":"https:\/\/doi.org\/10.1145\/1709424.1709440","relation":{},"ISSN":["0097-8418"],"issn-type":[{"type":"print","value":"0097-8418"}],"subject":[],"published":{"date-parts":[[2010,1,18]]},"assertion":[{"value":"2010-01-18","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}