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
a49e888ce6
Merge https://github.com/gingerBill/Odin
2017-02-11 13:48:16 -06:00
Ginger Bill
4306345ff1
Dynamic array syntax [...]Type; make entities private with a prefix of _; fix extension checking
2017-02-11 17:33:23 +00:00
Ginger Bill
346aa5f71c
Only check files that have been truly imported.
2017-02-11 15:50:24 +00:00
Zac Pierson
99c663d9f3
Questioning whether MacOS libraries should be .dylib or .so
2017-02-11 01:10:03 -06:00
Zachary Pierson
cad46ae51c
Merge https://github.com/gingerBill/Odin
2017-02-10 23:41:23 -06:00
Zachary Pierson
3424b2badd
Added ability to use -framework on MacOS
2017-02-10 23:33:30 -06:00
Ginger Bill
73d6a55f5c
Remove need for type keyword
2017-02-10 16:12:14 +00:00
Ginger Bill
f18ae89931
Remove Maybe type; Enum names
2017-02-10 14:59:18 +00:00
Zachary Pierson
3445a28c4a
Code quality upkeep. Fixed a broken thread finding assembly instruction in gb.h
2017-02-09 01:40:45 -06:00
Zac Pierson
7f6b83d50c
Fixed gb.h - the file handle for /proc/cpuinfo is needed to read chars.
2017-02-08 11:59:54 -06:00
Zac Pierson
72d4bfb32a
Merge https://github.com/gingerBill/Odin
2017-02-08 11:50:33 -06:00
Zachary Pierson
73c5c5d5d3
Linker on MacOS and GNU/Linux now includes foreign_system_libraries. Fixed foreign_system_library not respecting 'when' condition.
2017-02-07 23:21:52 -06:00
Zac Pierson
584869730a
Linux can build now! Woo!
2017-02-07 15:07:20 -06:00
Ginger Bill
454d0b5cf5
Fix global maps and initialize the preload types before
2017-02-07 18:13:37 +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
Zachary Pierson
eeeb90c441
MacOS is able to run Hello World!
2017-02-06 21:47:58 -06:00
Ginger Bill
219ca0ac46
Map type info and fmt printing
2017-02-07 00:10:58 +00:00
Ginger Bill
5796c41357
map immutable fields: count, capacity, allocator
2017-02-06 22:53:48 +00:00
Ginger Bill
8cfae17535
map literals
2017-02-06 22:19:32 +00:00
Ginger Bill
df78b8ad3e
Make checking map key exists optional
2017-02-06 21:31:27 +00:00
Ginger Bill
f11d73ffaa
map string keys and for iterator
2017-02-06 20:54:51 +00:00
Ginger Bill
c126339090
dynamic map insertion and lookup
2017-02-06 20:23:51 +00:00
Zac Pierson
5cfa4ba580
Added Linux functions throughout the code, but it segfaults.
2017-02-06 12:26:41 -06:00
Ginger Bill
9f2d9b596d
Nearly implement dynamics map, missing insertion
2017-02-06 01:21:23 +00:00
Ginger Bill
00c7489157
Begin writing dynamic map procs and fix using bug in IR
2017-02-05 23:52:01 +00:00
Ginger Bill
b1562edccf
Add types.odin; Begin work on map
2017-02-05 18:17:55 +00:00
Ginger Bill
2a5b674d33
Custom struct alignment
2017-02-05 15:19:30 +00:00
Ginger Bill
7944b7714f
Add build guards around compiling part of the code.
2017-02-01 21:00:32 +00:00
Ginger Bill
205f4664f8
Update code from OSX merge to be consistent with the rest of the code
...
Remove some dead code whilst I was here too :P
2017-02-01 20:59:14 +00:00
zhiayang
5516e80ab7
Merge branch 'master' of https://github.com/zhiayang/Odin
2017-02-02 04:21:42 +08:00
zhiayang
864310e3da
oh boy, basic osx/unix support
2017-02-02 04:20:33 +08:00
Ginger Bill
4e7082a68d
Change internals of context; Disable immutable
2017-02-01 17:52:55 +00:00
Ginger Bill
502e63b9c5
Remove dead code
2017-01-30 23:10:44 +00:00
Ginger Bill
34150385d8
Change vector memory layout and operations; for in vector.
2017-01-30 22:31:34 +00:00
Ginger Bill
0ca1b4612c
Allow _ in floats
2017-01-29 23:13:50 +00:00
Ginger Bill
9e143a38ce
sprint*, variadic append works correctly now.
2017-01-29 21:29:10 +00:00
Ginger Bill
43be91bca3
Variadic append
2017-01-29 20:48:08 +00:00
Ginger Bill
984e36a151
Dynamic arrays
2017-01-29 20:15:16 +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
e86c990b75
Overloaded free; 3 dotted ellipsis
2017-01-28 20:16:18 +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
92453369c5
Remove while loop and readd c-style for loops i.e. all loops are just for
2017-01-27 17:43:42 +00:00
Ginger Bill
832009f33a
in keyword for for and match type
2017-01-27 16:34:58 +00:00
Ginger Bill
d3d3bfd455
Fix utf8 stuff, Allow _ in numbers, Begin writing next demo code.
2017-01-27 12:43:01 +00:00
Ginger Bill
ce3582fd89
Remove case sensitivity for libraries on windows
2017-01-26 20:06:22 +00:00
Ginger Bill
e3e16f5d05
Library names - Only link with used foreign libraries
2017-01-26 20:00:16 +00:00
Ginger Bill
f47f25f942
Fix pointer differences (issue #11 ); remove #dll_import
2017-01-26 17:39:44 +00:00
Ginger Bill
e85458919c
Basic float printing
2017-01-26 15:38:35 +00:00
Ginger Bill
b59a052e32
Change casting syntax: cast(T)x transmute(T)x et al.
2017-01-25 19:19:25 +00:00