Ginger Bill
fd8c4d58bb
union type allow for any types and removes common fields
2017-07-10 22:32:21 +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
81336b58cb
"Fix" printing of embedded any to prevent recursion
2017-07-10 10:37:51 +01:00
Ginger Bill
4b051a0d3b
.. half closed range; ... open range; ... variadic syntax
2017-07-07 23:42:43 +01:00
Ginger Bill
2db03cb4a5
Fix aprint* bug; NULL -> nullptr; Better error messages for overloaded functions
2017-07-06 22:43:55 +01:00
Ginger Bill
188bc28f6a
Allow for overloading of polymorphic procedures
2017-07-04 22:42:25 +01:00
Ginger Bill
ed089b44b9
do keyword for inline statements instead of blocks
2017-07-01 11:38:44 +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
a0d8dcd974
Remove let
2017-06-26 13:59:15 +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
35c102137f
Compiler compiles for x86 (doesn't work properly)
2017-06-19 18:49:11 +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
6a88dc322a
Declaration grouping uses braces rather than parentheses
2017-06-13 15:04:23 +01:00
Ginger Bill
83bad13e9e
Update default field value syntax; Use more declaration groupings
2017-06-12 18:38:27 +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
0c05fc1432
Prefix type and let to replace immutable
2017-06-12 12:56:47 +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
574b82c0c7
v0.3.0
2017-06-07 22:09:16 +01:00
Ginger Bill
f60c772c11
Make rune a basic type and not an alias; Remove byte
2017-06-06 23:54:33 +01:00
Ginger Bill
107740ca5e
Fix issue #69 for fmt.printf padding
2017-06-06 10:02:53 +01:00
Ginger Bill
eba2c74bff
Allow 128 bit map keys
2017-06-05 18:01:41 +01:00
Ginger Bill
ebe5beaafd
Allow using on bit fields
2017-06-04 11:53:33 +01:00
Ginger Bill
2c0e59ae06
bit_field; Lexical sugar operators ≠ ≤ ≥
...
Example below:
// See: https://en.wikipedia.org/wiki/Bit_field
BoxProps :: bit_field {
opaque : 1,
fill_colour : 3,
_ : 4,
show_border : 1,
border_colour : 3,
border_style : 2,
_ : 2,
width : 4,
height : 4,
_ : 8,
}
2017-06-03 22:27:23 +01:00
Ginger Bill
9d1a4c304a
Remove Quat from math.odin
2017-06-01 15:12:54 +01:00
Ginger Bill
13b8a1e348
Remove quaternion128 and quaternion256 as core types
2017-06-01 14:52:33 +01:00
Ginger Bill
0d4945dc87
Implement u128/i128 features; Add bits.odin
2017-06-01 14:23:46 +01:00
Ginger Bill
826e05c96e
Convert windows.odin to the new naming convention
2017-05-28 16:08:29 +01:00
Ginger Bill
d3f63e5903
Change label syntax for for and match from #label name to name:
2017-05-28 15:01:39 +01:00
Ginger Bill
80c034ec7c
Change naming convention from Ada_Like to RustLike
...
Naming Conventions:
In general, PascalCase for types and snake_case for values
Import Name: snake_case (but prefer single word)
Types: PascalCase
Union Variants: PascalCase
Enum Values: PascalCase
Procedures: snake_case
Local Variables: snake_case
Constant Variables: SCREAMING_SNAKE_CASE
2017-05-28 14:47:11 +01:00
Ginger Bill
45dbe8d354
default: to case:; no_alias to #no_alias
2017-05-27 11:47:21 +01:00
Ginger Bill
8677c81da7
Fix ir bug; allow formatting options for arrays & et al.
2017-05-09 12:05:17 +01:00
Ginger Bill
f7f2272c50
Fix fmt_float precision
2017-05-07 11:42:27 +01:00
Ginger Bill
789b297f32
Add hidden __tag for union variables.
2017-05-04 20:34:50 +01:00
Ginger Bill
04f5fff7fa
Improve vector math; Make bprint* return string
2017-05-01 00:38:26 +01:00
Ginger Bill
784f3ecf7e
Syntax change: cast(T)x => T(x); union_cast(T)x => x.(T); transmute(T)x => transmute(T, x); y:=^x => y:=&x;
...
Sorry for all the code breaking in this commit :(
2017-04-30 15:09:36 +01:00
Ginger Bill
54ea70df98
Fix issues #50 and #55
2017-04-29 20:06:29 +01:00
Ginger Bill
99125dc743
Fix issue #51 ; begin work on atomic types
2017-04-28 11:01:46 +01:00
Ginger Bill
5b8be25938
fmt.String_Buffer, Fix issue #44 , Tweak overloading rules
2017-04-26 19:43:17 +01:00
Ginger Bill
822bb51b55
Swap memory layout of any
2017-04-23 18:03:29 +01:00
Ginger Bill
a713e33007
Change interval syntax: .. open range, ..< half-closed range
2017-04-20 23:22:45 +01:00
Ginger Bill
d8d22e34dd
Fix fmt for type; remove dead stuff
2017-04-13 19:29:17 +01:00
Ginger Bill
aaf355e750
Basic Linux Build!
2017-04-09 22:33:32 +01:00
Ginger Bill
83ebb24015
Move to Raw_* types to raw.odin; Add size and align members to Type_Info
2017-04-07 14:05:28 +01:00
Ginger Bill
8ce58573df
len, cap, make; remove .count, .capacity, new_slice
2017-04-02 18:16:45 +01:00
Ginger Bill
5008e2c88b
Add Quaternions: quaternion128, quaternion256
2017-04-01 22:41:23 +01:00