New Programmer, Big Idea, Looking for Help
-
Excuse me for posting in this forum. I have no idea where I would post this. I'll just start by saying that this post is about creating a new programming language; not just a fun language, but a natively-compiled, professional-grade language optimized for systems programming, capable of shaking up the C/C++ status quo that remains. Working and reading on my own I've already gotten as far as serious syntax development, but I've hit a roadblock (or two) and am starting to think that I've reached the stage where I need some additional heads to really move forward. The language I have devised doesn’t have a name yet, but it has codenames like NOOSPL (New Object-Oriented Systems-Programming Language), and G (in reference to C and D). It’s designed to have all the bells and whistles we expect from newcomer programming languages while being easy to compile and capable of running on a physical computer. Objects will be the primary data type, but the very core of the language will be built upon a minimal primitive base. The primitive types allow for low-level programming and native compilation, but are mostly used for writing basic object types. Syntax is partly C-like and partly Lisp-like, and based around the morphology of C function calls. This homogeneity is intended to promote a unified approach to problems. Modules (like Java interfaces or Haskell typeclasses) extend the reuse of code without extensive reliance on inheritance while Actor Roles allow for concurrency without data races or thread-locking. Namespaces and aliases (think the typedef keyword in C/C++) allow imported variables to be called with simple, short names. Finally, polymorphism can be achieved with generics and traits.