Commit Graph

24 Commits

Author SHA1 Message Date
Zachary Pierson 7829421085 Fixed Windows (updated gb.h) | Need to test on MacOS and Linux now! 2017-02-11 23:52:56 -06:00
Zachary Pierson c50aabd916 Merging from gingerBill's master 2017-02-11 23:35:07 -06:00
Ginger Bill e1fdd675ce v0.1.0
Added:
 * Dynamic Arrays `[...]Type`
 * Dynamic Maps   `map[Key]Value`
 * Dynamic array and map literals
 * Custom struct alignemnt `struct #align 8 { bar: i8 }`
 * Allow `_` in numbers
 * Variadic `append`
 * fmt.sprint*
 * Entities prefixes with an underscore do not get exported on imports
 * Overloaded `free` for pointers, slices, strings, dynamic arrays, and dynamic maps
 * enum types have an implict `names` field, a []string of all the names in that enum

Removed:
 * Maybe/option types
 * immutable variables
 * Remove `type` keyword and other "reserved" keywords
 * `compile_assert` and `assert`return the value of the condition for semantic reasons

Changed:
 * thread_local -> #thread_local
 * #include -> #load
 * Files only get checked if they are actually used
 * match x in y {} // For type match statements
 * Version numbering now starts from 0.1.0 and uses the convention:
 	- major.minor.patch

Fixes:
 * Many fmt.* fixes

To come very Soon™:
 * Linux and OS X builds (unofficial ones do exist already)
2017-02-11 21:20:57 +00:00
Zachary Pierson 8becbdc1b2 Added a very basic Linux standard library shamelessly stolen from the MacOS one.
Made Linux (almost) work. The generated binaries segfault, but it's so close I can almost taste it.
2017-02-07 00:28:21 -06:00
zhiayang 864310e3da oh boy, basic osx/unix support 2017-02-02 04:20:33 +08:00
Ginger Bill 3e79ec4aef Fix untyped to any assignments. Fixed crash when arguments with no value are passed 2017-01-29 14:27:55 +00:00
Ginger Bill ce89a1428e Fix parameter/field lists and #import #include syntax 2017-01-02 00:26:28 +00:00
Ginger Bill d0e1efe622 Generic (grouped) declarations: var, let, const, type, import, include 2016-12-20 18:58:17 +00:00
Ginger Bill a16bdb215a Go/BCPL style semicolon insertion during tokenizing stage 2016-12-05 23:39:26 +00:00
Ginger Bill 4bb45700a5 Semicolons are required; when condition for certain file scope declarations; #import syntax change 2016-12-01 22:44:00 +00:00
Ginger Bill be8b9bda2f Delay importing entities till all other entities are collected 2016-11-30 20:46:00 +00:00
Ginger Bill b76c8abe73 error_node 2016-11-30 10:52:09 +00:00
Ginger Bill d9c686b53d when statement; Better entity collection system (for both local and global); Better parsing for record declarations 2016-11-29 23:57:06 +00:00
Ginger Bill 24ca106521 v0.0.3 Build 2016-11-17 22:58:00 +00:00
Ginger Bill 0cab083b8f #foreign_library; vector fields (x, y, z, w) for count <= 4 2016-11-15 12:06:58 +00:00
Ginger Bill f60dc7b0a7 Minor Style Fixes 2016-10-22 19:41:58 +01:00
Ginger Bill 50301557b2 Untyped nil 2016-10-06 17:11:17 +01:00
Ginger Bill 17ab23f1f0 Const Aggregate Literals for IR; Module path fix 2016-09-30 23:34:32 +01:00
Ginger Bill 5f6b0942f4 Update Standard Library; Fix Type_Info for integers 2016-09-28 00:07:03 +01:00
Ginger Bill 70f3361a34 Bug Fixes: some assertions; variable inits;
Remove some dead code
2016-09-24 22:55:17 +01:00
Ginger Bill fa7d7938e1 Fix push_* with better defer system 2016-09-23 19:45:45 +01:00
Ginger Bill 0e2347e582 Filename as default import name; as .; as _; panic() 2016-09-21 14:46:56 +01:00
Ginger Bill 9561dc33ce enum_to_string 2016-09-19 21:33:52 +01:00
Ginger Bill bbc9739f5c Core library and Better name mangling for files 2016-09-19 11:51:21 +01:00