Tea (programming language)

Tea is a high-level scripting language for the Java environment. It combines features of Scheme, Tcl, and Java.[1][2]

Tea
ParadigmMulti-paradigm: Functional, Object-oriented (class-based)
DeveloperJorge Nunes
First appeared1997 (1997)
WebsiteTea
Influenced by
Tcl, Java, Scheme

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[3] is an open-source compiler that uses a JavaCC-generated parser to parse and then compile Tea source to the proprietary Tea bytecode.

References

  1. Hunter, Jason; Crawford, William (April 3, 2001). Java Servlet Programming: Help for Server Side Java Developers. "O'Reilly Media, Inc.". p. 423. ISBN 9780596000400 via Internet Archive. tea programming language.
  2. Huynh, Khue; Razzaq, Leena (January 1, 2002). "A Distance learning system for Tea programming". Major Qualifying Projects (All Years).
  3. TeaClipse
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.