{"id":"https://openalex.org/W2119816515","doi":"https://doi.org/10.1017/s095679680000157x","title":"Empirical and analytic study of stack versus heap cost for languages with closures","display_name":"Empirical and analytic study of stack versus heap cost for languages with closures","publication_year":1996,"publication_date":"1996-01-01","ids":{"openalex":"https://openalex.org/W2119816515","doi":"https://doi.org/10.1017/s095679680000157x","mag":"2119816515"},"language":"en","primary_location":{"id":"doi:10.1017/s095679680000157x","is_oa":true,"landing_page_url":"https://doi.org/10.1017/s095679680000157x","pdf_url":"https://www.cambridge.org/core/services/aop-cambridge-core/content/view/30303C7D7A9ACCC12AAA130855B7E6CF/S095679680000157Xa.pdf/div-class-title-empirical-and-analytic-study-of-stack-versus-heap-cost-for-languages-with-closures-div.pdf","source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://www.cambridge.org/core/services/aop-cambridge-core/content/view/30303C7D7A9ACCC12AAA130855B7E6CF/S095679680000157Xa.pdf/div-class-title-empirical-and-analytic-study-of-stack-versus-heap-cost-for-languages-with-closures-div.pdf","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5004766305","display_name":"Andrew W. Appel","orcid":"https://orcid.org/0000-0001-6009-0325"},"institutions":[{"id":"https://openalex.org/I20089843","display_name":"Princeton University","ror":"https://ror.org/00hx57361","country_code":"US","type":"education","lineage":["https://openalex.org/I20089843"]},{"id":"https://openalex.org/I29955533","display_name":"Center for Information Technology","ror":"https://ror.org/03jh5a977","country_code":"US","type":"facility","lineage":["https://openalex.org/I1299022934","https://openalex.org/I1299303238","https://openalex.org/I29955533"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Andrew W. Appel","raw_affiliation_strings":["Department of Computer Science, Princeton University, Princeton, NJ 08544-2087, USA","Center for Information Technology Policy (CITP)#TAB#"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, Princeton University, Princeton, NJ 08544-2087, USA","institution_ids":["https://openalex.org/I20089843"]},{"raw_affiliation_string":"Center for Information Technology Policy (CITP)#TAB#","institution_ids":["https://openalex.org/I29955533"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5070627140","display_name":"Zhong Shao","orcid":"https://orcid.org/0000-0001-8184-7649"},"institutions":[{"id":"https://openalex.org/I20089843","display_name":"Princeton University","ror":"https://ror.org/00hx57361","country_code":"US","type":"education","lineage":["https://openalex.org/I20089843"]},{"id":"https://openalex.org/I32971472","display_name":"Yale University","ror":"https://ror.org/03v76x132","country_code":"US","type":"education","lineage":["https://openalex.org/I32971472"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Zhong Shao","raw_affiliation_strings":["Department of Computer Science, Princeton University, Princeton, NJ 08544-2087, USA","Princeton University","Yale University"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, Princeton University, Princeton, NJ 08544-2087, USA","institution_ids":["https://openalex.org/I20089843"]},{"raw_affiliation_string":"Princeton University","institution_ids":["https://openalex.org/I20089843"]},{"raw_affiliation_string":"Yale University","institution_ids":["https://openalex.org/I32971472"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5004766305"],"corresponding_institution_ids":["https://openalex.org/I20089843","https://openalex.org/I29955533"],"apc_list":null,"apc_paid":null,"fwci":6.275,"has_fulltext":true,"cited_by_count":54,"citation_normalized_percentile":{"value":0.96613146,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":91,"max":97},"biblio":{"volume":"6","issue":"1","first_page":"47","last_page":"74"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T12808","display_name":"Ferroelectric and Negative Capacitance Devices","score":0.9965000152587891,"subfield":{"id":"https://openalex.org/subfields/2208","display_name":"Electrical and Electronic Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11181","display_name":"Advanced Data Storage Technologies","score":0.9957000017166138,"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/heap","display_name":"Heap (data structure)","score":0.927219033241272},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8722052574157715},{"id":"https://openalex.org/keywords/garbage-collection","display_name":"Garbage collection","score":0.6635907888412476},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4786064326763153},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.4778830111026764},{"id":"https://openalex.org/keywords/cache","display_name":"Cache","score":0.46601182222366333},{"id":"https://openalex.org/keywords/call-stack","display_name":"Call stack","score":0.4471462368965149},{"id":"https://openalex.org/keywords/garbage","display_name":"Garbage","score":0.4205433428287506},{"id":"https://openalex.org/keywords/stack","display_name":"Stack (abstract data type)","score":0.3739347755908966}],"concepts":[{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.927219033241272},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8722052574157715},{"id":"https://openalex.org/C105122174","wikidata":"https://www.wikidata.org/wiki/Q322202","display_name":"Garbage collection","level":3,"score":0.6635907888412476},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4786064326763153},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4778830111026764},{"id":"https://openalex.org/C115537543","wikidata":"https://www.wikidata.org/wiki/Q165596","display_name":"Cache","level":2,"score":0.46601182222366333},{"id":"https://openalex.org/C119024030","wikidata":"https://www.wikidata.org/wiki/Q759899","display_name":"Call stack","level":3,"score":0.4471462368965149},{"id":"https://openalex.org/C75403996","wikidata":"https://www.wikidata.org/wiki/Q5521979","display_name":"Garbage","level":2,"score":0.4205433428287506},{"id":"https://openalex.org/C9395851","wikidata":"https://www.wikidata.org/wiki/Q177929","display_name":"Stack (abstract data type)","level":2,"score":0.3739347755908966}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1017/s095679680000157x","is_oa":true,"landing_page_url":"https://doi.org/10.1017/s095679680000157x","pdf_url":"https://www.cambridge.org/core/services/aop-cambridge-core/content/view/30303C7D7A9ACCC12AAA130855B7E6CF/S095679680000157Xa.pdf/div-class-title-empirical-and-analytic-study-of-stack-versus-heap-cost-for-languages-with-closures-div.pdf","source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1017/s095679680000157x","is_oa":true,"landing_page_url":"https://doi.org/10.1017/s095679680000157x","pdf_url":"https://www.cambridge.org/core/services/aop-cambridge-core/content/view/30303C7D7A9ACCC12AAA130855B7E6CF/S095679680000157Xa.pdf/div-class-title-empirical-and-analytic-study-of-stack-versus-heap-cost-for-languages-with-closures-div.pdf","source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G4171771173","display_name":"Optimization of Space Usage","funder_award_id":"9200790","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2119816515.pdf","grobid_xml":"https://content.openalex.org/works/W2119816515.grobid-xml"},"referenced_works_count":38,"referenced_works":["https://openalex.org/W1534639370","https://openalex.org/W1571962375","https://openalex.org/W1580664042","https://openalex.org/W1584951182","https://openalex.org/W1966975259","https://openalex.org/W1968154493","https://openalex.org/W1969198146","https://openalex.org/W1972307439","https://openalex.org/W1979240050","https://openalex.org/W1992640206","https://openalex.org/W1996196278","https://openalex.org/W2020235248","https://openalex.org/W2026557621","https://openalex.org/W2036136174","https://openalex.org/W2046914864","https://openalex.org/W2047869411","https://openalex.org/W2051659702","https://openalex.org/W2057065238","https://openalex.org/W2061995249","https://openalex.org/W2083697466","https://openalex.org/W2085278038","https://openalex.org/W2094048149","https://openalex.org/W2114922959","https://openalex.org/W2126126443","https://openalex.org/W2131129592","https://openalex.org/W2132500556","https://openalex.org/W2133979298","https://openalex.org/W2141157907","https://openalex.org/W2154346069","https://openalex.org/W2158698777","https://openalex.org/W2159608022","https://openalex.org/W2161732792","https://openalex.org/W2163852930","https://openalex.org/W2164470257","https://openalex.org/W2169761811","https://openalex.org/W2912126004","https://openalex.org/W3145454088","https://openalex.org/W4244900167"],"related_works":["https://openalex.org/W1524351898","https://openalex.org/W2524496484","https://openalex.org/W2147299991","https://openalex.org/W1588734579","https://openalex.org/W2132258996","https://openalex.org/W2098868378","https://openalex.org/W2245694847","https://openalex.org/W1700460898","https://openalex.org/W4250131244","https://openalex.org/W4297378365"],"abstract_inverted_index":{"Abstract":[0],"We":[1],"present":[2],"a":[3,32,71],"comprehensive":[4],"analysis":[5],"of":[6,10,15,62,73,93,119,135],"all":[7,87],"the":[8,51,91,109,132],"components":[9],"creation,":[11],"access":[12],"and":[13,17,129,137,149],"disposal":[14],"heap-allocated":[16,113,138],"stack-allocated":[18,136],"activation":[19],"records.":[20],"Among":[21],"our":[22,40],"results":[23],"are:":[24],"\u2022Although":[25],"stack":[26],"frames":[27,64,114,139,144],"are":[28,145],"known":[29],"to":[30,56,126,147],"have":[31],"better":[33],"cache":[34,59],"read-miss":[35],"rate":[36,61],"than":[37],"heap":[38,63,143],"frames,":[39],"simple":[41],"analytical":[42],"model":[43],"(backed":[44],"up":[45],"by":[46,77,112],"simulation":[47],"results)":[48],"shows":[49],"that":[50,70],"difference":[52],"is":[53,65,115,140],"too":[54],"trivial":[55],"matter.":[57],"\u2022The":[58,104,117],"write-miss":[60],"very":[66,151],"high;":[67],"we":[68],"show":[69],"variety":[72],"miss-handling":[74],"strategies":[75],"(exemplified":[76],"specific":[78],"modern":[79,120],"machines)":[80],"can":[81],"give":[82],"good":[83],"performance,":[84],"but":[85,142],"not":[86],"can.":[88],"\u2022Stacks":[89],"restrict":[90],"flexibility":[92],"closure":[94],"representations":[95],"(for":[96],"higher-order":[97],"functions)":[98],"in":[99],"important":[100],"(and":[101],"costly)":[102],"ways.":[103],"extra":[105],"load":[106],"placed":[107],"on":[108],"garbage":[110],"collector":[111],"small.":[116],"demands":[118],"programming":[121],"languages":[122],"make":[123],"stacks":[124],"complicated":[125],"implement":[127,148],"efficiently":[128],"correctly.":[130],"Overall,":[131],"execution":[133],"cost":[134],"similar;":[141],"simpler":[146],"allow":[150],"efficient":[152],"first-class":[153],"continuations.":[154]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":3},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":2},{"year":2012,"cited_by_count":2}],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
