1. Mainly for fun! Languages are pretty complex, so I got to learn about number of things (e.g. recursive-descent parsing, closures, Ruby and Python internals) in making it, and it's pretty rewarding watching programs run successfully.
2. Mainly that, because of the way objects are defined in the C++ (in value.h), it had to inherit from some type. I could just fudge it and make it inherit from nil or something, but there isn't any particular downside to the current system, and it has the added benefit of ensuring that obj.type().parent() is always successful.
3. Nothing much beyond a few test scripts (ProjectEuler solutions, etc) at the moment. Since there isn't a C API yet, it's pretty hard to make anything that requires networking, GUIs, etc., so adding that is near the top of my TODO list.
4. I might have started a few days before the initial commit (I can't remember ATM), but more or less, yeah.
Comments
Looks like a fairly well put together language.
A few things that were not explained in the README:
Why did you decide to create your own programming language?
What was the reason behind making Object inherit from itself?
What is the largest program currently written in Vivaldi?
edit: It looks like the first commit on github is 22 days ago, did you make the whole language in 22 days?
1. Mainly for fun! Languages are pretty complex, so I got to learn about number of things (e.g. recursive-descent parsing, closures, Ruby and Python internals) in making it, and it's pretty rewarding watching programs run successfully.
2. Mainly that, because of the way objects are defined in the C++ (in value.h), it had to inherit from some type. I could just fudge it and make it inherit from nil or something, but there isn't any particular downside to the current system, and it has the added benefit of ensuring that obj.type().parent() is always successful.
3. Nothing much beyond a few test scripts (ProjectEuler solutions, etc) at the moment. Since there isn't a C API yet, it's pretty hard to make anything that requires networking, GUIs, etc., so adding that is near the top of my TODO list.
4. I might have started a few days before the initial commit (I can't remember ATM), but more or less, yeah.