Dr Super Good
Spell Reviewer
- Joined
- Jan 18, 2005
- Messages
- 27,283
Mac and Windows use a different new line character? I thought both used \n as the new line but Windows expects a carrage return character afterwards (2 characters instead of 1).
Adding new keywords or major behaviour revisions is not a good idea once a language is established. If you want them you need to develop in parallel as a new language (like vJASS2.0) to avoid backwards compatibility problems (such as someone naming a variable to). This could be done by a hidden comment (like the scrole position JNGP makes) or a macro command which tells which precompiler is to run on a piece of script. Ofcourse you encourage people to switch over to vJASS2.0 but by doing this you do not break existing code.
This is the whole problem with standards. Once they are established it is very difficult to make changes, even if they are constructive. OpenGL is a good example of this as it is foreced to remain backwards compatible due to popular demand even though it comes at a heavy performance penalty. Only recently has OpenGL managed to overcome this with the introduction of versions 3 and 4 which were parallel extensions to the standard. Direct3D also suffered this under its 9 version, which is why 10's standard was not backwards compatible (needed new OS and Hardware).
Adding new keywords or major behaviour revisions is not a good idea once a language is established. If you want them you need to develop in parallel as a new language (like vJASS2.0) to avoid backwards compatibility problems (such as someone naming a variable to). This could be done by a hidden comment (like the scrole position JNGP makes) or a macro command which tells which precompiler is to run on a piece of script. Ofcourse you encourage people to switch over to vJASS2.0 but by doing this you do not break existing code.
This is the whole problem with standards. Once they are established it is very difficult to make changes, even if they are constructive. OpenGL is a good example of this as it is foreced to remain backwards compatible due to popular demand even though it comes at a heavy performance penalty. Only recently has OpenGL managed to overcome this with the introduction of versions 3 and 4 which were parallel extensions to the standard. Direct3D also suffered this under its 9 version, which is why 10's standard was not backwards compatible (needed new OS and Hardware).