An almost fully customizable language made in python!
Whython is a project language, the idea of it is that anyone can download and edit the language to make it suitable to what they want. This could be a change that makes it more like a language they know; a change that makes it easier for new people to learn the language; or even a change that makes it into a shitpost, it doesn't matter. You have the control!
At the point of writing this (the first main push) you can change anything in the file editable.py. This means you can change all the keywords (except = - / * ^) and all the builtin function names.
For example, you may not like creating a variable like this:
var x = 10
and so you can change KEYWORDS_DICT["var"]
to "let" and create a variable like this:
let x = 10
If you want to be super quirky you can even use emojis in the KEYWORDS_DICT
and make
some horrible emoji language!
You may hate calling print like this:
print("Hello, World!")
and so you can change the global_symbol_table to be "shout" and print like this:
shout("Hello, World!")
Sometimes it can be annoying typing out:
var x = 10
so you may want this:
x = 10
There are things in this language that you can only do in python. If you need to run python eval then you can do:
var test = `print("This is from python")`
eval(test)
Which will output
This is all editable in the editable.py file.
There are a couple of builtin function that have not been created yet, this will be done in the future.
- to_str
- to_int
- eval
- make builtins easier to add
I am planning to allow more control, for example a way to change all grammar rules and also easily add builtins (right now its kind of tedious).
Either create a request on GitHub or message me on discord Nexin#0001
to ask for
new features.
This project was meant to be something small to learn about how languages run, but
now it's a little more than that. I was originally following codepulse
's
tutorial on YouTube but have since change a lot of the grammar rules and made
it easier to debug.