Neon is a excessive-stage, statically typed, garbage silent, crucial programming language supposed for teaching and studying the craft of programming.
Its design borrows points from many standard languages, yet fastidiously avoids general errors encountered by origin programmers in other languages.
Neon arithmetic makes spend of decimal floating level, placing off surprises that most regularly come up with binary floating level.
Symbolic operators are unambiguous and most regularly contain most efficient one which methodology.
Pointers are supported, but null pointer errors are now not that you might per chance presumably well be in a position to take into accounts by design.
Names can’t be shadowed, placing off a general provide of bewilderment.
Neon also has points that can originate studying programming radiant and stress-free.
There are usual libraries for graphics, sound, text mode interfaces (curses), networking, and extra.
The graphics and sound libraries rob the early days of the Apple ][ and Commodore 64.
The curses interface offers interactive text mode functionality.
The flexibility to link to exterior libraries and to name exterior capabilities opens up a huge quantity of possibilities.
A well-outlined extension interface supports third occasion library integration.
There are a alternative of samples which show the capabilities of Neon.
What does Neon witness be pleased?
Neon programs commence executing at the first assertion in the provision file.
As an instance, a program would per chance be as rapid as this:
One other well-recognized instance is the fundamental “FizzBuzz” program:
# For every integer from 1 to 100, print "Fizz" if the amount # is divisible by 3, or "Buzz" if the amount is divisible # by 5, or "FizzBuzz" if the amount is divisible by both. # Otherwise, print the amount itself. FOR i := 1 TO 100 DO IF i MOD 15 = 0 THEN print("FizzBuzz") ELSIF i MOD 3 = 0 THEN print("Fizz") ELSIF i MOD 5 = 0 THEN print("Buzz") ELSE print("(i)") END IF END FOR
Neon syntax is now not sensitive to whitespace, and doesn’t contain assertion separators.
Neon provide code is case sensitive, but there don’t appear to be any requirements on the case of client-outlined identifiers.