Matches in SemOpenAlex for { <https://semopenalex.org/work/W2183621552> ?p ?o ?g. }
Showing items 1 to 64 of
64
with 100 items per page.
- W2183621552 endingPage "94" @default.
- W2183621552 startingPage "68" @default.
- W2183621552 abstract "Typed Clojure is an optional type system for Clojure, a dynamic language in the Lisp family that targets the JVM. Typed Clojure enables Clojure programmers to gain greater confidence in the correctness of their code via static type checking while remaining in the Clojure world, and has acquired significant adoption in the Clojure community. Typed Clojure repurposes Typed Racket’s occurrence typing, an approach to statically reasoning about predicate tests, and also includes several new type system features to handle existing Clojure idioms. In this paper, we describe Typed Clojure and present these type system extensions, focusing on three features widely used in Clojure. First, multimethods provide extensible operations, and their Clojure semantics turns out to have a surprising synergy with the underlying occurrence typing framework. Second, Java interoperability is central to Clojure’s mission but introduces challenges such as ubiquitous null; Typed Clojure handles Java interoperability while ensuring the absence of null-pointer exceptions in typed programs. Third, Clojure programmers idiomatically use immutable dictionaries for data structures; Typed Clojure handles this with multiple forms of heterogeneous dictionary types. We provide a formal model of the Typed Clojure type system incorporating these and other features, with a proof of soundness. Additionally, Typed Clojure is now in use by numerous corporations and developers working with Clojure, and we present a quantitative analysis on the use of type system features in two substantial code bases." @default.
- W2183621552 created "2016-06-24" @default.
- W2183621552 creator A5006837592 @default.
- W2183621552 creator A5043677781 @default.
- W2183621552 creator A5056295640 @default.
- W2183621552 date "2016-01-01" @default.
- W2183621552 modified "2023-10-17" @default.
- W2183621552 title "Practical Optional Types for Clojure" @default.
- W2183621552 cites W1778142413 @default.
- W2183621552 cites W1973186567 @default.
- W2183621552 cites W2004403526 @default.
- W2183621552 cites W2022300126 @default.
- W2183621552 cites W2046137117 @default.
- W2183621552 cites W2061808084 @default.
- W2183621552 cites W2070310827 @default.
- W2183621552 cites W2096368963 @default.
- W2183621552 cites W2110549939 @default.
- W2183621552 cites W2115072441 @default.
- W2183621552 cites W2149469095 @default.
- W2183621552 cites W2149587963 @default.
- W2183621552 cites W4229717394 @default.
- W2183621552 doi "https://doi.org/10.1007/978-3-662-49498-1_4" @default.
- W2183621552 hasPublicationYear "2016" @default.
- W2183621552 type Work @default.
- W2183621552 sameAs 2183621552 @default.
- W2183621552 citedByCount "17" @default.
- W2183621552 countsByYear W21836215522017 @default.
- W2183621552 countsByYear W21836215522018 @default.
- W2183621552 countsByYear W21836215522019 @default.
- W2183621552 countsByYear W21836215522020 @default.
- W2183621552 countsByYear W21836215522021 @default.
- W2183621552 countsByYear W21836215522022 @default.
- W2183621552 countsByYear W21836215522023 @default.
- W2183621552 crossrefType "book-chapter" @default.
- W2183621552 hasAuthorship W2183621552A5006837592 @default.
- W2183621552 hasAuthorship W2183621552A5043677781 @default.
- W2183621552 hasAuthorship W2183621552A5056295640 @default.
- W2183621552 hasBestOaLocation W21836215522 @default.
- W2183621552 hasConcept C190883126 @default.
- W2183621552 hasConcept C199360897 @default.
- W2183621552 hasConcept C41008148 @default.
- W2183621552 hasConceptScore W2183621552C190883126 @default.
- W2183621552 hasConceptScore W2183621552C199360897 @default.
- W2183621552 hasConceptScore W2183621552C41008148 @default.
- W2183621552 hasLocation W21836215521 @default.
- W2183621552 hasLocation W21836215522 @default.
- W2183621552 hasOpenAccess W2183621552 @default.
- W2183621552 hasPrimaryLocation W21836215521 @default.
- W2183621552 hasRelatedWork W1548358088 @default.
- W2183621552 hasRelatedWork W1978806596 @default.
- W2183621552 hasRelatedWork W2028766178 @default.
- W2183621552 hasRelatedWork W2094815455 @default.
- W2183621552 hasRelatedWork W2112962394 @default.
- W2183621552 hasRelatedWork W2171153670 @default.
- W2183621552 hasRelatedWork W2341116552 @default.
- W2183621552 hasRelatedWork W2353200194 @default.
- W2183621552 hasRelatedWork W2607262752 @default.
- W2183621552 hasRelatedWork W2082680693 @default.
- W2183621552 isParatext "false" @default.
- W2183621552 isRetracted "false" @default.
- W2183621552 magId "2183621552" @default.
- W2183621552 workType "book-chapter" @default.