This is a demonstration of the concepts I discuss in my OSDC 2010 presentation, "Hugging Abstract Syntax Trees: A Pythonic Love Story".
Viking is a programming language compiler front end written in Python for the Python VM. Viking programs can call Python code and vice versa (the latter currently requires the use of the --compile flag).
The language itself resembles Python with curly braces.
Viking has been implemented as a poorly-written recursive descent parser. It is half-baked, unsupported and very, very dirty. Not for production use!
#
# Run a Viking source file
#
$ ./viking helloworld.vk
#
# Compile a Viking source file to a .pyc,
# then run it using Python.
#
$ ./viking --compile helloworld.vk
$ python helloworld.pyc
#
# Alternatively, you can import compiled
# viking programs in Python.
#
$ python
# ... snip ...
>>> import helloworld
Hello, World!
>>>