212,983pages on
this wiki
Add New Page
Add New Page Discuss this page0

Welcome to the Taco mini wiki at Scratchpad!

You can use the box below to create new pages for this mini-wiki. Make sure you type [[Category:Taco]] on the page before you save it to make it part of the Taco wiki (preload can be enabled to automate this task, by clicking this link and saving that page. Afterwards, you may need to purge this page, if you still see this message).

What is Vanilla?

Vanilla is a computing environment, made up of several [partially] independant components. It can be used as an entire operating system, however can also [and probably will in most cases] run on top of Windows, Linux or MacOSX.

A User Interface

Vanilla is all about the user. It's user interface is to be simple, easy and efficient to use.

An Application Framework

The users are of the most important, and as such, it is also important that developers can easily and quickly produce user friendly, feature rich and efficient applications.

A Virtual Machine

These applications and the frameworks/libraries on which they depend run on a Vanilla Virtual Machine.

Language Independant

The VVM specification describes a language and platform independant bytecode. See VVM Bytecode.

Multiple Implementations

To encourage competition, portability and exploration, several implementations of the VVM will be developed.

Reference/Specification Implementation

The main implementation, development-wise - known as the reference or specification implementation - is to be written in the Objective Caml language. It aims to be clean, stable, up-to-date and 100% conformant to the specification. It probably will not be used itself for running applications, and speed is certainly not it's primary objective.

End User Implementation

Written in C and utilising just-in-time compilation techniques, this is the implementation most people will actually use. It primarily aims to be efficient, but also must conform to the VVM specification.

Native Compiled Implementation

Native/static compilation is certainly a possibility, however probably won't be addressed for some time.

Other Implementations

Developers are encouraged to create their own implementations of the VVM - either to support/demonstrate their own extensions, to address a performance issue, to target a specific platform or usage pattern, etc. It is likely that a VVM will be developed in Java to make use of the Java platform's extensive libraries, as well as to make the VVM more accessible. As another example, perhaps somebody will develop a VVM that only handles a subset of the specification [or doesn't completely conform for efficiency or necesity], targeting an embedded device or CPU group.

An Operating System

Also on Fandom

Random wikia