TAV-PL

In the last decade, I have specified and implemented an unusual programming language that fits my personal taste.

I am currently revising the language in order to publish the source code, so some details will change.

The source code is now online: http://tavpl.de.

There is a Tutorial (also as PDF) and a Language Description (also as PDF), plus a simple TAV-PL playground to test small programs online (including more elaborate examples not in the tutorial).

TAV-PL is a precompiler for the C programming language, thus it is fairly easy to port the compiler — written in TAV-PL — to most computers.

The differences and highlights are:

  • C precompiler, should work on any system with a reasonable C compiler
  • Block structuring by indentation, like in Python; line oriented
  • No keywords in the core language, only symbols and bigraphs
  • Variables are of any kind (type) dynamically; no declarations
  • Function definition and calls by word sequences with interspersed parameters, often no parenthesis needed
  • Maps (dictionaries) with all kinds of keys (except floating-point numbers)
  • Rows (arrays) if the keys are close integers, dynamically expanding
  • Arbitrary precision integer numbers
  • Dynamic UTF strings
  • Fields for extra data in rows and maps
  • Attributes for information about an item (object)
  • Fault items for reliable error handling
  • Basic support for object-oriented programming (no inheritance)
  • Discretionary type system specified, but not yet tested

The source code for the compiler, runtime system and library are available as open source: http://tavpl.de

If you have comments or questions, write to info@tavpl.de or try a chat with tavpl via JAMI or with tav@glaschick.de via XMPP.

en/tavpl/inhalt.txt · Last modified: 2025-07-12 21:09 by rainer
Back to top
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0