Craft Language

Craft Language is a general purpose language designed to develop software

The Craft compiler can be found on GitHub: https://github.com/nibblebits/craft-compiler

The Craft compiler compiles Craft language but is also a compiler framework that allows for anyone to create and import their own code generators for a target system of their choice, these will be imported as DLL(Dynamic Link Library).

The Craft compiler framework also allows for the creation of object formats and linkers.

Currently the Craft compiler can only compile executables that can run on MS-DOS.

Since custom code generators can be made technically Craft language could output to any binary you choose, allowing it to compile code for any machine as long as a code generator exists for it

Download Craft Compiler

Download v0.1.2

Hello world Sample code

The code below does not even need an operating system to run. It can run by it's self or on MS-DOS.

			
			/* No standard lib exists yet so we will need to create the WriteString function ourself */
			void WriteChar(uint8 c)
			{
				__asm("mov ah, 0x0e");
				__asm("mov al, [%i]", c);
				__asm("int 0x10");
			}
			void WriteString(uint8* message)
			{
				uint8 i = 0;
				while(message[i] != 0)
				{
					WriteChar(message[i]);
					i += 1;
				}
			}
			void main()
			{
				WriteString("Hello World");
			}