Kawa is a language
framework
A framework is a generic term commonly referring to an essential supporting structure which other things are built on top of.
Framework may refer to:
Computing
* Application framework, used to implement the structure of an application for an op ...
written in the programming language
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mos ...
that implements the programming language
Scheme A scheme is a systematic plan for the implementation of a certain idea.
Scheme or schemer may refer to:
Arts and entertainment
* ''The Scheme'' (TV series), a BBC Scotland documentary series
* The Scheme (band), an English pop band
* ''The Schem ...
, a dialect of
Lisp, and can be used to implement other languages to run on the
Java virtual machine (JVM). It is a part of the
GNU Project
The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collaborat ...
.
The name ''Kawa'' comes from the
Polish
Polish may refer to:
* Anything from or related to Poland, a country in Europe
* Polish language
* Poles
Poles,, ; singular masculine: ''Polak'', singular feminine: ''Polka'' or Polish people, are a West Slavic nation and ethnic group, w ...
word for coffee; a play on words, since Java is another familiar name for coffee.
Kawa is notable as one of the few programming languages with support for
units of measure
A unit of measurement is a definite magnitude of a quantity, defined and adopted by convention or by law, that is used as a standard for measurement of the same kind of quantity. Any other quantity of that kind can be expressed as a multi ...
in the form of
quantities
Quantity or amount is a property that can exist as a multitude or magnitude, which illustrate discontinuity and continuity. Quantities can be compared in terms of "more", "less", or "equal", or by assigning a numerical value multiple of a unit ...
.
Integration with Java
Besides using the language Scheme, Java object fields and methods can be accessed using code such as: . This will invoke a Java method, and does the same thing as in Java. An object's fields can be accessed with: or . Static (class) methods can be invoked with the function . Kawa can be extended with Java code (by creating scheme functions in Java), and combined with other JVM implementations.
See also
*
List of JVM languages
This list of JVM Languages comprises notable computer programming languages that are used to produce computer software that runs on the Java virtual machine (JVM). Some of these languages are interpreted by a Java program, and some are compiled ...
*
List of open-source programming languages
This is a comparison of open-source programming language licensing and related legal issues, covering all language implementations. Open-source programming languages are those that are released under open-source licenses.
{{DEFAULTSORT:Open- ...
References
External links
*
{{Lisp programming language
GNU Project software
Java platform software
JVM programming languages
Scheme (programming language) implementations
Scheme (programming language) interpreters
Programming languages supporting units of measure
Scripting languages
Software using the MIT license