Objeck (programming language)
Paradigm | object-oriented, functional, reflective, structured |
---|---|
Designed by | Randy Hollines |
First appeared | 2008 |
Stable release | 3.3.5-2
/ January 21, 2015 |
OS | Cross-platform (multi-platform) |
License | New BSD |
Website | http://www.objeck.org |
Influenced by | |
Java and Scheme |
Search Objeck (programming language) on Amazon.
The Objeck programming language is a modern object-oriented computing language with functional features. The programming environment consists of a compiler, virtual machine (garbage collector and JIT compiler) along with a command line debugger.
Background[edit]
The programming environment originally grew from a prototype that was created in 2008 to investigate the process of translating stack VM instructions into register instructions and finally into machine code. From that prototype, a small virtual machine was developed called StackVM along with a simple assembler. The project adopted the name Objeck after the assembler was replaced by the current language frontend.
Objeck has ties with Java, Scheme and UML. Today the system is generally considered stable and performance is comparable to languages like Java. Current development is focused on adding new features such as ODBC support and tuning the virtual machine.
Language Features[edit]
Some of the current features include:
- Object-oriented
- High-order functions
- Type inference
- Class libraries (threads, sockets, collections, regex, HTTP, XML)
- Automatic memory management
- JIT support for IA-32 and AMD64 architectures
Example[edit]
Below is an example of the "Hello world" program:
class SayHello{
function : Main(args : String[]) ~ Nil {
"Hello World"->PrintLine();
"Καλημέρα κόσμε"->PrintLine();
"こんにちは 世界"->PrintLine();
}
}
References[edit]
This article "Objeck (programming language)" is from Wikipedia. The list of its authors can be seen in its historical. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.