{"id":"https://openalex.org/W1560230218","doi":"https://doi.org/10.1016/s0167-6423(02)00108-9","title":"Object-oriented Tree Traversal with JJForester","display_name":"Object-oriented Tree Traversal with JJForester","publication_year":2001,"publication_date":"2001-06-01","ids":{"openalex":"https://openalex.org/W1560230218","doi":"https://doi.org/10.1016/s0167-6423(02)00108-9","mag":"1560230218"},"language":"en","primary_location":{"id":"doi:10.1016/s0167-6423(02)00108-9","is_oa":false,"landing_page_url":"https://doi.org/10.1016/s0167-6423(02)00108-9","pdf_url":null,"source":{"id":"https://openalex.org/S21029587","display_name":"Science of Computer Programming","issn_l":"0167-6423","issn":["0167-6423","1872-7964"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Science of Computer Programming","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://doi.org/10.1016/s1571-0661(04)80919-8","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5024665606","display_name":"T. Kuipers","orcid":null},"institutions":[{"id":"https://openalex.org/I1341640284","display_name":"Centrum Wiskunde & Informatica","ror":"https://ror.org/00x7ekv49","country_code":"NL","type":"facility","lineage":["https://openalex.org/I1341640284","https://openalex.org/I2800991832"]}],"countries":["NL"],"is_corresponding":true,"raw_author_name":"Tobias Kuipers","raw_affiliation_strings":["Software Improvement Group, Kruislaan 419, Amsterdam 1098 VA, The Netherlands","CWI, Department SEN, PO Box 94079, 1090 GB Amsterdam, The Netherlands"],"affiliations":[{"raw_affiliation_string":"Software Improvement Group, Kruislaan 419, Amsterdam 1098 VA, The Netherlands","institution_ids":[]},{"raw_affiliation_string":"CWI, Department SEN, PO Box 94079, 1090 GB Amsterdam, The Netherlands","institution_ids":["https://openalex.org/I1341640284"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5049830358","display_name":"Joost Visser","orcid":"https://orcid.org/0000-0003-0158-3095"},"institutions":[{"id":"https://openalex.org/I1341640284","display_name":"Centrum Wiskunde & Informatica","ror":"https://ror.org/00x7ekv49","country_code":"NL","type":"facility","lineage":["https://openalex.org/I1341640284","https://openalex.org/I2800991832"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Joost Visser","raw_affiliation_strings":["CWI, Department SEN, P.O. Box 94079, Amsterdam 1090 GB, The Netherlands","CWI, Department SEN, PO Box 94079, 1090 GB Amsterdam, The Netherlands"],"affiliations":[{"raw_affiliation_string":"CWI, Department SEN, P.O. Box 94079, Amsterdam 1090 GB, The Netherlands","institution_ids":["https://openalex.org/I1341640284"]},{"raw_affiliation_string":"CWI, Department SEN, PO Box 94079, 1090 GB Amsterdam, The Netherlands","institution_ids":["https://openalex.org/I1341640284"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5024665606"],"corresponding_institution_ids":["https://openalex.org/I1341640284"],"apc_list":{"value":2460,"currency":"USD","value_usd":2460},"apc_paid":null,"fwci":0.0,"has_fulltext":true,"cited_by_count":2,"citation_normalized_percentile":{"value":0.10198106,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"44","issue":"1","first_page":"34","last_page":"58"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.9980000257492065,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9975000023841858,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.8333525657653809},{"id":"https://openalex.org/keywords/tree-traversal","display_name":"Tree traversal","score":0.7925081253051758},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.783169150352478},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.7540678977966309},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.6394533514976501},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"Object-oriented programming","score":0.53532475233078},{"id":"https://openalex.org/keywords/formalism","display_name":"Formalism (music)","score":0.5055193901062012},{"id":"https://openalex.org/keywords/abstract-syntax-tree","display_name":"Abstract syntax tree","score":0.48510682582855225},{"id":"https://openalex.org/keywords/grammar","display_name":"Grammar","score":0.47246766090393066},{"id":"https://openalex.org/keywords/class","display_name":"Class (philosophy)","score":0.46983596682548523},{"id":"https://openalex.org/keywords/parse-tree","display_name":"Parse tree","score":0.4510299265384674},{"id":"https://openalex.org/keywords/tree","display_name":"Tree (set theory)","score":0.42726999521255493},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3470191955566406},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.2948738634586334},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.1298668086528778},{"id":"https://openalex.org/keywords/linguistics","display_name":"Linguistics","score":0.11094099283218384}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8333525657653809},{"id":"https://openalex.org/C140745168","wikidata":"https://www.wikidata.org/wiki/Q1210082","display_name":"Tree traversal","level":2,"score":0.7925081253051758},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.783169150352478},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.7540678977966309},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6394533514976501},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.53532475233078},{"id":"https://openalex.org/C73301696","wikidata":"https://www.wikidata.org/wiki/Q5469984","display_name":"Formalism (music)","level":3,"score":0.5055193901062012},{"id":"https://openalex.org/C58646249","wikidata":"https://www.wikidata.org/wiki/Q127380","display_name":"Abstract syntax tree","level":3,"score":0.48510682582855225},{"id":"https://openalex.org/C26022165","wikidata":"https://www.wikidata.org/wiki/Q8091","display_name":"Grammar","level":2,"score":0.47246766090393066},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.46983596682548523},{"id":"https://openalex.org/C2781466058","wikidata":"https://www.wikidata.org/wiki/Q627921","display_name":"Parse tree","level":3,"score":0.4510299265384674},{"id":"https://openalex.org/C113174947","wikidata":"https://www.wikidata.org/wiki/Q2859736","display_name":"Tree (set theory)","level":2,"score":0.42726999521255493},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3470191955566406},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.2948738634586334},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.1298668086528778},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.11094099283218384},{"id":"https://openalex.org/C142362112","wikidata":"https://www.wikidata.org/wiki/Q735","display_name":"Art","level":0,"score":0.0},{"id":"https://openalex.org/C558565934","wikidata":"https://www.wikidata.org/wiki/Q2743","display_name":"Musical","level":2,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C153349607","wikidata":"https://www.wikidata.org/wiki/Q36649","display_name":"Visual arts","level":1,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1016/s0167-6423(02)00108-9","is_oa":false,"landing_page_url":"https://doi.org/10.1016/s0167-6423(02)00108-9","pdf_url":null,"source":{"id":"https://openalex.org/S21029587","display_name":"Science of Computer Programming","issn_l":"0167-6423","issn":["0167-6423","1872-7964"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Science of Computer Programming","raw_type":"journal-article"},{"id":"doi:10.1016/s1571-0661(04)80919-8","is_oa":true,"landing_page_url":"https://doi.org/10.1016/s1571-0661(04)80919-8","pdf_url":null,"source":{"id":"https://openalex.org/S50368787","display_name":"Electronic Notes in Theoretical Computer Science","issn_l":"1571-0661","issn":["1571-0661"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Electronic Notes in Theoretical Computer Science","raw_type":"journal-article"},{"id":"pmh:oai:cwi.nl:4377","is_oa":true,"landing_page_url":"https://ir.cwi.nl/pub/4377","pdf_url":"https://ir.cwi.nl/pub/4377/04377D.pdf","source":{"id":"https://openalex.org/S7407055335","display_name":"Centrum Wiskunde & Informatica (CWI), the national research institute for mathematics and computer science in the Netherlands","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"info:eu-repo/semantics/other"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.26.1603","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.26.1603","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.cwi.nl/ftp/CWIreports/SEN/SEN-R0041.ps.Z","raw_type":"text"},{"id":"mag:1560230218","is_oa":false,"landing_page_url":null,"pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":null}],"best_oa_location":{"id":"doi:10.1016/s1571-0661(04)80919-8","is_oa":true,"landing_page_url":"https://doi.org/10.1016/s1571-0661(04)80919-8","pdf_url":null,"source":{"id":"https://openalex.org/S50368787","display_name":"Electronic Notes in Theoretical Computer Science","issn_l":"1571-0661","issn":["1571-0661"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Electronic Notes in Theoretical Computer Science","raw_type":"journal-article"},"sustainable_development_goals":[{"score":0.6499999761581421,"display_name":"Quality Education","id":"https://metadata.un.org/sdg/4"}],"awards":[{"id":"https://openalex.org/G629491556","display_name":null,"funder_award_id":"(NWO)","funder_id":"https://openalex.org/F4320321800","funder_display_name":"Nederlandse Organisatie voor Wetenschappelijk Onderzoek"}],"funders":[{"id":"https://openalex.org/F4320320885","display_name":"European Research Consortium for Informatics and Mathematics","ror":"https://ror.org/055zrhj18"},{"id":"https://openalex.org/F4320321800","display_name":"Nederlandse Organisatie voor Wetenschappelijk Onderzoek","ror":"https://ror.org/04jsz6e67"},{"id":"https://openalex.org/F4320331116","display_name":"Centrum Wiskunde and Informatica","ror":"https://ror.org/00x7ekv49"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":23,"referenced_works":["https://openalex.org/W1523209168","https://openalex.org/W1555255444","https://openalex.org/W1571449023","https://openalex.org/W1575771936","https://openalex.org/W1580128549","https://openalex.org/W1694414531","https://openalex.org/W2013399578","https://openalex.org/W2051096181","https://openalex.org/W2055027013","https://openalex.org/W2112197627","https://openalex.org/W2127340092","https://openalex.org/W2129858079","https://openalex.org/W2131252479","https://openalex.org/W2135158729","https://openalex.org/W2154940799","https://openalex.org/W2611605145","https://openalex.org/W3007997627","https://openalex.org/W3094621343","https://openalex.org/W4236834388","https://openalex.org/W4254691308","https://openalex.org/W6600780467","https://openalex.org/W6636833659","https://openalex.org/W6676249147"],"related_works":["https://openalex.org/W2066244121","https://openalex.org/W1495866684","https://openalex.org/W2159400269","https://openalex.org/W1991227409","https://openalex.org/W2017008387","https://openalex.org/W2170094905","https://openalex.org/W2171334441","https://openalex.org/W1971138166","https://openalex.org/W2516550485","https://openalex.org/W2006125587","https://openalex.org/W1997104165","https://openalex.org/W1986164696","https://openalex.org/W2152608870","https://openalex.org/W2067901725","https://openalex.org/W2473604739","https://openalex.org/W2172232818","https://openalex.org/W2112094847","https://openalex.org/W1625533892","https://openalex.org/W2107605224","https://openalex.org/W2156451927"],"abstract_inverted_index":{"We":[0],"want":[1,23],"to":[2,24,71],"use":[3],"the":[4,11,26,32,41],"advanced":[5],"language":[6,43],"processing":[7],"technology":[8],"available":[9],"in":[10,13],"ASF+SDF":[12],"combination":[14],"with":[15,40,103],"general":[16],"purpose":[17],"programming":[18],"languages.":[19],"In":[20,83],"particular,":[21],"we":[22,48,88],"combine":[25],"syntax":[27],"definition":[28],"formalism":[29],"(SDF)":[30],"and":[31,74,93],"associated":[33],"components":[34],"that":[35,53],"support":[36],"generalized":[37],"LR":[38],"parsing,":[39],"object-oriented":[42],"Java.":[44],"To":[45],"this":[46],"end,":[47],"implemented":[49],"JJForester,":[50],"a":[51,66,84],"tool":[52],"generates":[54],"class":[55,63],"structures":[56,64],"from":[57],"SDF":[58],"grammar":[59],"definitions.":[60],"The":[61],"generated":[62],"implement":[65],"number":[67],"of":[68,76,97],"design":[69],"patterns":[70],"facilitate":[72],"construction":[73],"traversal":[75],"parse":[77],"trees":[78],"represented":[79],"by":[80],"object":[81],"structures.":[82],"detailed":[85],"case":[86],"study,":[87],"demonstrate":[89],"how":[90],"program":[91],"analyses":[92],"transformations":[94],"for":[95],"languages":[96],"non-trivial":[98],"size":[99],"can":[100],"be":[101],"constructed":[102],"JJForester.":[104]},"counts_by_year":[],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
