Undoing Dynamic Typing (Declarative Pearl)
نویسنده
چکیده
We propose undoable versions of the projection operations used when programs written in higher-order statically-typed languages interoperate with dynamically typed ones, localizing potential runtime errors to the point at which a dynamic value is projected to a static type. The idea is demonstrated by using control operators to implement backtracking projections from an untyped Scheme-like language to ML.
منابع مشابه
EDD: A Declarative Debugger for Sequential Erlang Programs
Declarative debuggers are semi-automatic debugging tools that abstract the execution details to focus on the program semantics. This paper presents a tool implementing this approach for the sequential subset of Erlang, a functional language with dynamic typing and strict evaluation. Given an erroneous computation, it first detects an erroneous function (either a “named” function or a lambda-abs...
متن کاملPopulation dynamic of pearl oyster pinctada radiata in 2 habitats of Lavan Island, Persian Gulf
As pearling has been banned since 2006 in Persian Gulf, growth and mortality rate of Mohar pearl oyster in its old habitats was surveyed in present research. For early survey and identification of habitats of Mohar pearl oyster Pinctada radiata, primary sea tours in coastal waters of Lavan Island, were done. Two habitats were identified and sampled seasonally from autumn 2011 to summer 2012, to...
متن کاملComponent Assemblies and Component Runtimes
We propose a component programming language that supports an integrated notion of both compile-time and runtime component. The centerpiece of this paper is the static, compile time notion of assembly, complementing our previous work on the dynamic, runtime notion of cell. An assembly is a declarative, stateless piece of code that facilitates code combination. It offers explicit typed interfaces...
متن کاملTotal-Single-Pushout Derivations for Internal Graph Attribution
We present a simple, abstract approach that allows to integrate graph attribution into the graph structure itself. We use a declarative setting where the calculation of the attributions relies on single-pushout derivations in a category of total homomorphisms. We discuss applications to term graph typing, including multi-level typing and type classes, and visualisation of compilation.
متن کاملSound and Complete Bidirectional Typechecking for Higher-Rank Polymorphism with Existentials and Indexed Types
Bidirectional typechecking, in which terms either synthesize a type or are checked against a known type, has become popular for its scalability, its error reporting, and its ease of implementation. Following principles from proof theory, bidirectional typing can be applied to many type constructs. The principles underlying a bidirectional approach to indexed types (generalized algebraic datatyp...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008