{"id":"https://openalex.org/W210865015","doi":null,"title":"Nested Refinement Types for JavaScript","display_name":"Nested Refinement Types for JavaScript","publication_year":2013,"publication_date":"2013-01-01","ids":{"openalex":"https://openalex.org/W210865015","mag":"210865015"},"language":"en","primary_location":{"id":"pmh:oai:escholarship.org/ark:/13030/qt47h935cr","doi":null,"is_oa":true,"landing_page_url":"https://escholarship.org/uc/item/47h935cr","pdf_url":"https://escholarship.org/uc/item/47h935cr","source":{"id":"https://openalex.org/S4306400115","display_name":"eScholarship (California Digital Library)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I2801248553","host_organization_name":"California Digital Library","host_organization_lineage":["https://openalex.org/I2801248553"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"etd"},"volume":null,"type":"dissertation","is_traditional":true,"indexed_in":[],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://escholarship.org/uc/item/47h935cr","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5004759757","display_name":"Ravi Chugh","orcid":"https://orcid.org/0000-0002-1339-2889","observed_orcids":["https://orcid.org/0000-0002-1339-2889"]},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Ravi Chugh","raw_affiliation_strings":[],"raw_orcid":"https://orcid.org/0000-0002-1339-2889","affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":["https://openalex.org/A5004759757"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":true,"cited_by_count":1,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"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/T10126","display_name":"Logic, programming, and type systems","score":1.0,"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"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":1.0,"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/T10142","display_name":"Formal Methods in Verification","score":0.0,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.0,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/refinement-types","display_name":"refinement types","score":0.8889999985694885},{"id":"https://openalex.org/keywords/dynamic-programming-languages","display_name":"dynamic languages","score":0.7310000061988831},{"id":"https://openalex.org/keywords/type-checking","display_name":"type checking","score":0.6579999923706055},{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.32100000977516174}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8353040218353271},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8310681581497192},{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.5996898412704468},{"id":"https://openalex.org/C198370458","wikidata":"https://www.wikidata.org/wiki/Q586459","display_name":"Type inference","level":3,"score":0.5451918244361877},{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.4852325916290283},{"id":"https://openalex.org/C138958017","wikidata":"https://www.wikidata.org/wiki/Q190087","display_name":"Data type","level":2,"score":0.4574654698371887},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3485609292984009},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.22864457964897156},{"id":"https://openalex.org/C2776214188","wikidata":"https://www.wikidata.org/wiki/Q408386","display_name":"Inference","level":2,"score":0.15798309445381165}],"mesh":[],"locations_count":4,"locations":[{"id":"pmh:oai:escholarship.org/ark:/13030/qt47h935cr","doi":null,"is_oa":true,"landing_page_url":"https://escholarship.org/uc/item/47h935cr","pdf_url":"https://escholarship.org/uc/item/47h935cr","source":{"id":"https://openalex.org/S4306400115","display_name":"eScholarship (California Digital Library)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I2801248553","host_organization_name":"California Digital Library","host_organization_lineage":["https://openalex.org/I2801248553"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"etd"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.454.7321","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.454.7321","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://goto.ucsd.edu/~rjhala/dissertations/ravi_chugh.pdf","raw_type":"text"},{"id":"pmh:qt47h935cr","doi":null,"is_oa":false,"landing_page_url":"http://www.escholarship.org/uc/item/47h935cr","pdf_url":null,"source":{"id":"https://openalex.org/S4306400115","display_name":"eScholarship (California Digital Library)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I2801248553","host_organization_name":"California Digital Library","host_organization_lineage":["https://openalex.org/I2801248553"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Chugh, Ravi. (2013). Nested Refinement Types for JavaScript. UC San Diego: Computer science. Retrieved from: http://www.escholarship.org/uc/item/47h935cr","raw_type":"dissertation"},{"id":"mag:210865015","doi":null,"is_oa":false,"landing_page_url":"https://escholarship.org/content/qt47h935cr/qt47h935cr.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":{"id":"pmh:oai:escholarship.org/ark:/13030/qt47h935cr","doi":null,"is_oa":true,"landing_page_url":"https://escholarship.org/uc/item/47h935cr","pdf_url":"https://escholarship.org/uc/item/47h935cr","source":{"id":"https://openalex.org/S4306400115","display_name":"eScholarship (California Digital Library)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I2801248553","host_organization_name":"California Digital Library","host_organization_lineage":["https://openalex.org/I2801248553"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"etd"},"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W210865015.pdf","grobid_xml":"https://content.openalex.org/works/W210865015.grobid-xml"},"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W2950340338","https://openalex.org/W2767370631","https://openalex.org/W7097564457","https://openalex.org/W1575949168","https://openalex.org/W1675514321","https://openalex.org/W2340618214","https://openalex.org/W7071781464","https://openalex.org/W2132003527","https://openalex.org/W3099122394","https://openalex.org/W107529770"],"abstract_inverted_index":{"Decades":[0],"of":[1,13,24,42,66,71,75,86,114,221,229,235,253,286],"research":[2],"on":[3,123,283],"type":[4,46,68,148,243,274],"systems":[5,149],"have":[6],"led":[7],"to":[8,89,134,142,180,211,225,248,259],"advances":[9],"in":[10,34,145,157,174,178],"the":[11,22,31,64,72,84,115,167,175,227,233,251],"kinds":[12,23],"programming":[14,32],"features":[15,43,88],"that":[16,26,61,150,185],"can":[17,27],"be":[18,28],"reasoned":[19],"about":[20,96,154,206,250],"and":[21,57,79,279],"errors":[25],"prevented.":[29],"Nevertheless,":[30],"idioms":[33],"untyped,":[35],"or":[36],"dynamic,":[37],"languages":[38,76,98],"make":[39,139],"heavy":[40],"use":[41],"---":[44,60],"run-time":[45],"tests,":[47],"mutable":[48,236],"objects":[49,187],"indexed":[50],"by":[51],"dynamically":[52,189],"computed":[53,190],"keys,":[54],"prototype":[55],"inheritance,":[56,255],"higher-order":[58],"functions":[59],"are":[62,99],"beyond":[63],"reach":[65],"prior":[67,146],"systems.":[69],"Because":[70],"rising":[73],"popularity":[74],"like":[77],"JavaScript":[78,278,290],"Python,":[80],"as":[81,83],"well":[82],"addition":[85],"dynamic":[87,118,158],"statically":[90,111],"typed":[91,112],"languages,":[92],"techniques":[93,269],"for":[94,183,276],"reasoning":[95,153,205],"untyped":[97],"potentially":[100],"very":[101],"valuable.":[102],"In":[103],"this":[104],"dissertation,":[105],"we":[106,161,217,239,271],"present":[107,162,218,240],"Dependent":[108,277],"JavaScript,":[109],"a":[110,172,212,219,241,260,273,284],"dialect":[113],"imperative,":[116],"object-oriented,":[117],"language.":[119],"Our":[120],"system":[121],"builds":[122],"refinement":[124,147,164,176,202,214,223,230,242,262],"types,":[125,165],"which":[126],"augment":[127],"traditional":[128],"syntactic":[129,199],"types":[130,182,224,231],"with":[131,188,198],"logical":[132,196],"predicates":[133],"enable":[135],"finer-grained":[136],"reasoning.":[137],"We":[138],"several":[140,294],"contributions":[141],"overcome":[143],"limitations":[144],"prevent":[151],"precise":[152],"idiomatic":[155],"code":[156],"languages.":[159],"First,":[160],"nested":[163,201],"where":[166],"typing":[168],"relation":[169],"is":[170],"itself":[171],"predicate":[173],"logic":[177],"order":[179],"specify":[181],"programs":[184,208],"manipulate":[186],"keys.":[191],"By":[192],"carefully":[193],"coordinating":[194],"SMT-based":[195],"implication":[197],"techniques,":[200],"subtyping":[203],"enables":[204],"such":[207],"without":[209,257],"resorting":[210,258],"complex":[213,261],"logic.":[215,263],"Second,":[216],"formulation":[220],"flow-sensitive":[222],"retain":[226],"precision":[228],"despite":[232],"presence":[234],"variables.":[237],"Finally,":[238],"encoding":[244],"called":[245],"heap":[246],"unrolling":[247],"reason":[249],"semantics":[252],"prototype-based":[254],"again,":[256],"To":[264],"demonstrate":[265],"how":[266],"these":[267],"novel":[268],"combine,":[270],"implement":[272],"checker":[275],"evaluate":[280],"its":[281],"expressiveness":[282],"set":[285],"small,":[287],"but":[288],"challenging,":[289],"examples":[291],"adapted":[292],"from":[293],"benchmarks":[295]},"counts_by_year":[{"year":2016,"cited_by_count":1}],"updated_date":"2026-08-30T07:30:35.949966","created_date":"2016-06-24T00:00:00"}
