• Cite Icon21
  • https://doi.org/10.1145/2617548.2617553Copy DOI Icon

Typed Lua

  • Jun 9, 2014
  • André Murbach Maidl +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Dynamically typed languages trade flexibility and ease of use for safety, while statically typed languages prioritize the early detection of bugs, and provide a better framework for structure large programs. The idea of optional typing is to combine the two approaches in the same language: the programmer can begin development with dynamic types, and migrate to static types as the program matures. The challenge is designing a type system that feels natural to the programmer that is used to programming in a dynamic language.This paper presents the initial design of Typed Lua, an optionally-typed extension of the Lua scripting language. Lua is an imperative scripting language with first class functions and lightweight metaprogramming mechanisms. The design of Typed Lua's type system has a novel combination of features that preserves some of the idioms that Lua programmers are used to, while bringing static type safety to them. We show how the major features of the type system type these idioms with some examples, and discuss some of the design issues we faced.

Similar Papers
  • Research Article
  • Citations5

Static vs. dynamic type systems

  • Oct 24, 2011
  • ACM SIGPLAN Notices
  • Andreas Stuchlik +1
  • Conference Article
  • Citations66

Gradual typing for first-class classes

  • Oct 19, 2012
  • Asumu Takikawa +4
  • Research Article
  • Citations1

Special issue on program comprehension

  • Jul 26, 2014
  • Empirical Software Engineering
  • Michael W Godfrey +1
  • PDF
  • Research Article
  • Citations5

Migrating gradual types

  • Jan 01, 2022
  • Journal of Functional Programming
  • John Peter Campora +3
  • PDF
  • Research Article
  • Citations12

Abstracting gradual typing moving forward: precise and space-efficient

  • Jan 04, 2021
  • Proceedings of the ACM on Programming Languages
  • Felipe Bañados Schwerter +3
  • Conference Article
  • Citations14

An empirical investigation of the effects of type systems and code completion on API usability using TypeScript and JavaScript in MS visual studio

  • Oct 21, 2015
  • Lars Fischer +1
  • Conference Article
  • Citations25

Always-available static and dynamic feedback

  • May 21, 2011
  • Michael Bayne +2
  • Research Article
  • Citations49

The ins and outs of gradual type inference

  • Jan 18, 2012
  • ACM SIGPLAN Notices
  • Aseem Rastogi +2
  • Book Chapter
  • Citations3

On object extension

  • Jan 01, 1998
  • Luigi Liquori
  • Conference Article
  • Citations9

Typed First-Class Traits

  • Jan 01, 2018
  • DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
  • Xuan Bi +1
  • Book Chapter
  • Citations227

Towards Type Inference for JavaScript

  • Jan 01, 2005
  • Christopher Anderson +2
  • Research Article
  • Citations6

A formalization of typed lua

  • Oct 21, 2015
  • ACM SIGPLAN Notices
  • André Murbach Maidl +2
  • Conference Article
  • Citations9

Typing the wild in Erlang

  • Sep 29, 2018
  • Nachiappan Valliappan +1
  • Book Chapter
  • Citations365

An interaction-based language and its typing system

  • Jan 01, 1994
  • Kaku Takeuchi +2
  • PDF
  • Research Article
  • Citations15

A systematic approach to deriving incremental type checkers

  • Nov 13, 2020
  • Proceedings of the ACM on Programming Languages
  • André Pacak +2
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.