Proceedings of the 7th Workshop on Dynamic Languages and Applications 2013
DOI: 10.1145/2489798.2489799
|View full text |Cite
|
Sign up to set email alerts
|

Modules as gradually-typed objects

Abstract: Grace is a gradually typed, object-oriented language for use in education. Grace needs a module system for several reasons: to teach students about modular program design, to organise large programs, especially its self-hosted implementation, and to provide access to resources defined in other languages. Grace uses its basic organising construct, objects, to provide modules, and is then able to use its gradual structural typing to obtain a number of interesting features without any additional mechanisms.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
5
0

Year Published

2014
2014
2019
2019

Publication Types

Select...
6
1
1

Relationship

2
6

Authors

Journals

citations
Cited by 9 publications
(5 citation statements)
references
References 24 publications
0
5
0
Order By: Relevance
“…Dialects can provide new features to the language and new tiles in the toolbox, and impose additional restrictions on what can be written. Each module [7] of the program can use a different dialect. Different dialects can provide drastically different sublanguages, with their own tiles and rules, within the same overall syntax and semantics.…”
Section: Tiled Gracementioning
confidence: 99%
“…Dialects can provide new features to the language and new tiles in the toolbox, and impose additional restrictions on what can be written. Each module [7] of the program can use a different dialect. Different dialects can provide drastically different sublanguages, with their own tiles and rules, within the same overall syntax and semantics.…”
Section: Tiled Gracementioning
confidence: 99%
“…Grace is not an dynamically typed language that has been extended with an optional type system, but a language that has been designed from the ground up to have both static and dynamic typing. Homer et al [15] explores some useful patterns that derive from Grace's use of objects as modules and its brand of optional structural typing, which can also be expressed with Typed Lua's modules as tables.…”
Section: Related Workmentioning
confidence: 99%
“…Modules are imported by designating a path to the containing file, and a name to give the module. Modules are also objects, and all top-level public definitions in a file are exposed on the resulting object when the module is imported (Homer, K. B. Bruce, et al 2013). A module runs when it is first imported, and subsequent imports receive a pointer to the existing object.…”
Section: The Core Languagementioning
confidence: 99%