![]() |
![]() |
![]() |
gbeta
gbeta is an interpreter of a generalized version of the BETA programming language. BETA is a modern, object-oriented language in the Scandinavian tradition. It delivers great expressive power using only few language constructs: a useful, simple, and clean language. It has a strong static typesystem and static name binding, general block-structure (nesting, true closures), virtual types, real type variables, expressive method combination, and a very flexible and expressive module and visibility control system. gbeta generalizes the BETA language in fundamental ways. Firstly, the type system is based on constraints (the type denoted by a declaration is the most general class satisfying the constraints). Secondly, object metamorphosis is supported (take an existing object, apply a class as a constraint, and the object dynamically specializes ("inherits") such that it becomes an instance of a derivation of that class). Thirdly, classes can be constructed at run-time (without sacrificing type correctness) and classes can be inherited from even if they are not known before run-time, such as with virtual classes or class variables.
|
Current Version: 0.8
License Type: GPL
|
Home Site:
Source Code Availability: Yes
Available Binary Packages:
Targeted Platforms: Software/Hardware Requirements:
|
Other Links:
Mailing Lists/USENET News Groups: User Comments:
|