Type-C is a work in progress programming language, with the following goals in mind:
- Speed: Type-C's runtime aims to be fast and efficient
- Safety: Type-C aims to be safe
- Expressive: Type-C aims to be expressive and productive
Type-C is a modern take of C programming language but for general purpose programming. It is inspired by languages such as Javascript, Typescript, C.
Note from the author: Type-C scope might change. The language is not yet stable and the documentation is incomplete. Meaning syntax, features and concepts might change without prior notice. Please use it at your own risk! Otherwise, feel free to contribute or provide feedback!
The purpose for Type-C is to be a general purpose programming language, for building servers, CLIs, video games, etc.
Type-C opted for an intreptered model, heavily inspired by LuaJIT.
Type-C attempts to extract the elegant parts of TypeScript, outside of the JavaScript ecosystem, and into a new language, that does not have the same design as JavaScript. Changing the design results in more flexibility or constraint on the language, and Type-C is playing with those ideas.
To put it simply, Type-C attempts to maximize performance and safety, while providing a productive and expressive programming experience. The language's features are defined by these goals. This will become clear as we learn more about the language and more importantly its limitations.