Commit Graph

266 Commits

Author SHA1 Message Date
Ginger Bill
d233706a2d Fix minor parsing bug with procedure return types 2017-07-19 22:17:57 +01:00
Ginger Bill
f1ab17ed4e type_info_of; enum_value_to_string and string_to_enum_value 2017-07-19 14:01:56 +01:00
Ginger Bill
6113164211 Change union layout to store type info rather than an integer; ternary expression for types with constant condition 2017-07-19 12:15:21 +01:00
Ginger Bill
4db462a703 Fix copy 2017-07-18 20:39:53 +01:00
Ginger Bill
59fb7b020a Merge raw_union into struct as a memory layout tag #raw_union 2017-07-18 19:24:45 +01:00
Ginger Bill
65f079ebc4 Remove atomic, ++, and -- 2017-07-18 18:58:41 +01:00
Ginger Bill
277ef1a68f Allow undefined --- as a struct field default value. 2017-07-18 15:09:24 +01:00
Ginger Bill
193c7c82c8 Default struct field values 2017-07-18 14:56:07 +01:00
Ginger Bill
f7d8ba408c Fix some preload bugs. 2017-07-18 11:42:16 +01:00
Ginger Bill
9a8759efef Polymorphic type specialization for procedures 2017-07-17 15:08:36 +01:00
Ginger Bill
1c5ddd65b4 Rudimentary support for parametric polymorphic types 2017-07-13 22:35:00 +01:00
Ginger Bill
b8697fb4ed Change precedence order for types e.g. ^T(x) == ^(T(x)) 2017-07-13 16:20:07 +01:00
Ginger Bill
115e6e7f9e Update demo for both subtyping and union based Entity 2017-07-10 23:28:53 +01:00
Ginger Bill
069a47220e Make record semicolon syntax more consistent 2017-07-10 14:52:58 +01:00
Ginger Bill
66e4aaffc5 Use semicolons as field delimiters in records 2017-07-10 13:49:50 +01:00
Ginger Bill
4b051a0d3b .. half closed range; ... open range; ... variadic syntax 2017-07-07 23:42:43 +01:00
Ginger Bill
36392d658e Fix demo.odin 2017-07-04 22:43:38 +01:00
Ginger Bill
82696179e8 Merge branch 'master' of https://github.com/gingerBill/Odin 2017-07-04 22:42:41 +01:00
Ginger Bill
188bc28f6a Allow for overloading of polymorphic procedures 2017-07-04 22:42:25 +01:00
Ginger Bill
240da5c8e0 Allow aliasing of aliases 2017-07-04 16:06:08 +01:00
Ginger Bill
689a0c0b49 *_of as keyords; Allow constant aliasing for user/built-in procedures, import names, and library names 2017-07-04 11:23:48 +01:00
Ginger Bill
bc16b290ba Disable polymorphic overloading in the global scope
TODO: Figure out why it does not work in the global scope
2017-07-02 22:08:39 +01:00
Ginger Bill
ed089b44b9 do keyword for inline statements instead of blocks 2017-07-01 11:38:44 +01:00
Ginger Bill
33f4af2e19 Fix demo 2017-06-29 21:01:07 +01:00
Ginger Bill
69f7382eec Implicit parametric polymorphic procedures 2017-06-29 20:56:18 +01:00
Ginger Bill
e4a8283327 Remove Type
What was I thinking?!
2017-06-29 15:48:07 +01:00
Ginger Bill
001baf4419 Add Type -- Runtime type for comparing types (similar to TypeInfo but simpler) 2017-06-29 15:13:41 +01:00
Ginger Bill
f4879d4723 Update procedure names and extend demo.odin 2017-06-29 11:25:05 +01:00
Ginger Bill
fd81c06c35 Remove var and const keywords; Fix default parameter syntax 2017-06-28 23:55:40 +01:00
Ginger Bill
94afcec757 :: style procedure declarations; remove old parsing code 2017-06-28 23:47:06 +01:00
Ginger Bill
0622509807 Disable var and const declarations 2017-06-28 23:17:20 +01:00
Ginger Bill
9ca2246bac Basic allowance for := and :: 2017-06-28 22:38:04 +01:00
Ginger Bill
5df854fcef Fixed demo 2017-06-27 15:58:53 +01:00
Ginger Bill
260089431e Write demo for v0.5.0 2017-06-26 21:34:54 +01:00
Ginger Bill
d0d8da8c08 Revert demo 2017-06-26 19:42:32 +01:00
Ginger Bill
362a118782 Remove "overloading" bug of para-poly-procs 2017-06-25 23:41:46 +01:00
Ginger Bill
3ab481df17 new as a user-level procedure 2017-06-25 22:31:30 +01:00
Ginger Bill
4e7150b470 Allow nested para-poly procedures 2017-06-25 22:29:23 +01:00
Ginger Bill
1ced92be47 Rudimentary para-poly procedures 2017-06-25 22:15:30 +01:00
Ginger Bill
15dbea6899 Generic procedures generate types on use 2017-06-25 19:41:07 +01:00
Ginger Bill
53075e2570 Update old demos 2017-06-21 21:20:26 +01:00
Ginger Bill
2deb2f8eeb Declaration grouping uses () rather than {}; Fix some problem with compilation on *nix 2017-06-17 12:01:53 +01:00
Ginger Bill
76b0c7b765 "Revert" to older demo 2017-06-12 21:27:53 +01:00
Ginger Bill
83bad13e9e Update default field value syntax; Use more declaration groupings 2017-06-12 18:38:27 +01:00
Ginger Bill
e6a206a430 Check for empty generic declaration list 2017-06-12 16:58:25 +01:00
Ginger Bill
6b5e9aec8e Pascal style declaration grouping with () 2017-06-12 15:42:21 +01:00
Ginger Bill
2ab0d97573 import and import_load as keywords; Fix procedure literal call trick 2017-06-12 14:19:12 +01:00
Ginger Bill
33eeb58521 Prefix proc syntax 2017-06-12 12:34:55 +01:00
Ginger Bill
8fafdb185c Remove := with var and :: with const 2017-06-12 11:48:12 +01:00
Ginger Bill
333924cce1 v0.3 Release 2017-06-08 11:35:22 +01:00