SourceForge Logo

LIPI-FAQ - Frequently Asked Questions about the LIPI Project and the LIPI Virtual Machine

Purposes of LIPI

What does the name "LIPI" stand for?

"LIPI" stands for "LIPI Is Platform Independent". It exists in the long tratition of recursive acronyms.

Why come up with LIPI when we already have Java?

Many people whom I have talked to about the concept of LIPI asked me if it was a bit redundant to come up with such an idea when Java already exists.

I do not believe LIPI is redundant, because Java is designed for so many other purposes as well that it can not be the optimal solution for binary-application portability.

Java was originally conceived of as a means of making programmable kitchen appliances (which probably explains it's name). When that didn't go through, it ended up being used for other things, such as Web Applets. Though Web Applets are a nice thing to have (and IMHO programmable kitchen utilities would have been nice too) Java is simply spread too thin to be the optimal solution if you want a binary-application that is just like any other binary-application in every way, except for being platform independent.

Also, to program for Java, you have to program in Java. Last time I checked, I even got the impression that there's this concept in Java called a "class" that forces you to give a filename and a function the same name.

This may be standard in Object Oriented Programming, but to impose the Object Oriented Programming paradigm on everyone who wants to produce portable binary-applications is IMHO intolerable.

Once LIPI is complete, it will be possible for you to write a compiler for the language of your choice that will produce LIPI binaries.