Avian

Software Screenshot:
Avian
Software Details:
Version: 0.7
Upload Date: 20 Feb 15
Developer: Joel Dice
Distribution Type: Freeware
Downloads: 16

Rating: 3.0/5 (Total Votes: 2)

Avian is a lightweight alternative to Java programming language.

Avian is a lightweight virtual machine and class library designed to provide a useful subset of Java's features, suitable for building self-contained applications.

Efficient

The VM is implemented from scratch and designed to be both fast and small.

· Just-In-Time (JIT) compilation for fast method execution
· Generational, copying garbage collection ensures short pause times and good spatial locality
· Thread-local heaps provide O(1) memory allocation with no synchronization overhead
· Null pointer dereferences are handled via OS signals to avoid unecessary branches

The class library is designed to be as loosely-coupled as possible, allowing tools like ProGuard to aggressively isolate the minimum code needed for an application. This translates to smaller downloads and faster startup.

Portable

Platform-specific code is hidden behind a generic interface, so adding support for new OSes is easy. Avian currently supports Linux (i386 and x86_64), Windows (i386), and OS X (i386), with more to come.

The only third-party dependency beyond OS-provided libraries is zlib, which is itself very portable. Although the VM is written in C++, it does not depend on the C++ standard library, and is thus robust in the face of ABI changes.

Embeddable

Not only can applications embed the VM, but the VM itself supports class and resource loading from embedded jar files. This means you can produce a single executable containing your entire application, thus simplifying the installation process.

Quick Start:

$ export JAVA_HOME=/usr/local/java # or wherever you have Java installed
$ make
$ build/linux-i386-compile-fast/avian -cp build/test Hello

What is new in this release:

  • This version contains many bugfixes relative to 0.6, adds FreeBSD support, and improves support for Scala.
  • It also adds support for using the Android/Harmony class library as an alternative to the OpenJDK and Avian libraries.

What is new in version 0.6:

  • This version adds support for Apple iOS, adds ARM hardware floating point support to the compiler, provides compatibility with the OpenJDK 7 class library, adds support for using LZMA to compress embedded JAR files and boot images, modifies the AOT compiler to export debugger-visible symbols for each compiled method, and fixes a number of bugs found since the last release.

What is new in version 0.5:

  • This version improves compatibility with the OpenJDK class library, adds support for Linux on PowerPC, and improves localization support.

What is new in version 0.4:

  • This version adds support for using the OpenJDK class library as an alternative to the default Avian library.
  • It also adds support for the ARM architecture, improves support for apps using custom classloaders, and fixes a number of obscure bugs present in the previous release.

Requirements:

  • GCC
  • Java 2 Standard Edition Runtime Environment
  • GNU Binutils
  • zlib
  • GNU Make

Similar Software

Node.js
Node.js

17 Aug 18

tkscript
tkscript

3 Jun 15

GromJS
GromJS

20 Feb 15

Comments to Avian

Comments not found
Add Comment
Turn on images!