Category:Blue: Difference between revisions

m
no edit summary
(Created page with "{{stub}}{{language|Blue}}")
 
mNo edit summary
 
(4 intermediate revisions by one other user not shown)
Line 1:
{{stub}}{{language|Blue}}
|exec=machine
|site=https://github.com/jbirddog/blue
|gc=no
|untyped=yes}}
{{language programming paradigm|concatenative}}
 
Blue is a compiled low level [[Forth]]-like language that is designed for building programs without a standard library. Currently the x86-64 instruction set is supported. Example programs utilize Linux system calls but nothing in the language requires or assumes an operating system.
 
The Blue Language is very Forth-like in appearance, but instead of a traditional data/return stack, stack comments and manipulation words are used to describe the flow of data into registers. Stack manipulation words run at compile time and are not included in the resulting binary. When using the Blue Language you are in direct control of memory layout/allocation and register usage. As you develop a vocabulary to describe the program at hand, Blue quickly starts to look like a traditional Forth.
 
The instructions and registers of the instruction set being used are exposed as words in the dictionary allowing them to be referenced like any other defined word. These instructions combined with a small number of words predefined by the compiler form the first building blocks for your program. From there the abstractions and vocabularies defined are up to the programmer.
559

edits