{"id":"https://openalex.org/W3108811686","doi":"https://doi.org/10.1145/3426428.3426919","title":"Example-based live programming for everyone: building language-agnostic tools for live programming with LSP and GraalVM","display_name":"Example-based live programming for everyone: building language-agnostic tools for live programming with LSP and GraalVM","publication_year":2020,"publication_date":"2020-11-17","ids":{"openalex":"https://openalex.org/W3108811686","doi":"https://doi.org/10.1145/3426428.3426919","mag":"3108811686"},"language":"en","primary_location":{"id":"doi:10.1145/3426428.3426919","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3426428.3426919","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3426428.3426919","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2020 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3426428.3426919","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5054086978","display_name":"Fabio Niephaus","orcid":"https://orcid.org/0000-0002-3297-9730"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Fabio Niephaus","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":"https://orcid.org/0000-0002-3297-9730","affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5011714104","display_name":"Patrick Rein","orcid":"https://orcid.org/0000-0001-9454-8381"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Patrick Rein","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5081451955","display_name":"Jakob Edding","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Jakob Edding","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5005808875","display_name":"Jonas Hering","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Jonas Hering","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5078181979","display_name":"Bastian K\u00f6nig","orcid":"https://orcid.org/0009-0000-0584-6062"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Bastian K\u00f6nig","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5049471272","display_name":"Kolya Opahle","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Kolya Opahle","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5078708112","display_name":"Nico Scordialo","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Nico Scordialo","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5079160871","display_name":"Robert Hirschfeld","orcid":"https://orcid.org/0000-0002-4249-6003"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Robert Hirschfeld","raw_affiliation_strings":["HPI, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"HPI, Germany","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":true,"cited_by_count":19,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"17"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9921000003814697,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T12127","display_name":"Software System Performance and Reliability","score":0.9921000003814697,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10101","display_name":"Cloud Computing and Resource Management","score":0.9869999885559082,"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/T10273","display_name":"IoT and Edge/Fog Computing","score":0.9865999817848206,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/computer-science","display_name":"Computer science","score":0.8331863880157471},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.6363171339035034},{"id":"https://openalex.org/keywords/polyglot","display_name":"Polyglot","score":0.5323277711868286},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5027759075164795},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.47732099890708923},{"id":"https://openalex.org/keywords/extensible-programming","display_name":"Extensible programming","score":0.4445706605911255},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4234768748283386},{"id":"https://openalex.org/keywords/protocol","display_name":"Protocol (science)","score":0.4231402575969696},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.38058650493621826},{"id":"https://openalex.org/keywords/fifth-generation-programming-language","display_name":"Fifth-generation programming language","score":0.2953464388847351},{"id":"https://openalex.org/keywords/symbolic-programming","display_name":"Symbolic programming","score":0.25238728523254395}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8331863880157471},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.6363171339035034},{"id":"https://openalex.org/C2780239667","wikidata":"https://www.wikidata.org/wiki/Q2102850","display_name":"Polyglot","level":2,"score":0.5323277711868286},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5027759075164795},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.47732099890708923},{"id":"https://openalex.org/C131531359","wikidata":"https://www.wikidata.org/wiki/Q5421926","display_name":"Extensible programming","level":5,"score":0.4445706605911255},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4234768748283386},{"id":"https://openalex.org/C2780385302","wikidata":"https://www.wikidata.org/wiki/Q367158","display_name":"Protocol (science)","level":3,"score":0.4231402575969696},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.38058650493621826},{"id":"https://openalex.org/C199305712","wikidata":"https://www.wikidata.org/wiki/Q3205914","display_name":"Fifth-generation programming language","level":3,"score":0.2953464388847351},{"id":"https://openalex.org/C61714564","wikidata":"https://www.wikidata.org/wiki/Q7661185","display_name":"Symbolic programming","level":4,"score":0.25238728523254395},{"id":"https://openalex.org/C204787440","wikidata":"https://www.wikidata.org/wiki/Q188504","display_name":"Alternative medicine","level":2,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C71924100","wikidata":"https://www.wikidata.org/wiki/Q11190","display_name":"Medicine","level":0,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C142724271","wikidata":"https://www.wikidata.org/wiki/Q7208","display_name":"Pathology","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3426428.3426919","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3426428.3426919","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3426428.3426919","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2020 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/3426428.3426919","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3426428.3426919","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3426428.3426919","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2020 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software","raw_type":"proceedings-article"},"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/9","score":0.6200000047683716,"display_name":"Industry, innovation and infrastructure"}],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3108811686.pdf","grobid_xml":"https://content.openalex.org/works/W3108811686.grobid-xml"},"referenced_works_count":21,"referenced_works":["https://openalex.org/W1554919098","https://openalex.org/W2020462374","https://openalex.org/W2056936467","https://openalex.org/W2066641300","https://openalex.org/W2091228796","https://openalex.org/W2094269821","https://openalex.org/W2132704909","https://openalex.org/W2161316222","https://openalex.org/W2518770195","https://openalex.org/W2520264480","https://openalex.org/W2794883415","https://openalex.org/W2795148395","https://openalex.org/W2884128242","https://openalex.org/W2914976286","https://openalex.org/W2969322987","https://openalex.org/W2979385921","https://openalex.org/W2979937117","https://openalex.org/W3102806562","https://openalex.org/W3121792592","https://openalex.org/W3125799933","https://openalex.org/W4255246864"],"related_works":["https://openalex.org/W1988273104","https://openalex.org/W3162765197","https://openalex.org/W2088827150","https://openalex.org/W2291729801","https://openalex.org/W2094055450","https://openalex.org/W2038853506","https://openalex.org/W2130348202","https://openalex.org/W2393528030","https://openalex.org/W2954318817","https://openalex.org/W3127927149"],"abstract_inverted_index":{"Our":[0,139],"community":[1],"has":[2,131],"explored":[3],"various":[4],"approaches":[5],"to":[6,23,43,61,78,154,168,177,223,256,268,272],"improve":[7],"the":[8,40,63,83,123,142,152,172,192,197,204,218,244,266],"programming":[9,33,183],"experience.":[10],"Although":[11],"many":[12],"of":[13,194,199,206,220,232],"them,":[14],"such":[15,92],"as":[16,93],"Example-Based":[17],"Live":[18],"Programming":[19,125],"(ELP),":[20],"have":[21],"shown":[22],"be":[24,106,175,241],"effective,":[25],"they":[26],"are":[27],"still":[28],"not":[29],"widespread":[30],"in":[31,108,196,243,247,261],"conventional":[32],"environments.":[34,184],"A":[35],"reason":[36],"for":[37,67,136,147],"that":[38,47,130,235],"is":[39,58],"effort":[41,81],"required":[42],"provide":[44,169],"sophisticated":[45],"tools":[46,234,260],"rely":[48,236],"on":[49,118,141,237],"run-time":[50,238],"information.":[51],"To":[52],"target":[53],"multiple":[54],"language":[55,89],"ecosystems,":[56],"it":[57],"often":[59],"necessary":[60],"implement":[62],"same":[64],"concepts,":[65],"but":[66],"different":[68],"languages":[69,149],"and":[70,88,170,213,215,254],"runtimes.":[71],"Two":[72],"emerging":[73],"technologies":[74],"present":[75],"an":[76,102,127,230],"opportunity":[77],"reduce":[79],"this":[80,97],"significantly:":[82],"Language":[84],"Server":[85],"Protocol":[86],"(LSP)":[87],"implementation":[90],"frameworks":[91],"GraalVM's":[94],"Truffle.":[95],"In":[96],"paper,":[98],"we":[99,121,161,186,228],"show":[100],"how":[101,171,188,233],"ELP":[103,128,146,179,195,225],"system":[104,129,222],"can":[105],"built":[107,242],"a":[109,164,262,273],"language-agnostic":[110,165,263],"way":[111,264],"by":[112,151,209,216],"leveraging":[113],"these":[114],"two":[115],"technologies.":[116],"Based":[117],"our":[119,189,207,221],"approach,":[120],"implemented":[122,135],"Babylonian":[124],"system,":[126,140],"previously":[132],"only":[133],"been":[134],"exploratory":[137],"ecosystems.":[138],"other":[143,224],"hand,":[144],"brings":[145],"all":[148],"supported":[150],"GraalVM":[153],"Visual":[155],"Studio":[156],"Code":[157],"(VS":[158],"Code).":[159],"Moreover,":[160,227],"outline":[162],"what":[163],"infrastructure":[166],"needs":[167],"LSP":[173],"could":[174,240],"extended":[176],"support":[178],"also":[180],"independently":[181],"from":[182,265],"Further,":[185],"demonstrate":[187],"approach":[190,208],"enables":[191],"use":[193],"context":[198],"polyglot":[200],"programming.":[201],"We":[202],"illustrate":[203],"consequences":[205],"discussing":[210],"its":[211],"advantages":[212],"limitations":[214],"comparing":[217],"features":[219],"systems.":[226],"give":[229],"outlook":[231],"information":[239],"future.":[245],"This":[246],"turn":[248],"might":[249],"motivate":[250],"future":[251],"tool":[252],"builders":[253],"researchers":[255],"consider":[257],"implementing":[258],"more":[259],"start":[267],"make":[269],"them":[270],"available":[271],"broader":[274],"audience.":[275]},"counts_by_year":[{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":6},{"year":2022,"cited_by_count":4},{"year":2021,"cited_by_count":3}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
