Commit Graph

101 Commits

Author SHA1 Message Date
Mikkel Hjortshoej
c9602953aa last fixes to bats and README 2019-02-06 15:53:40 +01:00
Mikkel Hjortshoej
0185b43c2f Create CI files 2019-02-06 15:53:40 +01:00
gingerBill
aac643f476 Remove debug printing text 2019-01-05 11:30:13 +00:00
gingerBill
1f2fdddc6d Support #! comments 2018-12-26 12:00:16 +00:00
gingerBill
b2df48dadb Fix typo for little endian integers 2018-12-02 16:14:57 +00:00
gingerBill
c8b30de771 Update compiler flags for build.bat 2018-09-09 15:06:04 +01:00
gingerBill
c6bffd7c35 Change build.bat to use release_mode=1 by default 2018-08-05 10:37:09 +01:00
gingerBill
9bef5ec01a Fix anonymous procedures 2018-07-01 16:21:32 +01:00
gingerBill
3f4b6b22dc Change our IR name mangling rules 2018-06-03 17:55:13 +01:00
gingerBill
95482c554d Fix build.bat 2018-05-27 13:53:46 +01:00
gingerBill
86cf9383ea Fix delayed assert collection 2018-05-27 13:49:55 +01:00
gingerBill
1beff539d7 Single file "main" file 2018-05-27 13:22:24 +01:00
gingerBill
7ee9051a56 IR now builds with the new package system 2018-05-27 10:49:14 +01:00
gingerBill
5b6770f3d2 Parse directories to be packages 2018-05-21 20:47:52 +01:00
gingerBill
223c473cf6 Demo fix 2018-02-25 20:57:34 +00:00
gingerBill
1cd453db14 Remove unneeded disabled warnings for MSVC 2018-02-25 12:29:48 +00:00
gingerBill
8b288a2072 Reimplement opt stage 2018-01-20 16:16:59 +00:00
gingerBill
4e90644527 Remove timing for llvm-opt 2018-01-20 16:15:05 +00:00
Ginger Bill
c6096f9205 Revert to demo.odin 2017-09-29 21:11:51 +01:00
Ginger Bill
11614c2649 Fix old_demos; Fix when bug; Fix enum .names 2017-09-29 21:11:16 +01:00
Ginger Bill
3a644dad78 Fix issue #101 2017-09-20 20:45:40 +01:00
Ginger Bill
8e3b77aba8 Library collections 2017-09-07 20:55:59 +01:00
Ginger Bill
2d20bde495 Remove () grouping for foreign_library 2017-08-27 19:24:30 +01:00
Ginger Bill
b9e347ef50 Replace import_load with using import . 2017-08-27 17:03:27 +01:00
Ginger Bill
294092979e Update build.bat 2017-08-01 21:38:06 +01:00
Ginger Bill
0fae31fb54 Extra type safety; Fix typos 2017-07-31 11:36:00 +01:00
Ginger Bill
1d81b73df9 Basic command line flags: e.g. -opt=0 2017-06-24 22:58:50 +01:00
Ginger Bill
6b65ef6d88 Fix compilation bug on Linux 2017-06-21 17:48:50 +01:00
Ginger Bill
9b61adb97d Build as C++ 2017-06-08 12:03:40 +01:00
Ginger Bill
574b82c0c7 v0.3.0 2017-06-07 22:09:16 +01:00
Ginger Bill
04f5fff7fa Improve vector math; Make bprint* return string 2017-05-01 00:38:26 +01:00
Ginger Bill
dc5587eae2 Fix statement parsing of unary: & and ^ 2017-04-30 17:20:37 +01:00
Ginger Bill
382a5ca6a2 Update and regression test old demos 2017-04-02 22:03:52 +01:00
Ginger Bill
22afac2b90 Update README.md with latest demo 2017-04-02 20:10:56 +01:00
Ginger Bill
dc303cde21 Complex numbers: complex64 complex128 2017-04-01 12:07:41 +01:00
Ginger Bill
a75ccb6fbc v0.1.3 2017-03-27 20:32:36 +01:00
Ginger Bill
5562364a98 Add branch labels for loops; using list 2017-03-19 16:59:11 +00:00
Ginger Bill
32150e401e Update gb.h 2017-03-17 12:30:59 +00:00
Ginger Bill
e2734a2dc6 Begin work on the custom backend 2017-03-05 21:22:33 +00:00
Ginger Bill
fb2d611dcd Update llvm binaries to latest version; Update utf8proc; 2017-03-03 11:09:37 +00:00
Ginger Bill
9e8c9be1ea Allow pointers to append; Fix strconv stuff; new_slice allows for capacity 2017-03-02 19:24:34 +00:00
Ginger Bill
eec709c545 Fix fmt.odin printing enums 2017-02-24 20:55:35 +00:00
Ginger Bill
b9ed546ce0 Record type field names 2017-02-12 11:31:04 +00: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
Ginger Bill
984e36a151 Dynamic arrays 2017-01-29 20:15:16 +00:00
Ginger Bill
ec9c8fb8a4 Update README.md 2017-01-29 14:45:12 +00: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
31aacd5bf4 Fix parsing for block/if expression within if/for/etc. statements 2017-01-27 23:02:55 +00:00
Ginger Bill
703e1aa2bc Fix core library; Disable adding entity definitions for blank identifiers 2017-01-07 11:44:42 +00:00
Ginger Bill
4afb3f8fa4 Fix line comments at the end of file 2017-01-05 22:35:32 +00:00