Did you know that you "waste" somewhere between 5 and 10% of your time writing variable types? I mean
var myvar : TMyType;how about the time wasted "asking" Google to help you with your question? Oh... not to mention about the bad names(in most programming and interpreted languages) for functions classes, i.e. writeln, readln, print, printf, strcpy, etc.
Anywayz I don't want to waste more of your time with this kind of stuff, I'm pretty sure you got the idea until now.
Here's the grammar(until now for my "to be" interpreted language")
Language: Turbo application|console IDENTIFIER include|import|use|uses 'filename.extension';// not sure yet about the include var IDENTIFIER[, IDENTIFIER1, IDENTIFIERN]; class IDENTIFIER extends|for IDENTIFIER private|public var IDENTIFIER[, IDENTIFIER1, IDENTIFIERN]; function IDENTIFIER(PARAMETER[, PARAMETER1, PARAMETER2]) end; {function} end; {class} function IDENTIFIER(PARAMETER[, PARAMETER1, PARAMETER2]) var IDENTIFIER[, IDENTIFIER1, IDENTIFIERN]; | code end; {function} If statement if CONDITION then | end; {if} if CONDITION then | else | end; {if] For statement for var index :=|= INTEGER VALUE to|downto INTEGER VALUE [step INTEGER VALUE] do | in the for loop you can assign the value of "index" variable | as in good old Pascal end; {for} While and repeat statements while CONDITION do | end; {while} repeat | until CONDITION; {repeat} Case case VALUE[INTEGER, STRING, CHAR] of IDENTIFIER|[INTEGER|STRING|CHAR VALUE]: | end; {IDENTIFIER|[INTEGER|STRING|CHAR VALUE] case} else | end; {else case} end; {case} Try -- there can be 4 types of tries 1: try | just try to execute code nothing else matters end; {try} 2: try | execute code and execute except block on exception except | end; {try} 3: try | try to execute code, no matter what, the code in finally | block gets executed finally | end; {try} 4: try | try to execute code, handle exception and execute finally block | like two nested tries in Delphi except | finally | end; {try} Initialization and finalization of a include file or application|console initialization | finalization | end; {application|console}As you can see there are no begins I consider as wasting time to write, any declaration ends with end keyword.
The main idea is that all function/class names tell you what it actually does, for instance StringCopy, to copy a part from a string and Console.WriteLine(I know it's like delphi combined with .NET, but it actually looks clean!).
I think it will be created in Delphi but compiled with Freepascal so it can go cross platform baby!
Anyways, I really want to read your opinions and maybe start the project with someone.