{"id":"https://openalex.org/W2108288953","doi":null,"title":"Modular Monadic Semantics for Aspect-Oriented Programming","display_name":"Modular Monadic Semantics for Aspect-Oriented Programming","publication_year":2004,"publication_date":"2004-01-01","ids":{"openalex":"https://openalex.org/W2108288953","mag":"2108288953"},"language":"en","primary_location":{"id":"mag:2108288953","doi":null,"is_oa":false,"landing_page_url":"http://icfpconference.org/archived/icfp2004/abstract.cs.washington.edu/~djg/kimmell.pdf","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null},"volume":null,"type":"article","is_traditional":true,"indexed_in":[],"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/A5041250540","display_name":"Garrin Kimmell","orcid":null,"observed_orcids":[]},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Garrin Kimmell","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":["https://openalex.org/A5041250540"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.0,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"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.9961000084877014,"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.9961000084877014,"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.002300000051036477,"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.0003000000142492354,"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/aspect-oriented-programming","display_name":"aspect-oriented programming","score":0.8709999918937683},{"id":"https://openalex.org/keywords/aspect-languages","display_name":"aspect languages","score":0.7910000085830688},{"id":"https://openalex.org/keywords/aspect-weaving","display_name":"aspect weaving","score":0.7519999742507935},{"id":"https://openalex.org/keywords/functors","display_name":"functors","score":0.7229999899864197},{"id":"https://openalex.org/keywords/least-fixed-point","display_name":"least fixed point","score":0.7160000205039978},{"id":"https://openalex.org/keywords/algebraic-data-types","display_name":"algebraic data types","score":0.7680000066757202},{"id":"https://openalex.org/keywords/metaprogramming","display_name":"metaprogramming","score":0.7179999947547913},{"id":"https://openalex.org/keywords/denotational-semantics","display_name":"denotational semantics","score":0.5709999799728394},{"id":"https://openalex.org/keywords/superimposition","display_name":"superimposition","score":0.8809999823570251}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8357217311859131},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7786470055580139},{"id":"https://openalex.org/C156325763","wikidata":"https://www.wikidata.org/wiki/Q1930895","display_name":"Operational semantics","level":3,"score":0.6374306678771973},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.5856502056121826},{"id":"https://openalex.org/C207648694","wikidata":"https://www.wikidata.org/wiki/Q1189746","display_name":"Denotational semantics","level":4,"score":0.5354257822036743},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.47848576307296753},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.4556245803833008}],"mesh":[],"locations_count":1,"locations":[{"id":"mag:2108288953","doi":null,"is_oa":false,"landing_page_url":"http://icfpconference.org/archived/icfp2004/abstract.cs.washington.edu/~djg/kimmell.pdf","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":13,"referenced_works":["https://openalex.org/W1532465792","https://openalex.org/W1575027156","https://openalex.org/W1965418329","https://openalex.org/W1986523916","https://openalex.org/W1995674161","https://openalex.org/W2091071969","https://openalex.org/W2136033310","https://openalex.org/W2141576692","https://openalex.org/W2143238865","https://openalex.org/W2150366175","https://openalex.org/W2157405063","https://openalex.org/W2912273059","https://openalex.org/W2970025949"],"related_works":["https://openalex.org/W67531830","https://openalex.org/W7096960695","https://openalex.org/W7098784326","https://openalex.org/W2150301868","https://openalex.org/W1587187316","https://openalex.org/W2050388492","https://openalex.org/W2036693995","https://openalex.org/W7099046421","https://openalex.org/W6901941204","https://openalex.org/W2097664691"],"abstract_inverted_index":{"This":[0,158,237],"research":[1],"examines":[2],"the":[3,11,41,52,55,60,77,81,84,88,169,185,198,208,263,266,271,277,286,323,331,334,392,397,418,421],"use":[4,326],"of":[5,13,26,51,62,76,96,99,163,171,180,192,207,226,265,268,279,327,333,420,426],"modular":[6,164,172,364],"monadic":[7,139,173,365,408],"semantics":[8,12,108,115,140,174,280,353,366,395,409,425],"to":[9,204,216,242,285,320,372],"specify":[10],"aspect":[14,70,85,130,335,393,427],"oriented":[15],"languages.":[16,428],"Aspect-oriented":[17],"programming":[18],"[5]":[19],"is":[20,54,72,231,260],"a":[21,27,37,45,66,148,234,250,294,298,308,340,388,404,411],"paradigm":[22,53],"where":[23],"different":[24,42,63],"facets":[25],"system\u2019s":[28],"behavior":[29,43],"are":[30,346,354],"programmed":[31],"independently.":[32],"Aspect":[33,351],"languages":[34],"then":[35,261],"provide":[36,387],"mechanism":[38,413],"for":[39,109,150,154,175,270,414],"\u201cweaving\u201d":[40],"into":[44],"complete":[46],"program.":[47],"A":[48,214],"principal":[49],"criticism":[50],"difficulty":[56],"in":[57,65,74],"reasoning":[58,402],"about":[59,403],"interaction":[61],"aspects":[64],"woven":[67],"system.":[68,406],"The":[69,325],"language":[71,156,193,199,229,240,344,352,399],"expressed":[73],"terms":[75],"object":[78,89,398],"language,":[79],"eliminating":[80],"distinction":[82],"between":[83,391],"meta-language":[86,394],"and":[87,120,128,177,396,423],"language.":[90,272],"There":[91],"have":[92],"been":[93],"several":[94,374],"formulations":[95],"semantic":[97,360,382],"definitions":[98],"AOP":[100,381],"constructs.":[101,157],"Wand":[102],"[15]":[103],"gave":[104],"an":[105,113,291,302,305],"early":[106,186],"dynamic":[107,129,422],"AOP.":[110],"Lammel":[111],"provided":[112],"alternative":[114],"based":[116],"on":[117,161,189,276,358],"method-call":[118],"interception":[119],"superimposition.":[121],"Later":[122],"work":[123,159,167,187,274,287],"extended":[124],"by":[125,201],"separated":[126],"static":[127,424],"semantics,":[131,400],"yielding":[132],"significant":[133],"efficiency":[134],"gains":[135],"[12,":[136],"14].":[137],"Modular":[138],"[2,":[141],"11,":[142],"13]":[143],"was":[144],"first":[145],"introduced":[146],"as":[147,223,233,247,281,293,304,307,339,348,356],"method":[149],"independently":[151,246],"specifying":[152],"denotations":[153],"various":[155,380],"focused":[160,188],"specification":[162,191],"interpreters;":[165],"follow-on":[166],"examined":[168],"usefulness":[170],"building":[176],"proving":[178],"correctness":[179],"compilers":[181],"[10,":[182],"3].":[183],"While":[184],"independent":[190],"constructs,":[194],"it":[195],"still":[196],"coupled":[197],"constructs":[200,345],"requiring":[202],"them":[203],"be":[205,243],"members":[206,314],"same":[209],"abstract":[210],"syntax":[211],"data":[212,221,309],"type.":[213],"solution":[215],"this":[217,317],"problem":[218],"models":[219],"algebraic":[220],"types":[222],"least":[224],"fixed-points":[225],"functors.":[227,282],"Each":[228],"element":[230],"represented":[232],"single":[235],"functor.":[236],"model":[238],"allows":[239,318,377],"elements":[241],"specified":[244,347,355],"completely":[245],"algebras":[248,269,329,386],"over":[249,297],"functor":[251],"[4,":[252],"1,":[253],"6,":[254],"7,":[255],"8,":[256],"4].":[257],"An":[258],"interpretation":[259],"simply":[262],"folding":[264],"collection":[267],"Our":[273],"builds":[275],"idea":[278],"In":[283],"contrast":[284],"above,":[288],"which":[289],"defines":[290],"algebra":[292,303],"simple":[295],"function":[296,312],"functor,":[299],"we":[300,370],"represent":[301],"explicitly":[306],"type":[310],"with":[311,367,379],"valued":[313],"[9].":[315],"Doing":[316],"us":[319],"dynamically":[321],"update":[322],"algebras.":[324,350,361],"updatable":[328,349,368,385],"facilitate":[330],"treatment":[332],"weaving":[336],"process":[337],"formally":[338],"metaprogramming":[341],"activity.":[342],"Traditional":[343],"transformations":[357],"those":[359],"By":[362],"using":[363],"algebras,":[369],"expect":[371],"realize":[373],"benefits.":[375],"Composability":[376],"experimentation":[378],"definitions.":[383],"Additionally,":[384],"clear":[389],"separation":[390,419],"simplifying":[401],"composed":[405],"Finally,":[407],"provides":[410],"convenient":[412],"staging":[415],"compilers,":[416],"allowing":[417]},"counts_by_year":[],"updated_date":"2025-11-06T04:12:42.849631","created_date":"2016-06-24T00:00:00"}
