On Jul 13, 12:41 am, Dibyendu Majumdar <[email protected]> wrote: > The key ideas that I would like to implement in the new language are: > - static type inference (I am aware of the arguments for/against but > on balance prefer to support this, while allowing explicit type > declarations where needed). > - channels - add syntactic support for creating either a synchronous > or buffered queue (using standard Java concurrency library) > - maps - syntactic support for hash maps > - tasks - syntactic support for submitting tasks to a thread pool - > using the concurrency library > - convention over boilerplate - like Go, if an identifier starts with > a capital, make it automatically public, else private, and use similar > techniques to reduce boilerplate stuff > - static methods should not have to be declared in a class - to > automatically create a default class per package to hold static > methods - there may be better ways of doing this though. > > Features that I am not planning to implement: > - Go interfaces > - Ability to select on channels > - Or any thing else that does not map directly to a feature in Java.
Some more goals for the new language: - Must be a small language with few constructs - smaller than Java if possible (but some additions for syntactic support for maps, channels, tasks, etc.). I learnt Go in a day, that is the kind of brevity I am aiming for. It should be possible for a Java programmer to learn in a day. - Not a scripting language - main use case is writing server applications. My main objective is to use it in my project www.simpledbm.org - a database engine. - Should be translatable to standard Java code (no exotic features that the JVM does not natively support). - An API for providing implementations of certain built in types - i.e., channels, maps, threadpools, tasks etc. so that these are pluggable. - As already mentioned, will use standard Java library. - Similar to Go but not exactly the same - no point adding a feature that cannot be done efficiently in the JVM. Therefore closures only when natively supported in JVM (i.e. 7). Are people happy if I run past some of the proposed language syntax here in this forum? Many thanks to everyone for the feedback so far. Regards Dibyendu -- You received this message because you are subscribed to the Google Groups "JVM Languages" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/jvm-languages?hl=en.
