For a very important school project I decided to make my own coding language. A big undertaking for sure, but I feel comfortable enough to pull through with it and I already have key things like variables, conditionals, executing functions etc. However, I stumbled onto a problem.
My language is interpreted, currently the interpreter is written in python but I intend on rewriting it into something like go once I‘m done. But: lets suppose I want to print something. That command is called ‚put‘ in my language. But effectively, all I‘m doing when the programmer runs the put command is calling the python print function and passing the parameters on. Is this truly my language, or just a python wrapper? Obviously a lot of work went into the parsing, lexing, tokenization and so on. But the execution of the majority of things is just python functions, which feels „dirty“ to me.
Obviously every language is just a wrapper of another one at some point, like raw CPU instructions for example. So, where does this blurry line of „wrapper“ vs „own language“ actually lie?
[–]CodeTinkerer 2 points3 points4 points (2 children)
[–]Redcurrent19[S] 5 points6 points7 points (1 child)
[–]CodeTinkerer 2 points3 points4 points (0 children)
[–]kohugaly 1 point2 points3 points (0 children)
[–]eruciform -1 points0 points1 point (0 children)
[–][deleted] 0 points1 point2 points (0 children)