----------------------------------- Prads Mon Feb 25, 2013 7:24 am Writing my own programming language ----------------------------------- Hello, I have been working on this project for some months now and I want to show it to other people. Basically speaking, it's a programming language which can be compiled and ran using a virtual machine. Here's a detailed explanation I wrote in my blog: So, in last blog post I gave small introduction to my current project that I am working on. In this blog I want to release the first version of my current project. You can grab it from here: http://www.pradsproj...om/despair.html So, this piece of software that I wrote is a system to write portable programs. It has its own programming language and the program that are compiled can be executed using a Virtual Machine. The system isn?t mature and lot of things are lacking but I hope to develop it further in the future. Let me talk a little about how this system works. You write a program using its programming language (here?s the documentation of programming language: http://www.pradsproj....ion/index.html) then compile it using compiler tool that I have written. The compiler generates a file with ?.dbin? extension which can be executed using the Virtual Machine. I have created a small IDE for developing program for this system which you can download it from the project site (the one that I gave you on the top). IDE consist of editor to write and manage source code (which is fairly basic at the moment, no syntax highlighting for the moment sorry), a compiler to compile the source code and a virtual machine to run the compiled file. Alternately, if you don?t want to create programs for the system but want to run program created by others, you?re going to have to download the VM from the project site. There are two types of VM for Windows OS: interpreter version and JIT version (Dynamic Recompiler). The JIT version is faster than interpreter version though I am still not very happy with the JIT performance, I think it can be improved more. I will port the JIT version to Linux later. I want to create the Virtual Machine for various different platforms like android, iOS, MacOS etc so that the program written using despairLanguage can be run in different platforms. Currently the VM works in Windows and Linux. P.S: The software is open source and is on github. Links are on the project site. So, I just wanted you guys to look at it and play around with it. Some feedbacks (good or bad) is highly appreciated. Thanks! ----------------------------------- Zren Mon Feb 25, 2013 1:00 pm Re: Writing my own programming language ----------------------------------- I'm guessing you meant: http://www.pradsprojects.com/despair.html Since people are lazy, might as well link and copy some example here too: http://www.pradsprojects.com/despairLanguageDocumentation/index.html There seems to be a tiny tutorial here: http://www.pradsprojects.com/despairLanguageDocumentation/others.html The syntax is close to C++, so I'll use that for the highlighting. loadBMP.dsrc from the Breakout example. group BMPHeader { byte signature ----------------------------------- Tony Mon Feb 25, 2013 3:28 pm RE:Writing my own programming language ----------------------------------- what's not clear from the description is the motivation behind the project. Why not (and there are legitimate reasons) implement something with a well established spec, such as Java? ----------------------------------- Prads Tue Feb 26, 2013 2:38 am Re: Writing my own programming language ----------------------------------- Thanks Zren for fixing up the links! Well, the real motivation of this project was to see if I could make my own programming language. I knew how compiler works and how low level stuffs work, and I just wanted to take a challenge to implement it. It started out as hobby, but then it got serious. I started to think if it can be used by other people in some way. I just want to create something that homebrew game developers can use. Like once they write code and compile it, they will never have to rewrite or recompile it. The binary that was generated will work for most platform. I want to port my VM to most of the modern devices we use. I just want to see how it evolves. Also, I am going to enroll for bachelor in computer science next year, and I hope creating all these software will give me a head start. ----------------------------------- Tony Tue Feb 26, 2013 3:03 am Re: Writing my own programming language ----------------------------------- Also, I am going to enroll for bachelor in computer science next year, and I hope creating all these software will give me a head start. Realistically, you'll be well ahead in many aspects. Implementing a Java compiler is basically 4th year material for those that dare to take up the challenge. ----------------------------------- Prads Tue Feb 26, 2013 3:17 am Re: Writing my own programming language ----------------------------------- Also, I am going to enroll for bachelor in computer science next year, and I hope creating all these software will give me a head start. Realistically, you'll be well ahead in many aspects. Implementing a Java compiler is basically 4th year material for those that dare to take up the challenge. Cool! :D That's good to know.