{"id":"https://openalex.org/W1936969208","doi":"https://doi.org/10.1109/esem.2015.7321196","title":"Don't Call Us, We'll Call You: Characterizing Callbacks in Javascript","display_name":"Don't Call Us, We'll Call You: Characterizing Callbacks in Javascript","publication_year":2015,"publication_date":"2015-10-01","ids":{"openalex":"https://openalex.org/W1936969208","doi":"https://doi.org/10.1109/esem.2015.7321196","mag":"1936969208"},"language":"en","primary_location":{"id":"doi:10.1109/esem.2015.7321196","is_oa":false,"landing_page_url":"https://doi.org/10.1109/esem.2015.7321196","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2015 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://zenodo.org/record/3586025","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5084188497","display_name":"Keheliya Gallaba","orcid":"https://orcid.org/0000-0002-5880-5114"},"institutions":[{"id":"https://openalex.org/I141945490","display_name":"University of British Columbia","ror":"https://ror.org/03rmrcq20","country_code":"CA","type":"education","lineage":["https://openalex.org/I141945490"]}],"countries":["CA"],"is_corresponding":true,"raw_author_name":"Keheliya Gallaba","raw_affiliation_strings":["University of British Columbia, Vancouver, BC, Canada","Univ of British Columbia, Vancouver, BC, Canada"],"affiliations":[{"raw_affiliation_string":"University of British Columbia, Vancouver, BC, Canada","institution_ids":["https://openalex.org/I141945490"]},{"raw_affiliation_string":"Univ of British Columbia, Vancouver, BC, Canada","institution_ids":["https://openalex.org/I141945490"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5023086966","display_name":"Ali Mesbah","orcid":"https://orcid.org/0000-0002-8783-7967"},"institutions":[{"id":"https://openalex.org/I141945490","display_name":"University of British Columbia","ror":"https://ror.org/03rmrcq20","country_code":"CA","type":"education","lineage":["https://openalex.org/I141945490"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Ali Mesbah","raw_affiliation_strings":["University of British Columbia, Vancouver, BC, Canada","Univ of British Columbia, Vancouver, BC, Canada"],"affiliations":[{"raw_affiliation_string":"University of British Columbia, Vancouver, BC, Canada","institution_ids":["https://openalex.org/I141945490"]},{"raw_affiliation_string":"Univ of British Columbia, Vancouver, BC, Canada","institution_ids":["https://openalex.org/I141945490"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5064061802","display_name":"Ivan Beschastnikh","orcid":"https://orcid.org/0000-0003-1676-8834"},"institutions":[{"id":"https://openalex.org/I141945490","display_name":"University of British Columbia","ror":"https://ror.org/03rmrcq20","country_code":"CA","type":"education","lineage":["https://openalex.org/I141945490"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Ivan Beschastnikh","raw_affiliation_strings":["University of British Columbia, Vancouver, BC, Canada","Univ of British Columbia, Vancouver, BC, Canada"],"affiliations":[{"raw_affiliation_string":"University of British Columbia, Vancouver, BC, Canada","institution_ids":["https://openalex.org/I141945490"]},{"raw_affiliation_string":"Univ of British Columbia, Vancouver, BC, Canada","institution_ids":["https://openalex.org/I141945490"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5084188497"],"corresponding_institution_ids":["https://openalex.org/I141945490"],"apc_list":null,"apc_paid":null,"fwci":10.7184,"has_fulltext":false,"cited_by_count":41,"citation_normalized_percentile":{"value":0.98224262,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":99},"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/T11424","display_name":"Security and Verification in Computing","score":0.9993000030517578,"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/T11424","display_name":"Security and Verification in Computing","score":0.9993000030517578,"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/T12479","display_name":"Web Application Security Vulnerabilities","score":0.9990000128746033,"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/T10260","display_name":"Software Engineering Research","score":0.9983999729156494,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/callback","display_name":"Callback","score":0.985818088054657},{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.8373312950134277},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8286657333374023},{"id":"https://openalex.org/keywords/unobtrusive-javascript","display_name":"Unobtrusive JavaScript","score":0.6744327545166016},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.46702268719673157},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.4062950313091278},{"id":"https://openalex.org/keywords/rich-internet-application","display_name":"Rich Internet application","score":0.23807868361473083}],"concepts":[{"id":"https://openalex.org/C204495577","wikidata":"https://www.wikidata.org/wiki/Q1205349","display_name":"Callback","level":2,"score":0.985818088054657},{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.8373312950134277},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8286657333374023},{"id":"https://openalex.org/C198240166","wikidata":"https://www.wikidata.org/wiki/Q2298909","display_name":"Unobtrusive JavaScript","level":4,"score":0.6744327545166016},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.46702268719673157},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.4062950313091278},{"id":"https://openalex.org/C103048170","wikidata":"https://www.wikidata.org/wiki/Q725485","display_name":"Rich Internet application","level":3,"score":0.23807868361473083}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1109/esem.2015.7321196","is_oa":false,"landing_page_url":"https://doi.org/10.1109/esem.2015.7321196","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2015 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)","raw_type":"proceedings-article"},{"id":"pmh:oai:zenodo.org:3586025","is_oa":true,"landing_page_url":"https://zenodo.org/record/3586025","pdf_url":null,"source":{"id":"https://openalex.org/S4306400562","display_name":"Zenodo (CERN European Organization for Nuclear Research)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I67311998","host_organization_name":"European Organization for Nuclear Research","host_organization_lineage":["https://openalex.org/I67311998"],"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":"","raw_type":"info:eu-repo/semantics/conferencePaper"}],"best_oa_location":{"id":"pmh:oai:zenodo.org:3586025","is_oa":true,"landing_page_url":"https://zenodo.org/record/3586025","pdf_url":null,"source":{"id":"https://openalex.org/S4306400562","display_name":"Zenodo (CERN European Organization for Nuclear Research)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I67311998","host_organization_name":"European Organization for Nuclear Research","host_organization_lineage":["https://openalex.org/I67311998"],"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":"","raw_type":"info:eu-repo/semantics/conferencePaper"},"sustainable_development_goals":[{"display_name":"Partnerships for the goals","id":"https://metadata.un.org/sdg/17","score":0.46000000834465027}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":28,"referenced_works":["https://openalex.org/W1577719850","https://openalex.org/W1964318686","https://openalex.org/W1982725024","https://openalex.org/W1998180710","https://openalex.org/W1999753800","https://openalex.org/W2001730388","https://openalex.org/W2007425631","https://openalex.org/W2030904501","https://openalex.org/W2033890725","https://openalex.org/W2045100674","https://openalex.org/W2056659466","https://openalex.org/W2090907135","https://openalex.org/W2101678831","https://openalex.org/W2103901857","https://openalex.org/W2107219179","https://openalex.org/W2128457714","https://openalex.org/W2129596343","https://openalex.org/W2156370972","https://openalex.org/W2164373874","https://openalex.org/W2166150184","https://openalex.org/W2171267342","https://openalex.org/W2341035153","https://openalex.org/W4237840017","https://openalex.org/W4253360640","https://openalex.org/W6634520927","https://openalex.org/W6646022491","https://openalex.org/W6684196046","https://openalex.org/W6703977324"],"related_works":["https://openalex.org/W650647575","https://openalex.org/W2472584751","https://openalex.org/W2476571673","https://openalex.org/W597036300","https://openalex.org/W2737171366","https://openalex.org/W4206210324","https://openalex.org/W2615381372","https://openalex.org/W2488213809","https://openalex.org/W2063692999","https://openalex.org/W4284698742"],"abstract_inverted_index":{"JavaScript":[0,21,74,83,91,178],"is":[1,10,23],"a":[2,29,36,78,103],"popular":[3],"language":[4,31],"for":[5,13],"developing":[6],"web":[7],"applications":[8],"and":[9,16,26,40,49,65,106,132,169,180],"increasingly":[11],"used":[12],"both":[14],"client-side":[15,141],"server-side":[17,145],"application":[18],"logic.":[19],"The":[20],"runtime":[22],"inherently":[24],"event-driven":[25],"callbacks":[27,34,61,121,129],"are":[28,115,122,130],"key":[30],"feature.":[32],"Unfortunately,":[33],"induce":[35],"non-linear":[37],"control":[38],"flow":[39],"can":[41],"be":[42,51],"deferred":[43],"to":[44,53,63,72,154],"execute":[45],"asynchronously,":[46],"declared":[47],"anonymously,":[48],"may":[50],"nested":[52],"arbitrary":[54],"levels.":[55],"All":[56],"of":[57,81,90,110,120,127,176],"these":[58],"features":[59],"make":[60],"difficult":[62],"understand":[64],"maintain.":[66],"We":[67,93,147],"perform":[68],"an":[69],"empirical":[70],"study":[71,149],"characterize":[73],"callback":[75,104,165],"usage":[76],"across":[77],"representative":[79],"corpus":[80],"138":[82],"programs,":[84],"with":[85,156,160],"over":[86,108],"5":[87],"million":[88],"lines":[89],"code.":[92],"find":[94],"that":[95,107],"on":[96,135],"average,":[97,136],"every":[98],"10th":[99],"function":[100,113],"definition":[101],"takes":[102],"argument,":[105],"43%":[109],"all":[111,128],"callback-accepting":[112],"callsites":[114],"anonymous.":[116],"Furthermore,":[117],"the":[118,157,163,174],"majority":[119],"nested,":[123],"more":[124,138],"than":[125,144],"half":[126],"asynchronous,":[131],"asynchronous":[133],"callbacks,":[134,161],"appear":[137],"frequently":[139],"in":[140],"code":[142,181],"(72%)":[143],"(55%).":[146],"also":[148],"three":[150],"well-known":[151],"solutions":[152],"designed":[153],"help":[155],"complexities":[158],"associated":[159],"including":[162],"error-first":[164],"convention,":[166],"Async.js":[167],"library,":[168],"Promises.":[170],"Our":[171],"results":[172],"inform":[173],"design":[175],"future":[177],"analysis":[179],"comprehension":[182],"tools.":[183]},"counts_by_year":[{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":4},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":6},{"year":2018,"cited_by_count":5},{"year":2017,"cited_by_count":10},{"year":2016,"cited_by_count":9}],"updated_date":"2026-03-25T14:56:36.534964","created_date":"2025-10-10T00:00:00"}
