Tea (programming language)
In-game article clicks load inline without leaving the challenge.
Tea is a high-level scripting language for the Java environment. It combines features of Scheme, Tcl, and Java.
Features
- Integrated support for all major programming paradigms. Functional programming language. Functions are first-class objects. Scheme-like closures are intrinsic to the language. Support for object-oriented programming.
- Modular libraries with autoloading on-demand facilities.
- Large base of core functions and classes. String and list processing. Regular expressions. File and network I/O. Database access. XML processing.
- 100% pure Java. The Tea interpreter is implemented in Java. Tea runs anywhere with a Java 1.6 JVM or higher. Java reflection features allow the use of Java libraries directly from Tea code.
- Intended to be easily extended in Java. For example, Tea supports relational database access through JDBC, regular expressions through GNU Regexp, and an XML parser through a SAX parser (XML4J for example).
Interpreter alternatives
Tea is a proprietary language. Its interpreter is subject to a non-free license. A project called "destea", which released as Language::Tea in CPAN, provides an alternative by generating Java code based on the Tea code.
TeaClipse is an open-source compiler that uses a JavaCC-generated parser to parse and then compile Tea source to the proprietary Tea bytecode.