Concept

Nullable type

Related publications (22)

Predictive models for assessing the passive solar and daylight potential of neighborhood designs: A comparative proof-of-concept study

Marilyne Andersen, Émilie Nault

Despite recent developments, neighborhood-scale performance assessment at the early-design phase is seldom carried out in practice, notably due to high computational complexity, time requirement, and perceived need for expert knowledge, ultimately limiting ...
2017

Squid: Type-Safe, Hygienic, and Reusable Quasiquotes

Christoph Koch, Amir Shaikhha, Lionel Emile Vincent Parreaux

Quasiquotes have been shown to greatly simplify the task of metaprogramming. This is in part because they hide the data structures of the intermediate representation (IR), instead allowing metaprogrammers to use the concrete syntax of the language they man ...
ACM2017

Verification by Reduction to Functional Programs

Régis William Blanc

In this thesis, we explore techniques for the development and verification of programs in a high-level, expressive, and safe programming language. Our programs can express problems over unbounded domains and over recursive and mutable data structures. We p ...
EPFL2017

Two approaches to portable macros

Eugene Burmako, Fengyun Liu

For any programming language that supports macros and has multiple implementations (each with different AST definitions), there is a common problem: how to make macros that operate on ASTs portable among different compiler implementations? Implementing por ...
2017

Java and Scala's Type Systems are Unsound The Existential Crisis of Null Pointers

Nada Amin

We present short programs that demonstrate the unsoundness of Java and Scala's current type systems. In particular, these programs provide parametrically polymorphic functions that can turn any type into any type without (down) casting. Fortunately, parame ...
Assoc Computing Machinery2016

A TASTY Alternative

Martin Odersky, Eugene Burmako, Dmytro Petrashko

This document proposes a new serialization format for typed syntax trees of Scala programs. It aims to be ● compact: All numbers and references are length encoded, trees are inlined by default but may be shared. ● lazy: Trees can be explored from the top, ...
2016

A Generic Algorithm for Checking Exhaustivity of Pattern Matching

Fengyun Liu

Algebraic data types and pattern matching are key features of functional programming languages. Exhaustivity checking of pattern matching is a safety belt that defends against unmatched exceptions at runtime and boosts type safety. However, the presence of ...
Assoc Computing Machinery2016

A generic algorithm for checking exhaustivity of pattern matching

Fengyun Liu

Algebraic data types and pattern matching are key features of functional programming languages. Exhaustivity checking of pattern matching is a safety belt that defends against unmatched exceptions at runtime and boosts type safety. However, the presence of ...
2016

Dependent Object Types

Nada Amin

A scalable programming language is one in which the same concepts can describe small as well as large parts. Towards this goal, Scala unifies concepts from object and module systems. In particular, objects can contain type members, which can be selected as ...
EPFL2016

Java and Scala's Type Systems are Unsound: The Existential Crisis of Null Pointers

Nada Amin

We present short programs that demonstrate the unsoundness of Java and Scala’s current type systems. In particular, these programs provide parametrically polymorphic functions that can turn any type into any type without (down)casting. Fortunately, paramet ...
2015

Graph Chatbot

Chat with Graph Search

Ask any question about EPFL courses, lectures, exercises, research, news, etc. or try the example questions below.

DISCLAIMER: The Graph Chatbot is not programmed to provide explicit or categorical answers to your questions. Rather, it transforms your questions into API requests that are distributed across the various IT services officially administered by EPFL. Its purpose is solely to collect and recommend relevant references to content that you can explore to help you answer your questions.