Tea is a high-level scripting language for the Java environment. It combines features of Scheme, Tcl, and Java.[1][2]
- 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
[edit]
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[3] is an open-source compiler that uses a JavaCC-generated parser to parse and then compile Tea source to the proprietary Tea bytecode.