greg
|
85aabed344
|
Framework for multiple environments
|
2017-12-21 03:11:56 -08:00 |
|
greg
|
aa821e720a
|
Apply wokr
|
2017-12-21 01:14:05 -08:00 |
|
greg
|
0e25720927
|
Fixing quote
|
2017-12-21 01:12:05 -08:00 |
|
greg
|
c101610cde
|
Starting builtins
|
2017-12-20 22:56:24 -08:00 |
|
greg
|
1217f6e143
|
Lambda abstraction
|
2017-12-20 18:23:44 -08:00 |
|
greg
|
6f41167402
|
Kill this linker thing
|
2017-12-18 01:30:33 -08:00 |
|
greg
|
c6509338d8
|
Kill unused code
|
2017-12-12 02:57:19 -08:00 |
|
greg
|
192a6bf6e1
|
Some lambda work
|
2017-12-12 02:56:10 -08:00 |
|
greg
|
7e8c4267c2
|
Remove a unimplemented
|
2017-12-11 01:55:08 -08:00 |
|
greg
|
25527bbdf0
|
Add fn literal variant
|
2017-12-11 01:53:27 -08:00 |
|
greg
|
5e7aef1040
|
Even more concise
|
2017-12-10 19:01:44 -08:00 |
|
greg
|
3386fcc505
|
Refactoring
|
2017-12-10 18:44:21 -08:00 |
|
greg
|
18a839bb91
|
Starting lambdas
|
2017-12-10 03:58:44 -08:00 |
|
greg
|
92d641fca0
|
Make var methods better
|
2017-12-10 03:35:51 -08:00 |
|
greg
|
9b4499c5ac
|
If expressions
|
2017-12-10 02:58:07 -08:00 |
|
greg
|
07e19cbfa2
|
Rukka - Variables
|
2017-12-09 19:08:08 -08:00 |
|
greg
|
cc79565fb3
|
Define half-working
|
2017-12-07 20:28:09 -08:00 |
|
greg
|
405f91a770
|
Get rid of old import
|
2017-12-07 19:55:18 -08:00 |
|
greg
|
faed1d6f25
|
eq?
|
2017-12-07 19:54:53 -08:00 |
|
greg
|
f6d047e3b8
|
True and False primitives
|
2017-12-07 19:51:34 -08:00 |
|
greg
|
fcd980f148
|
Some primitive implementations
|
2017-12-07 19:48:48 -08:00 |
|
greg
|
c3919daa66
|
Fix pointer alias problem
|
2017-12-07 11:22:59 -08:00 |
|
greg
|
f8152f68ad
|
Still tryign to make the pointer-munging work
|
2017-12-07 08:15:28 -08:00 |
|
greg
|
9273773bf4
|
This has broken sexp parsing
|
2017-12-04 04:56:29 -08:00 |
|
greg
|
844cef36c7
|
Fix print bug
|
2017-12-04 03:26:38 -08:00 |
|
greg
|
0e17e45f3e
|
Convert to more lispish Cons
|
2017-12-04 03:23:55 -08:00 |
|
greg
|
18d8ca7bd5
|
Special forms list
|
2017-12-04 03:06:54 -08:00 |
|
greg
|
2ee14bf740
|
Unwraps
|
2017-12-04 03:02:38 -08:00 |
|
greg
|
502497687a
|
Handle top-level empty list
|
2017-12-04 03:01:47 -08:00 |
|
greg
|
107897ec97
|
print list
|
2017-12-04 02:44:09 -08:00 |
|
greg
|
8534fb4118
|
Tighten code
|
2017-12-04 02:00:00 -08:00 |
|
greg
|
a1e38aba8e
|
Some more code
|
2017-12-04 01:57:24 -08:00 |
|
greg
|
2f8ef99b08
|
Type simplification
|
2017-12-03 22:20:43 -08:00 |
|
greg
|
2bb55b6cca
|
State for eval
|
2017-12-03 22:10:19 -08:00 |
|
greg
|
bcd70ff538
|
Numbers
|
2017-12-03 19:21:56 -08:00 |
|
greg
|
728393671f
|
Fixed string parsing
|
2017-12-03 17:47:17 -08:00 |
|
greg
|
9c3e223e51
|
Strings partway working
|
2017-12-03 17:11:17 -08:00 |
|
greg
|
2738119f17
|
Quotes
|
2017-12-03 06:04:53 -08:00 |
|
greg
|
630ead289c
|
Change Symbol -> Word for token
|
2017-12-01 03:00:42 -08:00 |
|
greg
|
485e869c90
|
Fix bug
|
2017-12-01 02:58:09 -08:00 |
|
greg
|
9e8a3d1f08
|
Tighten code
|
2017-12-01 02:39:17 -08:00 |
|
greg
|
b1da524a8f
|
Intersperse
|
2017-12-01 02:36:52 -08:00 |
|
greg
|
787b6d51a4
|
Parsing correctly yay
|
2017-12-01 02:16:28 -08:00 |
|
greg
|
1dae4443cd
|
Tokens
|
2017-11-30 22:37:49 -08:00 |
|
greg
|
210a45c92e
|
Sexp parsing
|
2017-11-29 02:08:30 -08:00 |
|
greg
|
815e0401f2
|
Parses (
|
2017-11-29 01:45:29 -08:00 |
|
greg
|
753247ee83
|
Some halfwritten stuff
|
2017-11-28 03:37:16 -08:00 |
|
greg
|
6223fc20f3
|
List datatype
|
2017-11-27 00:57:26 -08:00 |
|
greg
|
da928db351
|
Add a new language - Rukka
This is a (simple) lisp, partially for fun, partially for testing the
generic interfaces
|
2017-11-26 21:17:17 -08:00 |
|
greg
|
93d0cfe5b8
|
Make schala-lib::language private and reexport
|
2017-11-02 02:45:26 -07:00 |
|
greg
|
687b28d1d1
|
Take TokenError type out of schala-lib
|
2017-11-01 22:41:34 -07:00 |
|
greg
|
b62f618256
|
I don't need this syntax
|
2017-11-01 01:25:26 -07:00 |
|
greg
|
f25b76ea11
|
Kill some packages from schala bin
|
2017-11-01 01:23:54 -07:00 |
|
greg
|
6b2736348d
|
Get rid of unused imports
|
2017-10-31 00:45:15 -07:00 |
|
greg
|
69d5f38ea1
|
Refactor into libs part II
woo it compiles
|
2017-10-30 22:18:02 -07:00 |
|
greg
|
a6f8616839
|
Halfway done to library-ifying schala
|
2017-10-30 20:06:20 -07:00 |
|
greg
|
cdcb55e3b8
|
PLIGenerators can be authoritative, not the instances themselves
|
2017-10-29 13:45:55 -07:00 |
|
greg
|
74ac26841f
|
Some simplification
|
2017-10-29 12:27:24 -07:00 |
|
greg
|
8fd29b5090
|
Passing things along as generators
|
2017-10-29 04:09:10 -07:00 |
|
greg
|
5ebc96daa7
|
Don't need mutex, kill it
|
2017-10-29 04:04:54 -07:00 |
|
greg
|
277e039251
|
Finally removed schala dependency
Now need to clena up everything
|
2017-10-29 03:41:40 -07:00 |
|
greg
|
6e8f57e54f
|
Okay this compiles
The secret (from #rust) appeared to be that Fn() needed to have + Send
explicitly annotated on it
|
2017-10-29 03:16:08 -07:00 |
|
greg
|
ae02391270
|
Working on solution to Rocket state problem
|
2017-10-27 00:30:28 -07:00 |
|
greg
|
9379485713
|
Some linker bullshit
I don't know why I needed to do this
|
2017-10-26 02:03:47 -07:00 |
|
greg
|
910522537c
|
Splitting up some code
In preparation for splitting schala into crates
|
2017-10-23 20:51:08 -07:00 |
|
greg
|
98e1a5235a
|
Some more structure in evaluator
|
2017-10-23 01:54:35 -07:00 |
|
greg
|
e054c4b27f
|
Revert "Starting to split project into multiple crates"
This reverts commit e3b0f4a51e .
Bah, this was a bad idea, wrong way to do it
|
2017-10-23 00:45:01 -07:00 |
|
greg
|
e3b0f4a51e
|
Starting to split project into multiple crates
|
2017-10-23 00:43:43 -07:00 |
|
greg
|
911f26e9c6
|
Halfway done with evaluating tuples
|
2017-10-23 00:22:25 -07:00 |
|
greg
|
677e3ae0a9
|
Add module keyword
|
2017-10-22 03:58:09 -07:00 |
|
greg
|
4c256cb5f7
|
Literal non-primitive values
|
2017-10-14 13:54:17 -07:00 |
|
greg
|
688e1c7f5d
|
Starting work on literal non-primitve values
|
2017-10-13 18:56:02 -07:00 |
|
greg
|
26c9c72bcc
|
Can eval custom data constructors now
|
2017-10-13 03:05:18 -07:00 |
|
greg
|
2d614aa17a
|
Float literals, kill old code
|
2017-10-13 00:01:43 -07:00 |
|
greg
|
ecb2eb0f87
|
Some more primitive types + binop-checking
|
2017-10-12 23:59:52 -07:00 |
|
greg
|
4c4004d3ac
|
Add required imports
|
2017-10-12 21:46:12 -07:00 |
|
greg
|
9b4a23c4f2
|
Some partial work on refactoring type infer fn
|
2017-10-12 20:14:33 -07:00 |
|
greg
|
936c168cef
|
Add colored output to non-interactive
|
2017-10-12 10:43:54 -07:00 |
|
greg
|
db835f42aa
|
Convert webapp to using included files
|
2017-10-12 02:13:55 -07:00 |
|
greg
|
cd5fc36c37
|
Fix type check macro to add symbol table
|
2017-10-11 16:43:04 -07:00 |
|
greg
|
d7a33c974e
|
More work with unification
|
2017-10-11 02:33:46 -07:00 |
|
greg
|
b2288206d2
|
the evar table
TODO find a better way to represent this
|
2017-10-11 02:11:12 -07:00 |
|
greg
|
d962e2c27a
|
Unify work
|
2017-10-11 02:03:50 -07:00 |
|
greg
|
4534c1d3d6
|
Move type-level func up
|
2017-10-11 01:55:45 -07:00 |
|
greg
|
f79dc0b1e3
|
Okay I am figuring things out about hindley-milner again
|
2017-10-11 01:50:04 -07:00 |
|
greg
|
4928fc0019
|
rename type_var to ty
|
2017-10-10 22:14:55 -07:00 |
|
greg
|
d735e45688
|
String and () types
|
2017-10-10 21:51:45 -07:00 |
|
greg
|
b4208b696d
|
Change around some stuff
|
2017-10-10 21:23:24 -07:00 |
|
greg
|
ff3dbbcbc6
|
Change Variable to Value
|
2017-10-10 21:02:32 -07:00 |
|
greg
|
e3261be8a0
|
Partial handling of user defined types
|
2017-10-10 17:29:28 -07:00 |
|
greg
|
f131105b50
|
Starting to make unify actually work
|
2017-10-10 04:38:59 -07:00 |
|
greg
|
1089a33634
|
Convert unify to are types
b/c Type implements Clone
Maybe wanna kill this later for efficiency
|
2017-10-10 04:26:40 -07:00 |
|
greg
|
6c60794485
|
Have + do something different with strings
Needed to introduce polymorphism soon
|
2017-10-10 02:45:25 -07:00 |
|
greg
|
2f18529bcc
|
Operator typing a little bit
|
2017-10-10 02:41:17 -07:00 |
|
greg
|
c68e09d89d
|
Slight refactoring
|
2017-10-10 02:32:02 -07:00 |
|
greg
|
d9e8178a90
|
Renamed all the type-related types
|
2017-10-10 02:17:07 -07:00 |
|
greg
|
57536e6399
|
Move some type checking code around
|
2017-10-10 01:11:24 -07:00 |
|
greg
|
32e077c407
|
Merge branch 'master' of github.com:neunenak/schala
|
2017-10-10 01:09:27 -07:00 |
|
greg
|
83752a1c74
|
Some more type work
|
2017-10-10 01:04:19 -07:00 |
|
greg
|
33d0d49d30
|
Basic typing test
|
2017-10-09 12:26:25 -07:00 |
|
greg
|
76a9367284
|
String types
|
2017-10-09 11:42:53 -07:00 |
|
greg
|
66c7bbeb07
|
Floats, pathspec changes
|
2017-10-09 04:02:50 -07:00 |
|
greg
|
ed8359bcd7
|
Store constant state, func/binding as value
on symbol table, instead of key
|
2017-10-09 02:38:33 -07:00 |
|
greg
|
996f75e15c
|
A lot more type work
|
2017-10-09 02:26:59 -07:00 |
|
greg
|
30a54d997c
|
Simplify symbol table code
|
2017-10-09 00:59:52 -07:00 |
|
greg
|
4bcbf1854a
|
Use universal/existential type data structures
|
2017-10-09 00:36:54 -07:00 |
|
greg
|
f2c6556c2a
|
Use name TypeVariable
|
2017-10-09 00:22:42 -07:00 |
|
greg
|
9161e2751f
|
(Janky) type inference for explicitly-type-annotated values
|
2017-10-08 23:45:38 -07:00 |
|
greg
|
60fc9fd7e1
|
Super-basic type inference working
with a bunch of assumptions and hard-coded values
|
2017-10-08 23:33:53 -07:00 |
|
greg
|
3b249045aa
|
Call needs to accept a general argument
|
2017-10-08 23:02:03 -07:00 |
|
greg
|
ff0e14d9a9
|
Rename params -> args in Call Expr
|
2017-10-08 22:52:05 -07:00 |
|
greg
|
8fe535597e
|
Starting to actually do Hindley-Milner!!
|
2017-10-08 22:48:10 -07:00 |
|
greg
|
4bb8f82579
|
Make AST output red
|
2017-10-08 22:17:29 -07:00 |
|
greg
|
5cb8423ecc
|
Beginning for expressions
|
2017-10-08 22:07:18 -07:00 |
|
greg
|
4032707dc9
|
Kill some comments
|
2017-10-08 21:26:47 -07:00 |
|
greg
|
1a8423535a
|
Add test for function decl
|
2017-10-08 21:25:51 -07:00 |
|
greg
|
338981febe
|
Changed function signatures around slightly
|
2017-10-08 21:21:02 -07:00 |
|
greg
|
6dff8b029e
|
Function definitions expanded
|
2017-10-08 20:55:05 -07:00 |
|
greg
|
df877830d3
|
Fixed tests
|
2017-10-08 19:39:41 -07:00 |
|
greg
|
40696b3cbd
|
Rename TypeAnno to TypeName everywhere
|
2017-10-08 19:30:52 -07:00 |
|
greg
|
40a82d7e25
|
Tests for new type stuff
+ some renaming
|
2017-10-08 19:15:08 -07:00 |
|
greg
|
c605f76059
|
More type work II
|
2017-10-08 19:03:02 -07:00 |
|
greg
|
a6d71821b9
|
More type work I
|
2017-10-08 18:47:57 -07:00 |
|
greg
|
c4f0331d1a
|
Symbol table addition should be separate stage
|
2017-10-08 16:24:44 -07:00 |
|
greg
|
b4054d7581
|
Impl blocks
|
2017-10-08 14:24:02 -07:00 |
|
greg
|
74d3828c71
|
Symbol table debug needs to happen before type check
|
2017-10-08 13:59:55 -07:00 |
|
greg
|
bb57da564d
|
Infrastructure to debug symbol table
|
2017-10-08 13:57:43 -07:00 |
|
greg
|
3f9ae5fac3
|
Symbol table accepts variables
|
2017-10-08 13:51:56 -07:00 |
|
greg
|
62edc7c996
|
type checking / symbol table stuff
|
2017-10-08 12:22:04 -07:00 |
|
greg
|
e412fb9a89
|
Convert type-checking function type
|
2017-10-07 22:08:48 -07:00 |
|
greg
|
3a97401f61
|
Add symbol table insertion method skeleton
|
2017-10-07 21:57:51 -07:00 |
|
greg
|
87cfe854ac
|
Tuple literals
|
2017-10-06 20:28:07 -07:00 |
|
greg
|
184a2ae03a
|
Change syntax for type alias
|
2017-10-04 22:02:31 -07:00 |
|
greg
|
50ceb92d6b
|
Move type-checking into a module
|
2017-10-04 02:07:30 -07:00 |
|
greg
|
dd7736e32d
|
Add some resources
|
2017-10-03 21:28:17 -07:00 |
|
greg
|
3025af3ded
|
Starting on impls
|
2017-10-03 03:49:07 -07:00 |
|
greg
|
c83df6fd84
|
refactor main code
|
2017-10-02 23:33:07 -07:00 |
|
greg
|
65f64ebcc2
|
Add source file suffix to trait
|
2017-10-02 23:07:05 -07:00 |
|
greg
|
00ee802fbd
|
Clear up clutter in code from using std::process::
|
2017-10-02 23:00:11 -07:00 |
|
greg
|
c88d59401c
|
Making main.rs more concise
|
2017-10-02 22:58:03 -07:00 |
|
greg
|
1aa4e3b942
|
Get rid of virtual machine code
Gonna implement this differently
|
2017-10-02 20:34:51 -07:00 |
|
greg
|
abbbb34901
|
Some very basic evaluation stuff
|
2017-10-02 20:11:27 -07:00 |
|
greg
|
3ff4a34aeb
|
kill some non-used variable warnings
|
2017-10-02 01:52:46 -07:00 |
|
greg
|
7430aebe63
|
Webapp actually does something
|
2017-10-02 00:15:39 -07:00 |
|
greg
|
29d307ff53
|
Made web app a bit more useful
|
2017-10-01 23:25:36 -07:00 |
|
greg
|
89482e5b5a
|
Use a Result
|
2017-10-01 19:31:43 -07:00 |
|
greg
|
6435d5e958
|
Make eval output nicer
|
2017-10-01 19:29:05 -07:00 |
|
greg
|
f6536e7ebd
|
Evaluation stuff
|
2017-10-01 19:09:55 -07:00 |
|
greg
|
c5cb223168
|
Super-minimal type-checking with just ints
|
2017-10-01 17:50:26 -07:00 |
|
greg
|
d16a0c9380
|
Evaluation of literals
|
2017-10-01 12:55:28 -07:00 |
|