Ginger Bill
|
f40482aa29
|
Maybe types; value, ok := maybe_value(x)
|
2016-10-06 23:30:22 +01:00 |
|
Ginger Bill
|
50301557b2
|
Untyped nil
|
2016-10-06 17:11:17 +01:00 |
|
Ginger Bill
|
04b5d8c132
|
using on indexable field; Auto deref for (Index|Slice)Expr
|
2016-09-29 00:42:26 +01:00 |
|
Ginger Bill
|
f6bbd8a4c2
|
Fix minimal dependency for nested entities
|
2016-09-27 18:12:46 +01:00 |
|
Ginger Bill
|
b593332942
|
Minimal Dependency Map: Only build what is needed
|
2016-09-27 15:28:44 +01:00 |
|
Ginger Bill
|
a31bab5aae
|
Unicode file loading; push_allocator & push_context
|
2016-09-23 14:59:58 +01:00 |
|
Ginger Bill
|
6907951f1e
|
Fix type info generation
The problem: entry's index != entry->value in info_type_map
But I was assuming this
|
2016-09-22 13:34:14 +01:00 |
|
Ginger Bill
|
664c2cd7a5
|
Fix enum type comparison; Start demo 003 code
|
2016-09-21 23:26:31 +01:00 |
|
Ginger Bill
|
59b0cf61ef
|
fmt improvement; Minor refactoring
|
2016-09-19 23:59:26 +01:00 |
|
Ginger Bill
|
3b266b194f
|
enum_to_string fix; enum count, min_value, max_value
|
2016-09-19 22:26:07 +01:00 |
|
Ginger Bill
|
9561dc33ce
|
enum_to_string
|
2016-09-19 21:33:52 +01:00 |
|
Ginger Bill
|
828095afd1
|
Better name mangler for SSA generation
TODO: Define better name mangling rules and allow for explicit name overload
|
2016-09-18 21:44:22 +01:00 |
|
Ginger Bill
|
b6cb4f4d14
|
#file #line directives
|
2016-09-15 00:53:00 +01:00 |
|
Ginger Bill
|
817ae643c5
|
Remove len(), cap() and replace with selectors; fix defer in match
|
2016-09-13 14:04:05 +01:00 |
|
Ginger Bill
|
687e78d5dd
|
Some global init cleanup; volatile types
|
2016-09-12 12:05:38 +01:00 |
|
Ginger Bill
|
7509cdceb8
|
Default struct member reordering for minimal size
Rule: largest members to smallest; if same size, order in source order
|
2016-09-10 11:24:50 +01:00 |
|
Ginger Bill
|
6979678ff9
|
Begin reording of struct members by default.
|
2016-09-09 23:33:54 +01:00 |
|
Ginger Bill
|
1ca752ce04
|
Remove duplicates in type info data.
|
2016-09-09 19:48:28 +01:00 |
|
Ginger Bill
|
56dd12c54c
|
Fix match statements for the new AstNodeArray type
|
2016-09-08 18:28:18 +01:00 |
|
Ginger Bill
|
c6d02e4778
|
Fix missing type_info with manual linear search
|
2016-09-08 00:23:14 +01:00 |
|
Ginger Bill
|
7ba13a18a3
|
Basic variadic print procedure
|
2016-09-07 19:23:00 +01:00 |
|
Ginger Bill
|
2c4193a242
|
any type
|
2016-09-07 15:15:10 +01:00 |
|
Ginger Bill
|
ae72b3c5bd
|
Tagged unions memory layout change; begin demo 002
|
2016-09-04 22:50:17 +01:00 |
|
Ginger Bill
|
7f884ed251
|
Start implementing Tagged Unions
|
2016-09-03 18:18:45 +01:00 |
|
Ginger Bill
|
11205f968a
|
Typesafe variadic procedures
|
2016-09-03 12:41:03 +01:00 |
|
Ginger Bill
|
fa09d805e2
|
Match statements; Type System change (Type_Record for all sum and product types)
|
2016-09-01 20:38:44 +01:00 |
|
Ginger Bill
|
5399463d9d
|
down_cast
|
2016-08-31 00:52:19 +01:00 |
|
Ginger Bill
|
cda0234d48
|
Subtyping Polymorphic arguments; using procedure parameters
|
2016-08-30 23:32:04 +01:00 |
|
Ginger Bill
|
a06f70d5d9
|
Better using; foreign system libraries; optional semicolons
|
2016-08-30 18:39:29 +01:00 |
|
Ginger Bill
|
0eaf7bd830
|
Begin "Everything's a namespace"
|
2016-08-30 00:04:14 +01:00 |
|
Ginger Bill
|
3a189b9c1c
|
Save before Demo 001
|
2016-08-25 19:52:51 +01:00 |
|
Ginger Bill
|
d2c64be85c
|
using on struct/union fields
|
2016-08-24 23:25:56 +01:00 |
|
Ginger Bill
|
6bd898e552
|
Untagged (unsafe) unions and unambiguous in|postfix notation.
|
2016-08-24 15:06:36 +01:00 |
|
gingerBill
|
81c592b5e9
|
Integer Enumerations
|
2016-08-22 15:43:13 +01:00 |
|
gingerBill
|
a98e93f03f
|
File Library and TypeDecl syntax change
|
2016-08-22 11:52:49 +01:00 |
|
gingerBill
|
680274b6f1
|
Implicit Context and #thread_local
|
2016-08-19 23:35:09 +01:00 |
|
gingerBill
|
6f9d11b381
|
Remove scalar*vector; swizzle; broadcast
|
2016-08-17 18:36:37 +01:00 |
|
gingerBill
|
e8530ca883
|
Win32 Demo: OpenGL Context
|
2016-08-16 20:08:40 +01:00 |
|
gingerBill
|
0f48a7d299
|
#foreign "custom_name"; <N x i1> bugs (see test.ll and test2.ll)
|
2016-08-14 22:19:39 +01:00 |
|
gingerBill
|
b44bc99b88
|
append :: proc(s: ^[]T, i: T) -> bool
|
2016-08-14 15:31:11 +01:00 |
|
gingerBill
|
ee00236412
|
expr as type; {N}bool is still causing problems
|
2016-08-14 12:22:31 +01:00 |
|
gingerBill
|
19cc77dad3
|
Code generation for procedure literals
|
2016-08-11 21:53:44 +01:00 |
|
gingerBill
|
153c27c755
|
Tuple support in codegen
|
2016-08-10 11:53:17 +01:00 |
|
gingerBill
|
c930841f83
|
f16/f128,u|i128, basic vector support.
|
2016-08-10 10:00:57 +01:00 |
|
gingerBill
|
ba238c569a
|
Strings galore!
|
2016-08-05 21:07:25 +01:00 |
|
gingerBill
|
4a303b5c3e
|
Minor refactor and basic library
|
2016-08-05 15:17:23 +01:00 |
|
gingerBill
|
19aea1f198
|
Basic call expression and fix to assignment count checking
|
2016-08-03 22:27:36 +01:00 |
|
gingerBill
|
0e92166d44
|
Slice creation for SliceExpr
|
2016-08-03 14:17:13 +01:00 |
|
gingerBill
|
70f6282f41
|
Variable declaration and assign, unary operators
|
2016-07-31 23:01:42 +01:00 |
|
gingerBill
|
776dc0e8f1
|
Restart LLVM IR SSA generation
This is the third go and I'm going for it!
|
2016-07-30 00:17:13 +01:00 |
|