Tea (programming language)
Appearance
Paradigm | Multi-paradigm: Functional, Object-oriented (class-based) |
---|---|
Developer | Jorge Nunes |
First appeared | 1997 |
Website | www.pdmfc.com/tea |
Influenced by | |
Tcl, Java, Scheme |
Tea is a high level scripting language for the Java environment. It combines features of Scheme, Tcl and Java.
- 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. On the other hand, a project called "destea", which released Language::Tea in CPAN, provides an alternative to the proprietary interpreter, by generating Java Code based on the Tea code.
- There's an open source compiler, TeaClipse,[1] that uses a JavaCC-generated parser to parse and then compile Tea source to the proprietary Tea bytecode. The author of TeaClipse has expressed interest in enhancing TeaClipse to produce Java bytecode.