Experimental programming language in தமிழ்
Uyirmei
Experimental programming language in Tamizh
This is an experimental side project to validate if a new language grammar can be supported with just ruby metaprogramming constructs. I have used all tricks and hacks in ruby playbook to check if a new language parser can be supported. Consider this a starting point for a programming language enthusiast to define your own grammar and extend programming constructs in Tamizh. If you are serious about supporting full scale language features, you should look at a resource like createyourproglang, metaprogramming can only take you so far.. :)
Let us look at sample programs before introducing the limited language constructs formally..
Output:
இரட்டை
ஒற்றை
இரட்டை
Output:
3
5
7
11
13
Had to add screenshots since the language grammar is not supported by github. You can check out the code in the examples folder
In Uyirmei | Equivalent keyword | Notes |
---|---|---|
சாற்று | let | Define a variable |
வினை | function | Define a method/routine |
எனில் | if | execute block if evaluates to true |
இல்லைஎனில் | unless | execute block if evaluates to false |
மீண்டும் | loop | execute given block till break |
நிறுத்து | break | break out of loop if condition passes |
அச்சு | print with a newline | |
மெய் | true | |
பொய் | false |
To run the interpreter, install the gem
$ gem install uyirmei
Run the code (with extension .um
) using the following command
$ uyirmei run examples/prime.um
MIT