{"id":"https://openalex.org/W6889679834","doi":"https://doi.org/10.26190/unsworks/23404","title":"Dynamic extension of typed functional languages","display_name":"Dynamic extension of typed functional languages","publication_year":2010,"publication_date":"2010-01-01","ids":{"openalex":"https://openalex.org/W6889679834","doi":"https://doi.org/10.26190/unsworks/23404"},"language":"en","primary_location":{"id":"pmh:oai:unsworks.unsw.edu.au:1959.4/50220","is_oa":true,"landing_page_url":"http://handle.unsw.edu.au/1959.4/50220","pdf_url":"http://handle.unsw.edu.au/1959.4/50220","source":{"id":"https://openalex.org/S4377196481","display_name":"UNSWorks (UNSW Sydney)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I31746571","host_organization_name":"UNSW Sydney","host_organization_lineage":["https://openalex.org/I31746571"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Thesis"},"type":"dissertation","indexed_in":["datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"http://handle.unsw.edu.au/1959.4/50220","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Stewart, Don","orcid":null},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Stewart, Don","raw_affiliation_strings":[],"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":true,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9735999703407288,"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"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9735999703407288,"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"}},{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.007899999618530273,"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"}},{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.005499999970197678,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/haskell","display_name":"Haskell","score":0.7516000270843506},{"id":"https://openalex.org/keywords/type-safety","display_name":"Type safety","score":0.675599992275238},{"id":"https://openalex.org/keywords/extensibility","display_name":"Extensibility","score":0.5232999920845032},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.5092999935150146},{"id":"https://openalex.org/keywords/extension","display_name":"Extension (predicate logic)","score":0.4968999922275543},{"id":"https://openalex.org/keywords/type-inference","display_name":"Type inference","score":0.4830000102519989},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.4634999930858612},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4235999882221222},{"id":"https://openalex.org/keywords/data-type","display_name":"Data type","score":0.39649999141693115},{"id":"https://openalex.org/keywords/dynamic-compilation","display_name":"Dynamic compilation","score":0.37139999866485596}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8416000008583069},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8003000020980835},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.7516000270843506},{"id":"https://openalex.org/C44779574","wikidata":"https://www.wikidata.org/wiki/Q736866","display_name":"Type safety","level":2,"score":0.675599992275238},{"id":"https://openalex.org/C32833848","wikidata":"https://www.wikidata.org/wiki/Q4115054","display_name":"Extensibility","level":2,"score":0.5232999920845032},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.5092999935150146},{"id":"https://openalex.org/C2778029271","wikidata":"https://www.wikidata.org/wiki/Q5421931","display_name":"Extension (predicate logic)","level":2,"score":0.4968999922275543},{"id":"https://openalex.org/C198370458","wikidata":"https://www.wikidata.org/wiki/Q586459","display_name":"Type inference","level":3,"score":0.4830000102519989},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.4634999930858612},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4235999882221222},{"id":"https://openalex.org/C138958017","wikidata":"https://www.wikidata.org/wiki/Q190087","display_name":"Data type","level":2,"score":0.39649999141693115},{"id":"https://openalex.org/C8767382","wikidata":"https://www.wikidata.org/wiki/Q1058454","display_name":"Dynamic compilation","level":3,"score":0.37139999866485596},{"id":"https://openalex.org/C7051814","wikidata":"https://www.wikidata.org/wiki/Q1051282","display_name":"Generic programming","level":2,"score":0.3626999855041504},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.3407999873161316},{"id":"https://openalex.org/C109701466","wikidata":"https://www.wikidata.org/wiki/Q460584","display_name":"Scala","level":3,"score":0.33320000767707825},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.3327000141143799},{"id":"https://openalex.org/C2164484","wikidata":"https://www.wikidata.org/wiki/Q5170150","display_name":"Core (optical fiber)","level":2,"score":0.31929999589920044},{"id":"https://openalex.org/C36503486","wikidata":"https://www.wikidata.org/wiki/Q11235244","display_name":"Domain (mathematical analysis)","level":2,"score":0.31700000166893005},{"id":"https://openalex.org/C135790938","wikidata":"https://www.wikidata.org/wiki/Q242028","display_name":"Lambda calculus","level":2,"score":0.3149999976158142},{"id":"https://openalex.org/C2777299769","wikidata":"https://www.wikidata.org/wiki/Q3707858","display_name":"Type (biology)","level":2,"score":0.31459999084472656},{"id":"https://openalex.org/C28180684","wikidata":"https://www.wikidata.org/wiki/Q4080983","display_name":"Memory safety","level":3,"score":0.3003000020980835},{"id":"https://openalex.org/C92966194","wikidata":"https://www.wikidata.org/wiki/Q651794","display_name":"Compiled language","level":4,"score":0.28349998593330383},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.28189998865127563},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.27630001306533813},{"id":"https://openalex.org/C47434764","wikidata":"https://www.wikidata.org/wiki/Q1770035","display_name":"Dead code","level":5,"score":0.2694000005722046},{"id":"https://openalex.org/C135257023","wikidata":"https://www.wikidata.org/wiki/Q691358","display_name":"Domain-specific language","level":2,"score":0.2687000036239624},{"id":"https://openalex.org/C145428669","wikidata":"https://www.wikidata.org/wiki/Q471748","display_name":"Exception handling","level":2,"score":0.2685000002384186},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.2619999945163727},{"id":"https://openalex.org/C195701839","wikidata":"https://www.wikidata.org/wiki/Q4008398","display_name":"Partial evaluation","level":2,"score":0.260699987411499},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.2581999897956848},{"id":"https://openalex.org/C76782552","wikidata":"https://www.wikidata.org/wiki/Q110546","display_name":"Just-in-time compilation","level":3,"score":0.2563000023365021}],"mesh":[],"locations_count":3,"locations":[{"id":"pmh:oai:unsworks.unsw.edu.au:1959.4/50220","is_oa":true,"landing_page_url":"http://handle.unsw.edu.au/1959.4/50220","pdf_url":"http://handle.unsw.edu.au/1959.4/50220","source":{"id":"https://openalex.org/S4377196481","display_name":"UNSWorks (UNSW Sydney)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I31746571","host_organization_name":"UNSW Sydney","host_organization_lineage":["https://openalex.org/I31746571"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Thesis"},{"id":"pmh:oai:unsworks.library.unsw.edu.au:1959.4/50220","is_oa":false,"landing_page_url":"http://hdl.handle.net/1959.4/50220","pdf_url":null,"source":{"id":"https://openalex.org/S4306401737","display_name":"UNSWorks (University of New South Wales, Sydney, Australia)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I40053085","host_organization_name":"Australian Defence Force Academy","host_organization_lineage":["https://openalex.org/I40053085"],"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":"http://purl.org/coar/resource_type/c_db06"},{"id":"doi:10.26190/unsworks/23404","is_oa":true,"landing_page_url":"https://doi.org/10.26190/unsworks/23404","pdf_url":null,"source":{"id":"https://openalex.org/S7407053176","display_name":"University of New South Wales","issn_l":null,"issn":[],"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":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"thesis"}],"best_oa_location":{"id":"pmh:oai:unsworks.unsw.edu.au:1959.4/50220","is_oa":true,"landing_page_url":"http://handle.unsw.edu.au/1959.4/50220","pdf_url":"http://handle.unsw.edu.au/1959.4/50220","source":{"id":"https://openalex.org/S4377196481","display_name":"UNSWorks (UNSW Sydney)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I31746571","host_organization_name":"UNSW Sydney","host_organization_lineage":["https://openalex.org/I31746571"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Thesis"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W6889679834.pdf","grobid_xml":"https://content.openalex.org/works/W6889679834.grobid-xml"},"referenced_works_count":0,"referenced_works":[],"related_works":[],"abstract_inverted_index":{"We":[0,73,138,177,212],"present":[1],"a":[2,50,56,82,135,185,220,229,234],"solution":[3,20],"to":[4,80,107,123,256],"the":[5,22,102,117,126,141,149,162,179,182,189,209,214],"problem":[6],"of":[7,24,36,41,85,112,119,129,143,161,181,216,222],"dynamic":[8,53,61,86,113,136,145,197,257],"extension":[9,54,87,122,171],"in":[10,55,89,134,188,206],"statically":[11,57,91],"typed":[12,58,92],"functional":[13,93],"languages":[14],"with":[15,95],"type":[16,28,64,96,105,110,204],"erasure.":[17],"The":[18],"presented":[19],"retains":[21],"benefits":[23,128],"static":[25,130,150,251],"checking,":[26,65],"including":[27],"safety,":[29],"aggressive":[30],"optimizations,":[31],"and":[32,69,115,154,168,202,239],"native":[33,120],"code":[34,70,121,156,167],"compilation":[35],"components,":[37,114],"while":[38],"allowing":[39],"extensibility":[40],"programs":[42],"at":[43],"runtime.":[44],"Our":[45],"approach":[46,163],"is":[47,78,152,157,253],"based":[48],"on":[49],"framework":[51,77,183],"for":[52,196,208,236],"setting,":[59],"combining":[60],"linking,":[62,198],"runtime":[63,109,203],"first":[66,210],"class":[67,84],"modules":[68],"hot":[71,158,165,200],"swapping.":[72],"show":[74],"that":[75,125,250],"this":[76,217],"sufficient":[79],"allow":[81],"broad":[83],"capabilities":[88],"any":[90],"language":[94],"erasure":[97],"semantics.":[98],"Uniquely,":[99],"we":[100,248],"employ":[101],"full":[103,186],"compile-time":[104],"system":[106],"perform":[108],"checking":[111,205],"emphasize":[116],"use":[118],"ensure":[124],"performance":[127],"typing":[131,252],"are":[132],"retained":[133],"environment.":[137],"also":[139],"develop":[140],"concept":[142],"fully":[144],"software":[146],"architectures,":[147],"where":[148],"core":[151],"minimal":[153],"all":[155],"swappable.":[159],"Benefits":[160],"include":[164],"swappable":[166],"sophisticated":[169],"application":[170],"via":[172,184],"embedded":[173],"domain":[174],"specific":[175],"languages.":[176],"instantiate":[178],"concepts":[180],"implementation":[187],"Haskell":[190,207],"programming":[191],"language:":[192],"providing":[193],"rich":[194],"mechanisms":[195],"loading,":[199],"swapping,":[201],"time.":[211],"demonstrate":[213,249],"feasibility":[215],"architecture":[218],"through":[219],"number":[221],"novel":[223],"applications:":[224],"an":[225,241],"extensible":[226,242],"text":[227],"editor;":[228],"plugin-based":[230],"network":[231],"chat":[232],"bot;":[233],"simulator":[235],"polymer":[237],"chemistry;":[238],"xmonad,":[240],"window":[243],"manager.":[244],"In":[245],"doing":[246],"so,":[247],"no":[254],"barrier":[255],"extension.":[258]},"counts_by_year":[],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
