Creating a New Programming Language
Hello,
I want to create my own programming language. I had absolutely no idea where to post this, so I did here. The thing is, I'm going to do this on my own and this forum is about getting a team, so admins please move it to where you think. (I just couldn't decide where, heh.)
Please don't post about saying that I shouldn't do this because it's too hard. Obviously, I'm going to go very slow, and won't even go near graphic functions and things, at least for a long long time. I'll just do like print, etc, then keep getting more advanced. OK, enough about that, here's my question.
I was wondering if any of you know any good tutorials, resources, or just anything that would help. I've heard of Flex and Bison. It's something that like helps to create parsers and after that you can make your own, etc. Obviously, the whole project will take a while, so right now I'm just gathering resources and then will read them later. You can also post ideas like how I would construct this or something.
Mainly, I just want to know what programming language I will be working with to create this new programming language. I think C/C++ would work, wouldn't it? I don't think I'll go near ASM, and if it's required then I suppose this project won't work out, because I have absolutely no knowledge of ASM.
Alacritous
Pointing out the obviouse
Just a little note to all those who believe it is okay to write your own langauge based on c++.
That sounds like someone saying "I'm goona put a new body onto my rusty old car". The car now has a new body, still has the same engine, transmission, tires, axels, shafts, wires.....In the case the car was broken, a new body won't help.
Well C++ aint broken, why fix it?
Why create a new language based off of C++? Then you really didn't create a new language did you.
If you want to create your own language. Assemble is the way to go.
I do not know much about assemble, all I know is that you can code assemble in c++, I aint sure about any other way to compile assemble.
If you want to create your own langauge, start from scratch. If your langauge needs a c++ compiler to run, then it is a c++ language.
See, most all languages have a high-end and a low-end...some have a middle.
VB for example (i'm just guessing here)
high-end --> VB itself
low-end --> C++
all vb code is compiled and used as c++, or least links to c++ libs, and dll's
now for c++
high-end --> C/C++ itself
low-end --> Assemble
C++ code is directly translated into assemble code...You see the structure yet.
now for Assemble
high-end --> Assembly itself
low-end --> This is a hard one to say...But I guess binary, 0-1, voltage ammounts, straight instruction sets to the cpu...
The only thing lower than assemble would be the code on the chips on your motherboard.