{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,10,23]],"date-time":"2023-10-23T06:11:34Z","timestamp":1698041494418},"reference-count":22,"publisher":"Wiley","issue":"6","license":[{"start":{"date-parts":[[2006,10,30]],"date-time":"2006-10-30T00:00:00Z","timestamp":1162166400000},"content-version":"vor","delay-in-days":5995,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1990,6]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Conventional LR parser generators create tables which are used to drive a standard parser procedure. Much faster parsers can be obtained by compiling the table entries into code that is directly executed. A possible drawback with a directly executable parser is its large size. In this paper, we introduce optimization techniques that increase the parsing speed even further while simultaneously reducing the size of the parser.<\/jats:p>","DOI":"10.1002\/spe.4380200602","type":"journal-article","created":{"date-parts":[[2006,11,18]],"date-time":"2006-11-18T05:26:10Z","timestamp":1163827570000},"page":"515-535","source":"Crossref","is-referenced-by-count":7,"title":["Even faster lr parsing"],"prefix":"10.1002","volume":"20","author":[{"given":"R. Nigel","family":"Horspool","sequence":"first","affiliation":[]},{"given":"Michael","family":"Whitney","sequence":"additional","affiliation":[]}],"member":"311","published-online":{"date-parts":[[2006,10,30]]},"reference":[{"key":"e_1_2_1_2_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380150302"},{"key":"e_1_2_1_3_2","volume-title":"Crafting a Compiler","author":"Fischer C. N.","year":"1988"},{"key":"e_1_2_1_4_2","doi-asserted-by":"publisher","DOI":"10.1145\/1780.1802"},{"key":"e_1_2_1_5_2","unstructured":"J.Grosch \u2018LALR\u2014a generator for efficient parsers\u2019 Tech. Report 10 GMD University of Karlsruhe October1988."},{"key":"e_1_2_1_6_2","volume-title":"Tech. Report 11, GMD","author":"Grosch J.","year":"1988"},{"key":"e_1_2_1_7_2","unstructured":"S. C.Johnson \u2018YACC\u2014yet another compiler compiler\u2019 UNIX Programmer's Manual 7th Edition 2B 1979."},{"key":"e_1_2_1_8_2","doi-asserted-by":"publisher","DOI":"10.1145\/12276.13326"},{"key":"e_1_2_1_9_2","doi-asserted-by":"crossref","unstructured":"A. J.Demers \u2018Generalized left corner parsing\u2019 Proc. Fourth Annual ACM Symposium on Principles of Programming Languages 170\u2013182(1977).","DOI":"10.1145\/512950.512966"},{"key":"e_1_2_1_10_2","unstructured":"R. W.Gray \u2018Automatic error recovery in a fast parser\u2019 Proc. 1987 Summer USENIX Conference 337\u2013346(1987)."},{"key":"e_1_2_1_11_2","volume-title":"LR Parsing: Theory and Practice","author":"Chapman N. P.","year":"1987"},{"key":"e_1_2_1_12_2","unstructured":"M. J.Whitney \u2018Optimization of directly executable LR parsers\u2019 M.Sc. Thesis Dept. of Computer Science University of Victoria 1988."},{"key":"e_1_2_1_13_2","unstructured":"M. J.WhitneyandR. N.Horspool \u2018Extremely rapid LR parsing\u2019 Proc. Workshop on Compiler\u2014Compiler and High\u2010Speed Compilation Berlin G.D.R. 1988 pp.248\u2013257."},{"key":"e_1_2_1_14_2","first-page":"31","article-title":"\u2018Eliminating unit productions from LR parsers\u2019","volume":"9","author":"Pager D.","year":"1979","journal-title":"Acta Informatica"},{"key":"e_1_2_1_15_2","doi-asserted-by":"publisher","DOI":"10.1080\/00207168408803404"},{"key":"e_1_2_1_16_2","doi-asserted-by":"publisher","DOI":"10.1145\/357094.357098"},{"key":"e_1_2_1_17_2","volume-title":"C: A Reference Manual","author":"Harbison S. P.","year":"1984"},{"key":"e_1_2_1_18_2","volume-title":"Standard Pascal: User Reference Manual","author":"Cooper D.","year":"1983"},{"key":"e_1_2_1_19_2","doi-asserted-by":"crossref","unstructured":"R. S.GlanvilleandS. L.Graham \u2018A new method for compiler code generation\u2019 Proc. Fifth Annual ACM Symposium on Principles of Programming Languages 1978 pp.231\u2013240.","DOI":"10.1145\/512760.512785"},{"key":"e_1_2_1_20_2","doi-asserted-by":"publisher","DOI":"10.1145\/4472.4486"},{"key":"e_1_2_1_21_2","doi-asserted-by":"publisher","DOI":"10.1016\/0096-0551(89)90028-3"},{"key":"e_1_2_1_22_2","doi-asserted-by":"publisher","DOI":"10.1145\/47907.47909"},{"key":"e_1_2_1_23_2","doi-asserted-by":"publisher","DOI":"10.1007\/BF00263989"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380200602","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380200602","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,10,22]],"date-time":"2023-10-22T10:20:28Z","timestamp":1697970028000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380200602"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1990,6]]},"references-count":22,"journal-issue":{"issue":"6","published-print":{"date-parts":[[1990,6]]}},"alternative-id":["10.1002\/spe.4380200602"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380200602","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1990,6]]}}}