Category:Objeck: Difference between revisions
no edit summary
No edit summary |
No edit summary |
||
Line 3:
The Objeck computer language is an object-oriented (OO) computing language that has ties with Java, Pascal and indirectly Ruby. In this language, all data types are treated as objects. The language contains all of the "basic" features of a general-purpose (Turing complete) programming language with an emphasis placed on OOP simplicity. The language consists of a compiler and virtual machine with associated garbage collector and JIT compiler. The compiler emits binary byte code that is executed by the runtime system. The runtime system has the ability to translate the byte code into IA-32 native machine code.
===Features===
* Support for object-oriented programming (including: virtual classes, enums, functions, methods, etc.)
▲ * Native runtime JIT support for IA-32 architectures (currently working on AMD64 support)
▲ * Automatic memory management (mark and sweep garbage collection)
▲ * Dynamic type variable binding
▲ * Class library support (console, strings, files, sockets, directories, vectors, linked lists and balanced binary trees, etc.)
▲ * String object support
▲ * Support for class bundles
▲ * Native platform support for Windows, Linux and OS X
▲ * Command line debugger
▲ * Platform independent optimizations (short-circuit logic, constant folding, strength reduction, instruction simplification and method inlining- WIP)
▲ * Heavy use of the SSE3 instruction set in order to support fast decimal calculations
==Examples==
|