{"id":"https://openalex.org/W2116721607","doi":"https://doi.org/10.1145/643603.643621","title":"Strategic programming meets adaptive programming","display_name":"Strategic programming meets adaptive programming","publication_year":2003,"publication_date":"2003-03-17","ids":{"openalex":"https://openalex.org/W2116721607","doi":"https://doi.org/10.1145/643603.643621","mag":"2116721607"},"language":"en","primary_location":{"id":"doi:10.1145/643603.643621","doi":"https://doi.org/10.1145/643603.643621","is_oa":false,"landing_page_url":"https://doi.org/10.1145/643603.643621","pdf_url":null,"source":{"id":"https://openalex.org/S7407089081","display_name":"International Conference on Aspect-Oriented Software Development (AOSD)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2nd international conference on Aspect-oriented software development","raw_type":"proceedings-article"},"volume":null,"type":"conference-paper","is_traditional":true,"indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5055987140","display_name":"Ralf L\u00e4mmel","orcid":"https://orcid.org/0000-0001-9946-4363","observed_orcids":["https://orcid.org/0000-0001-9946-4363"]},"institutions":[{"id":"https://openalex.org/I865915315","display_name":"Vrije Universiteit Amsterdam","ror":"https://ror.org/008xxew50","country_code":"NL","type":"education","lineage":["https://openalex.org/I865915315"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Ralf L\u00e4mmel","raw_affiliation_strings":["Free University, Amsterdam, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Free University, Amsterdam, The Netherlands","institution_ids":["https://openalex.org/I865915315"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5072923235","display_name":"Eelco Visser B","orcid":"https://orcid.org/0000-0002-7384-3370","observed_orcids":["https://orcid.org/0000-0002-7384-3370"]},"institutions":[{"id":"https://openalex.org/I193662353","display_name":"Utrecht University","ror":"https://ror.org/04pp8hn57","country_code":"NL","type":"education","lineage":["https://openalex.org/I193662353"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Eelco Visser","raw_affiliation_strings":["University Utrecht, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University Utrecht, The Netherlands","institution_ids":["https://openalex.org/I193662353"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5049830358","display_name":"Joost Visser","orcid":"https://orcid.org/0000-0003-0158-3095","observed_orcids":["https://orcid.org/0000-0003-0158-3095"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Joost Visser","raw_affiliation_strings":["SIG, Amsterdam, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"SIG, Amsterdam, The Netherlands","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":3.257,"has_fulltext":false,"cited_by_count":51,"citation_normalized_percentile":{"value":0.92596455,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":88,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"168","last_page":"177"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.4975999891757965,"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"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.4975999891757965,"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.48559999465942383,"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/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.0032999999821186066,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/strategic-programming","display_name":"strategic programming","score":1.0},{"id":"https://openalex.org/keywords/adaptive-programming","display_name":"adaptive programming","score":0.9940000176429749},{"id":"https://openalex.org/keywords/aspect-oriented-programming","display_name":"aspect-oriented programming","score":0.9980000257492065},{"id":"https://openalex.org/keywords/join-points","display_name":"join points","score":0.7020000219345093},{"id":"https://openalex.org/keywords/advice","display_name":"advice","score":0.7360000014305115},{"id":"https://openalex.org/keywords/cross-cutting","display_name":"cross-cutting","score":0.7009999752044678}],"concepts":[{"id":"https://openalex.org/C140745168","wikidata":"https://www.wikidata.org/wiki/Q1210082","display_name":"Tree traversal","level":2,"score":0.8789814710617065},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7902860641479492},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7431842088699341},{"id":"https://openalex.org/C2776245389","wikidata":"https://www.wikidata.org/wiki/Q962139","display_name":"Programming style","level":2,"score":0.6205090880393982},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.6125174760818481},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.5651965737342834},{"id":"https://openalex.org/C150762246","wikidata":"https://www.wikidata.org/wiki/Q4354073","display_name":"Reactive programming","level":4,"score":0.5448503494262695},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.5346758961677551},{"id":"https://openalex.org/C120558287","wikidata":"https://www.wikidata.org/wiki/Q1418502","display_name":"Procedural programming","level":4,"score":0.49181845784187317},{"id":"https://openalex.org/C96315309","wikidata":"https://www.wikidata.org/wiki/Q5508829","display_name":"Functional logic programming","level":4,"score":0.4771658480167389},{"id":"https://openalex.org/C146206909","wikidata":"https://www.wikidata.org/wiki/Q531152","display_name":"Declarative programming","level":4,"score":0.41978663206100464}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/643603.643621","doi":"https://doi.org/10.1145/643603.643621","is_oa":false,"landing_page_url":"https://doi.org/10.1145/643603.643621","pdf_url":null,"source":{"id":"https://openalex.org/S7407089081","display_name":"International Conference on Aspect-Oriented Software Development (AOSD)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2nd international conference on Aspect-oriented software development","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":20,"referenced_works":["https://openalex.org/W87677312","https://openalex.org/W1517760837","https://openalex.org/W1528098570","https://openalex.org/W1545995615","https://openalex.org/W1556226926","https://openalex.org/W1608714802","https://openalex.org/W1636139685","https://openalex.org/W1978948468","https://openalex.org/W1986565747","https://openalex.org/W2018819181","https://openalex.org/W2051096181","https://openalex.org/W2055027013","https://openalex.org/W2056351581","https://openalex.org/W2065614429","https://openalex.org/W2102217676","https://openalex.org/W2103395411","https://openalex.org/W2137299229","https://openalex.org/W2162766176","https://openalex.org/W2912333754","https://openalex.org/W4285719527"],"related_works":["https://openalex.org/W7095916291","https://openalex.org/W1882765718","https://openalex.org/W7100753148","https://openalex.org/W1552820213","https://openalex.org/W2061758027","https://openalex.org/W7098225787","https://openalex.org/W7101166965","https://openalex.org/W3130846433","https://openalex.org/W2056683049","https://openalex.org/W1961431777"],"abstract_inverted_index":{"Strategic":[0],"programming":[1,5,76,80,88,111],"is":[2,23,93],"a":[3,58,72,94],"generic":[4],"idiom":[6],"for":[7,65,122],"processing":[8],"compound":[9],"data":[10],"such":[11],"as":[12,43],"terms":[13],"or":[14],"object":[15,102],"structures.":[16,103],"At":[17],"the":[18,21,24,41,46,54,83,99,107],"heart":[19],"of":[20,26,101],"approach":[22,97],"separation":[25],"two":[27],"concerns:":[28],"basic":[29],"dataprocessing":[30],"computations":[31],"vs.":[32],"traversal":[33,100,124],"schemes.":[34],"Actual":[35],"traversals":[36],"are":[37],"composed":[38],"by":[39,53],"passing":[40],"former":[42],"arguments":[44],"to":[45,98],"latter.":[47],"Traversal":[48],"schemes":[49],"can":[50,119],"be":[51,120],"defined":[52],"strategic":[55,75,87],"programmer":[56],"using":[57],"combinator":[59],"style":[60],"that":[61,109],"relies":[62],"on":[63],"primitives":[64],"layered":[66],"traversal.In":[67],"this":[68],"paper,":[69,84],"we":[70,85],"take":[71],"look":[73],"at":[74],"from":[77,106],"an":[78],"aspect-oriented":[79,110],"perspective.":[81],"Throughout":[82],"compare":[86],"with":[89],"adaptive":[90],"programming,":[91],"which":[92],"well-established":[95],"aspectual":[96,123],"We":[104],"start":[105],"observation":[108],"terms,":[112],"e.g.,":[113],"crosscutting,":[114],"join":[115],"point,":[116],"and":[117],"advice":[118],"instantiated":[121],"approaches.":[125]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2020,"cited_by_count":1},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":1},{"year":2016,"cited_by_count":1},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":1},{"year":2013,"cited_by_count":3},{"year":2012,"cited_by_count":1}],"updated_date":"2026-11-07T11:25:07.637180","created_date":"2016-06-24T00:00:00"}
