Commit Graph

627 Commits

Author SHA1 Message Date
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
d167290b28 Make AstNodeIdent a struct wrapping its Token 2017-06-29 12:11:50 +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
4f28e9e1fb Remove type prefix declarations 2017-06-28 23:23:10 +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
647e2cafd7 Fix expand_to_tuple 2017-06-27 22:47:19 +01:00
Ginger Bill
5df854fcef Fixed demo v0.5.0 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
d1365b3466 Fix poly-procs for variadic calls 2017-06-26 19:24:04 +01:00
Ginger Bill
c949ca2a5c Allow for named arguments for polymorphic procedures 2017-06-26 18:20:24 +01:00
Ginger Bill
d974b29f67 Reduce excessive node cloning on para-poly checking and fix scope bug 2017-06-26 14:39:51 +01:00
Ginger Bill
cc7316bb35 Fix IR printing for para-poly procedures 2017-06-26 14:16:16 +01:00
Ginger Bill
a0d8dcd974 Remove let 2017-06-26 13:59:15 +01:00
Ginger Bill
c642e326ce Undef value --- (for setting a value to be uninitialized/undefined) 2017-06-26 11:57:26 +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
c4081393c1 Fix typo for some built-in procedures 2017-06-25 17:36:10 +01:00
Ginger Bill
1d81b73df9 Basic command line flags: e.g. -opt=0 2017-06-24 22:58:50 +01:00
Ginger Bill
18f885efab expand_to_tuple 2017-06-24 20:39:37 +01:00
Ginger Bill
bba088bee7 Use UTF-8 command line on windows 2017-06-24 11:42:49 +01:00
Ginger Bill
6cbb6bef0b Wrap hashing functions 2017-06-22 16:14:02 +01:00
Ginger Bill
8744c60563 Clean up code for return statements, slightly 2017-06-22 13:47:50 +01:00
Ginger Bill
8197c02dcf Default result values for procedure types; Named result values in return statements 2017-06-22 01:14:45 +01:00
Ginger Bill
9faf0020cc Amend Checker API 2017-06-21 21:46:27 +01:00
Ginger Bill
53075e2570 Update old demos 2017-06-21 21:20:26 +01:00
Ginger Bill
264ca00db7 Merge branch 'master' of https://github.com/gingerBill/Odin 2017-06-21 17:49:05 +01:00
Ginger Bill
6b65ef6d88 Fix compilation bug on Linux 2017-06-21 17:48:50 +01:00
Ginger Bill
5957d7f7be Implicit Parameter Passing based context system (replacing Thread Local Storage (TLS) approach) 2017-06-20 12:38:05 +01:00
Ginger Bill
35c102137f Compiler compiles for x86 (doesn't work properly) 2017-06-19 18:49:11 +01:00
Ginger Bill
5427d14416 Code will compile as 32 bit but will causes errors in the linker on Windows 2017-06-19 15:55:09 +01:00
Ginger Bill
178236d1ff Barebones layout for the documentation declarations 2017-06-18 23:41:13 +01:00
Ginger Bill
736c880ba9 Add docs.cpp 2017-06-18 23:18:15 +01:00
Ginger Bill
126f7aa892 Begin work on documentation generation 2017-06-18 23:16:57 +01:00
Ginger Bill
2957f007e3 Fix #location for anonymous procedures 2017-06-18 17:35:27 +01:00
Ginger Bill
04501c93fe Implement assert and panic in user side code
Removes 2 more built-in procedures!
2017-06-18 17:25:28 +01:00
Ginger Bill
4236519b84 #location(..) and #call_location 2017-06-18 14:36:06 +01:00
Ginger Bill
e4944b4f2e Fix error reporting for foreign blocks 2017-06-17 20:03:52 +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
3fa398ec43 Add extra check for bodiless procedures 2017-06-15 21:36:29 +01:00
Ginger Bill
1851674b50 Code use API rather than raw CheckerInfo; begin work on generic procedures 2017-06-15 18:11:58 +01:00
Ginger Bill
c5ef5279d4 Add foreign variables 2017-06-15 14:42:08 +01:00
Ginger Bill
d3c24d159f Merge size_of and size_of_val et al. 2017-06-15 12:25:53 +01:00