{"id":"https://openalex.org/W46412898","doi":"https://doi.org/10.5555/1855795.1855801","title":"Towards practical incremental recomputation for scientists: an implementation for the Python language","display_name":"Towards practical incremental recomputation for scientists: an implementation for the Python language","publication_year":2010,"publication_date":"2010-02-22","ids":{"openalex":"https://openalex.org/W46412898","doi":"https://doi.org/10.5555/1855795.1855801","mag":"46412898"},"language":"en","primary_location":{"id":"pmh:oai:CiteSeerX.psu:10.1.1.180.5760","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.180.5760","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.usenix.org/events/tapp10/tech/full_papers/guo.pdf","raw_type":"text"},"volume":null,"type":"article","indexed_in":[],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5060695800","display_name":"Philip J. Guo","orcid":"https://orcid.org/0000-0002-4579-5754","observed_orcids":["https://orcid.org/0000-0002-4579-5754"]},"institutions":[{"id":"https://openalex.org/I97018004","display_name":"Stanford University","ror":"https://ror.org/00f54p054","country_code":"US","type":"education","lineage":["https://openalex.org/I97018004"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Philip J. Guo","raw_affiliation_strings":["Stanford University"],"raw_orcid":"https://orcid.org/0000-0002-4579-5754","affiliations":[{"raw_affiliation_string":"Stanford University","institution_ids":["https://openalex.org/I97018004"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5111537551","display_name":"Dawson Engler","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I97018004","display_name":"Stanford University","ror":"https://ror.org/00f54p054","country_code":"US","type":"education","lineage":["https://openalex.org/I97018004"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Dawson Engler","raw_affiliation_strings":["Stanford University"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Stanford University","institution_ids":["https://openalex.org/I97018004"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I97018004"],"apc_list":null,"apc_paid":null,"fwci":4.9694,"has_fulltext":false,"cited_by_count":21,"citation_normalized_percentile":{"value":0.94756704,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"6","last_page":"6"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11986","display_name":"Scientific Computing and Data Management","score":0.47749999165534973,"subfield":{"id":"https://openalex.org/subfields/1802","display_name":"Information Systems and Management"},"field":{"id":"https://openalex.org/fields/18","display_name":"Decision Sciences"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}},"topics":[{"id":"https://openalex.org/T11986","display_name":"Scientific Computing and Data Management","score":0.47749999165534973,"subfield":{"id":"https://openalex.org/subfields/1802","display_name":"Information Systems and Management"},"field":{"id":"https://openalex.org/fields/18","display_name":"Decision Sciences"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.23989999294281006,"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/T10126","display_name":"Logic, programming, and type systems","score":0.16519999504089355,"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/memoization","display_name":"memoization","score":0.7139999866485596},{"id":"https://openalex.org/keywords/python-interpreter","display_name":"Python interpreter","score":0.7559999823570251},{"id":"https://openalex.org/keywords/scientific-computing","display_name":"scientific computing","score":0.3499999940395355},{"id":"https://openalex.org/keywords/data-analysis-scripts","display_name":"analysis scripts","score":0.7770000100135803},{"id":"https://openalex.org/keywords/dependency-management","display_name":"dependency management","score":0.5730000138282776},{"id":"https://openalex.org/keywords/execution-speedup","display_name":"execution speedup","score":0.46000000834465027}],"concepts":[{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.8887181282043457},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8729211091995239},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.840879499912262},{"id":"https://openalex.org/C61423126","wikidata":"https://www.wikidata.org/wiki/Q187432","display_name":"Scripting language","level":2,"score":0.8192754983901978},{"id":"https://openalex.org/C122783720","wikidata":"https://www.wikidata.org/wiki/Q183065","display_name":"Interpreter","level":2,"score":0.8094810247421265},{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.6577110290527344},{"id":"https://openalex.org/C92966194","wikidata":"https://www.wikidata.org/wiki/Q651794","display_name":"Compiled language","level":4,"score":0.5908861756324768},{"id":"https://openalex.org/C19024347","wikidata":"https://www.wikidata.org/wiki/Q211496","display_name":"High-level programming language","level":3,"score":0.2646867632865906},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.19645258784294128},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.18300342559814453}],"mesh":[],"locations_count":2,"locations":[{"id":"pmh:oai:CiteSeerX.psu:10.1.1.180.5760","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.180.5760","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.usenix.org/events/tapp10/tech/full_papers/guo.pdf","raw_type":"text"},{"id":"mag:46412898","doi":"https://doi.org/10.5555/1855795.1855801","is_oa":false,"landing_page_url":"https://www.usenix.org/legacy/event/tapp10/tech/full_papers/guo.pdf","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null}],"best_oa_location":null,"sustainable_development_goals":[],"sustainable_development_goals_aurora":[{"id":"https://metadata.un.org/sdg/4","display_name":"Quality education","score":0.41999998688697815}],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":13,"referenced_works":["https://openalex.org/W1500987966","https://openalex.org/W1559528097","https://openalex.org/W1814568923","https://openalex.org/W2036830099","https://openalex.org/W2074842205","https://openalex.org/W2098935637","https://openalex.org/W2099794055","https://openalex.org/W2129167530","https://openalex.org/W2144593768","https://openalex.org/W2172143128","https://openalex.org/W2172288767","https://openalex.org/W2173213060","https://openalex.org/W2243368861"],"related_works":["https://openalex.org/W7126784601","https://openalex.org/W4403120220","https://openalex.org/W1991379877","https://openalex.org/W7096309547","https://openalex.org/W2206208003","https://openalex.org/W6903508715","https://openalex.org/W7095878460","https://openalex.org/W2981707812","https://openalex.org/W2786915441","https://openalex.org/W7100258077"],"abstract_inverted_index":{"Computational":[0],"scientists":[1,115],"often":[2],"prototype":[3],"data":[4],"analysis":[5],"scripts":[6,21],"using":[7],"high-level":[8],"languages":[9,136],"like":[10],"Python.":[11],"To":[12,45],"speed":[13,104],"up":[14,105],"execution":[15],"times,":[16],"they":[17],"manually":[18],"refactor":[19],"their":[20],"into":[22],"stages":[23],"(separate":[24],"functions)":[25],"and":[26,71,74,119],"write":[27,117],"extra":[28],"code":[29,69,121],"to":[30,34,38,54,64,86,131],"save":[31],"intermediate":[32],"results":[33,59,77],"disk":[35],"in":[36,42],"order":[37],"avoid":[39],"recomputing":[40],"them":[41],"subsequent":[43,101],"runs.":[44],"eliminate":[46],"this":[47],"burden,":[48],"we":[49],"enhanced":[50,113],"the":[51,58,97],"Python":[52],"interpreter":[53],"automatically":[55],"memoize":[56],"(save)":[57],"of":[60,109],"long-running":[61],"function":[62],"executions":[63],"disk,":[65],"manage":[66],"dependencies":[67],"between":[68],"edits":[70],"saved":[72],"results,":[73],"re-use":[75],"memoized":[76],"rather":[78],"than":[79],"re-executing":[80],"those":[81],"functions":[82],"when":[83],"guaranteed":[84],"safe":[85],"do":[87],"so.":[88],"There":[89],"is":[90],"a":[91],"\u223c20":[92],"%":[93],"run-time":[94],"slowdown":[95],"during":[96],"initial":[98],"run,":[99],"but":[100],"runs":[102,124],"can":[103,116],"by":[106],"several":[107],"orders":[108],"magnitude.":[110],"Using":[111],"our":[112],"interpreter,":[114],"simple":[118],"maintainable":[120],"that":[122],"also":[123],"fast":[125],"after":[126],"minor":[127],"edits,":[128],"without":[129],"having":[130],"learn":[132],"any":[133],"new":[134],"programming":[135],"or":[137],"constructs.":[138],"1":[139]},"counts_by_year":[{"year":2023,"cited_by_count":1},{"year":2021,"cited_by_count":2},{"year":2019,"cited_by_count":2},{"year":2018,"cited_by_count":2},{"year":2017,"cited_by_count":1},{"year":2016,"cited_by_count":1},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":2},{"year":2013,"cited_by_count":1},{"year":2012,"cited_by_count":2}],"updated_date":"2026-10-16T09:59:22.235173","created_date":"2016-06-24T00:00:00"}
