{"id":"https://openalex.org/W2127777749","doi":"https://doi.org/10.1145/2517208.2517227","title":"Efficient high-level abstractions for web programming","display_name":"Efficient high-level abstractions for web programming","publication_year":2013,"publication_date":"2013-10-23","ids":{"openalex":"https://openalex.org/W2127777749","doi":"https://doi.org/10.1145/2517208.2517227","mag":"2127777749"},"language":"en","primary_location":{"id":"doi:10.1145/2517208.2517227","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2517208.2517227","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 12th international conference on Generative programming: concepts &amp; experiences","raw_type":"proceedings-article"},"type":"preprint","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://inria.hal.science/hal-00920786/document","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5018846823","display_name":"Julien Richard-Foy","orcid":null},"institutions":[{"id":"https://openalex.org/I56067802","display_name":"Universit\u00e9 de Rennes","ror":"https://ror.org/015m7wh34","country_code":"FR","type":"education","lineage":["https://openalex.org/I56067802"]},{"id":"https://openalex.org/I2802519937","display_name":"Institut de Recherche en Informatique et Syst\u00e8mes Al\u00e9atoires","ror":"https://ror.org/00myn0z94","country_code":"FR","type":"facility","lineage":["https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I1326498283","https://openalex.org/I205703379","https://openalex.org/I2802204017","https://openalex.org/I2802519937","https://openalex.org/I28221208","https://openalex.org/I4210127572","https://openalex.org/I4210159245","https://openalex.org/I56067802"]}],"countries":["FR"],"is_corresponding":true,"raw_author_name":"Julien Richard-Foy","raw_affiliation_strings":["IRISA, Universit\u00e9 de Rennes, Rennes, France"],"affiliations":[{"raw_affiliation_string":"IRISA, Universit\u00e9 de Rennes, Rennes, France","institution_ids":["https://openalex.org/I56067802","https://openalex.org/I2802519937"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5002785466","display_name":"Olivier Barais","orcid":"https://orcid.org/0000-0002-4551-8562"},"institutions":[{"id":"https://openalex.org/I2802519937","display_name":"Institut de Recherche en Informatique et Syst\u00e8mes Al\u00e9atoires","ror":"https://ror.org/00myn0z94","country_code":"FR","type":"facility","lineage":["https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I1326498283","https://openalex.org/I205703379","https://openalex.org/I2802204017","https://openalex.org/I2802519937","https://openalex.org/I28221208","https://openalex.org/I4210127572","https://openalex.org/I4210159245","https://openalex.org/I56067802"]},{"id":"https://openalex.org/I56067802","display_name":"Universit\u00e9 de Rennes","ror":"https://ror.org/015m7wh34","country_code":"FR","type":"education","lineage":["https://openalex.org/I56067802"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Olivier Barais","raw_affiliation_strings":["IRISA, Universit\u00e9 de Rennes, Rennes, France"],"affiliations":[{"raw_affiliation_string":"IRISA, Universit\u00e9 de Rennes, Rennes, France","institution_ids":["https://openalex.org/I56067802","https://openalex.org/I2802519937"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5069324527","display_name":"Jean\u2010Marc Jez\u00e9qu\u00e9l","orcid":"https://orcid.org/0000-0002-0582-9745"},"institutions":[{"id":"https://openalex.org/I2802519937","display_name":"Institut de Recherche en Informatique et Syst\u00e8mes Al\u00e9atoires","ror":"https://ror.org/00myn0z94","country_code":"FR","type":"facility","lineage":["https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I1326498283","https://openalex.org/I205703379","https://openalex.org/I2802204017","https://openalex.org/I2802519937","https://openalex.org/I28221208","https://openalex.org/I4210127572","https://openalex.org/I4210159245","https://openalex.org/I56067802"]},{"id":"https://openalex.org/I56067802","display_name":"Universit\u00e9 de Rennes","ror":"https://ror.org/015m7wh34","country_code":"FR","type":"education","lineage":["https://openalex.org/I56067802"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Jean-Marc J\u00e9z\u00e9quel","raw_affiliation_strings":["IRISA, Universit\u00e9 de Rennes, Rennes, France"],"affiliations":[{"raw_affiliation_string":"IRISA, Universit\u00e9 de Rennes, Rennes, France","institution_ids":["https://openalex.org/I56067802","https://openalex.org/I2802519937"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5018846823"],"corresponding_institution_ids":["https://openalex.org/I2802519937","https://openalex.org/I56067802"],"apc_list":null,"apc_paid":null,"fwci":3.3773,"has_fulltext":true,"cited_by_count":8,"citation_normalized_percentile":{"value":0.93504605,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"53","last_page":"60"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12601","display_name":"Web Applications and Data Management","score":0.9937999844551086,"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/T12601","display_name":"Web Applications and Data Management","score":0.9937999844551086,"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.9926999807357788,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9919999837875366,"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/computer-science","display_name":"Computer science","score":0.8903916478157043},{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.8442041873931885},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5907736420631409},{"id":"https://openalex.org/keywords/server","display_name":"Server","score":0.5734906196594238},{"id":"https://openalex.org/keywords/benchmark","display_name":"Benchmark (surveying)","score":0.5604069828987122},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5221177339553833},{"id":"https://openalex.org/keywords/scala","display_name":"Scala","score":0.4219246506690979},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.3489419221878052},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.3176767826080322}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8903916478157043},{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.8442041873931885},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5907736420631409},{"id":"https://openalex.org/C93996380","wikidata":"https://www.wikidata.org/wiki/Q44127","display_name":"Server","level":2,"score":0.5734906196594238},{"id":"https://openalex.org/C185798385","wikidata":"https://www.wikidata.org/wiki/Q1161707","display_name":"Benchmark (surveying)","level":2,"score":0.5604069828987122},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5221177339553833},{"id":"https://openalex.org/C109701466","wikidata":"https://www.wikidata.org/wiki/Q460584","display_name":"Scala","level":3,"score":0.4219246506690979},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3489419221878052},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.3176767826080322},{"id":"https://openalex.org/C13280743","wikidata":"https://www.wikidata.org/wiki/Q131089","display_name":"Geodesy","level":1,"score":0.0},{"id":"https://openalex.org/C205649164","wikidata":"https://www.wikidata.org/wiki/Q1071","display_name":"Geography","level":0,"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}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2517208.2517227","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2517208.2517227","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 12th international conference on Generative programming: concepts &amp; experiences","raw_type":"proceedings-article"},{"id":"pmh:oai:HAL:hal-00920786v1","is_oa":true,"landing_page_url":"https://inria.hal.science/hal-00920786","pdf_url":"https://inria.hal.science/hal-00920786/document","source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"Centre National de la Recherche Scientifique","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Generative Programming: Concepts and Experiences, GPCE'13, Oct 2013, Indianapolis, United States. pp.53-60, &#x27E8;10.1145/2517208.2517227&#x27E9;","raw_type":"Conference papers"}],"best_oa_location":{"id":"pmh:oai:HAL:hal-00920786v1","is_oa":true,"landing_page_url":"https://inria.hal.science/hal-00920786","pdf_url":"https://inria.hal.science/hal-00920786/document","source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"Centre National de la Recherche Scientifique","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Generative Programming: Concepts and Experiences, GPCE'13, Oct 2013, Indianapolis, United States. pp.53-60, &#x27E8;10.1145/2517208.2517227&#x27E9;","raw_type":"Conference papers"},"sustainable_development_goals":[{"display_name":"Quality Education","score":0.7799999713897705,"id":"https://metadata.un.org/sdg/4"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2127777749.pdf"},"referenced_works_count":24,"referenced_works":["https://openalex.org/W72484077","https://openalex.org/W1485665416","https://openalex.org/W1604620983","https://openalex.org/W1990347915","https://openalex.org/W1998943057","https://openalex.org/W2008070495","https://openalex.org/W2026049208","https://openalex.org/W2055947235","https://openalex.org/W2059349973","https://openalex.org/W2080165082","https://openalex.org/W2108417842","https://openalex.org/W2130179171","https://openalex.org/W2136327713","https://openalex.org/W2141221569","https://openalex.org/W2150874411","https://openalex.org/W2155028447","https://openalex.org/W2185470498","https://openalex.org/W2481685825","https://openalex.org/W2751615100","https://openalex.org/W2787875479","https://openalex.org/W3128917974","https://openalex.org/W4240260964","https://openalex.org/W6790897798","https://openalex.org/W7074650171"],"related_works":["https://openalex.org/W4248962295","https://openalex.org/W2911968761","https://openalex.org/W2890121425","https://openalex.org/W2204875185","https://openalex.org/W205696660","https://openalex.org/W2526343417","https://openalex.org/W4300665691","https://openalex.org/W4232952072","https://openalex.org/W3040669356","https://openalex.org/W4211064201"],"abstract_inverted_index":{"Writing":[0],"large":[1],"Web":[2,50],"applications":[3,51],"is":[4,19,47],"known":[5],"to":[6,29,36,42,78,89],"be":[7],"difficult.":[8],"One":[9],"challenge":[10,46],"comes":[11],"from":[12,39,80],"the":[13,16,43,58,74,94,125],"fact":[14],"that":[15,119,169],"application's":[17],"logic":[18],"scattered":[20],"into":[21],"heterogeneous":[22],"clients":[23,95],"and":[24,83,91,96,130,142],"servers,":[25],"making":[26,85],"it":[27,170],"difficult":[28],"share":[30],"code":[31,38,56,86,123,150],"between":[32],"both":[33,128],"sides":[34],"or":[35],"move":[37],"one":[40],"side":[41],"other.":[44],"Another":[45],"performance:":[48],"while":[49],"rely":[52],"on":[53,57,63,136,163],"ever":[54],"more":[55],"client-side,":[59],"they":[60],"may":[61],"run":[62],"smart":[64],"phones":[65],"with":[66,152],"limited":[67],"hardware":[68],"capabilities.":[69],"These":[70],"two":[71],"challenges":[72],"raise":[73],"following":[75],"problem:":[76],"how":[77],"benefit":[79],"high-level":[81,110],"languages":[82],"libraries":[84],"complexity":[87],"easier":[88],"manage":[90],"abstracting":[92],"over":[93],"servers":[97],"differences":[98],"without":[99],"trading":[100],"this":[101],"ease":[102],"of":[103,127,159],"engineering":[104],"for":[105],"performance?":[106],"This":[107],"article":[108],"presents":[109],"abstractions":[111],"defined":[112],"as":[113,172,174],"deep":[114],"embedded":[115],"DSLs":[116],"in":[117],"Scala":[118],"can":[120],"generate":[121],"efficient":[122],"leveraging":[124],"characteristics":[126],"client":[129],"server":[131],"environments.":[132],"We":[133],"compare":[134],"performance":[135],"client-side":[137],"against":[138,143],"other":[139],"candidate":[140],"technologies":[141],"hand":[144,175],"written":[145,151],"low-level":[146,177],"JavaScript":[147,178],"code.":[148,179],"Though":[149],"our":[153,161],"DSL":[154],"has":[155],"a":[156,164],"high":[157],"level":[158],"abstraction,":[160],"benchmark":[162],"real":[165],"world":[166],"application":[167],"reports":[168],"runs":[171],"fast":[173],"tuned":[176]},"counts_by_year":[{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":1},{"year":2016,"cited_by_count":3},{"year":2015,"cited_by_count":1}],"updated_date":"2026-03-11T14:59:36.786465","created_date":"2025-10-10T00:00:00"}
