Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
156 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
45 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Towards Algorithmic Typing for DOT (1708.05437v3)

Published 17 Aug 2017 in cs.PL

Abstract: The Dependent Object Types (DOT) calculus formalizes key features of Scala. The D${<: }$ calculus is the core of DOT. To date, presentations of D${<: }$ have used declarative typing and subtyping rules, as opposed to algorithmic. Unfortunately, algorithmic typing for full D${<: }$ is known to be an undecidable problem. We explore the design space for a restricted version of D${<: }$ that has decidable typechecking. Even in this simplified D${<: }$ , algorithmic typing and subtyping are tricky, due to the "bad bounds" problem. The Scala compiler bypasses bad bounds at the cost of a loss in expressiveness in its type system. Based on the approach taken in the Scala compiler, we present the Step Typing and Step Subtyping relations for D${<: }$. We prove these relations sound and decidable. They are not complete with respect to the original D$_{<: }$ rules.

Citations (2)

Summary

We haven't generated a summary for this paper yet.