Commit Graph

452 Commits

Author SHA1 Message Date
crumbtoo
de41536e1d algW
i'm honestly rather disappointed in myself for not implementing a comonadic algo J.
cross my heart i'll come back to this and return stronger!
in the mean time, i really need to get this thing into a presentable state...
2024-04-15 10:07:21 -06:00
crumbtoo
07973ca500 aoooohhh 2024-04-15 10:07:21 -06:00
crumbtoo
52657a6a14 parse lambda 2024-04-15 10:07:21 -06:00
crumbtoo
24b4187df0 mgu 2024-04-15 10:07:21 -06:00
crumbtoo
28ed317147 refactor gather 2024-04-15 10:07:21 -06:00
crumbtoo
407a8f0a16 begin gathering
begin gathering
2024-04-15 10:07:21 -06:00
crumbtoo
67c88df53a derive 2024-04-15 10:07:21 -06:00
crumbtoo
2be210bb9b lift1 fix 2024-04-15 10:07:21 -06:00
crumbtoo
40a6ca8e37 tysigd 2024-04-15 10:07:20 -06:00
crumbtoo
142c53a553 caseE 2024-04-15 10:07:20 -06:00
crumbtoo
1b1185648a ohhhh 2024-04-15 10:07:20 -06:00
crumbtoo
1f3dd80127 pretty 2024-04-15 10:07:20 -06:00
crumbtoo
70a28f4eec lintCoreProg 2024-04-15 10:07:20 -06:00
crumbtoo
63768605fa system F 2024-04-15 10:07:20 -06:00
crumbtoo
00e085135c almost done 2024-04-15 10:07:20 -06:00
crumbtoo
d181df7b2c pretty-printing 2024-04-15 10:07:20 -06:00
crumbtoo
a6e267fc29 terse pretty-printing 2024-04-15 10:07:20 -06:00
crumbtoo
4c453d334c parse 2024-04-15 10:07:20 -06:00
crumbtoo
57eeed17a3 it may not be perfection but it is progress 2024-04-15 10:07:20 -06:00
crumbtoo
6086402d4e HasBinders Binding 2024-04-15 10:07:20 -06:00
crumbtoo
b8e1ef7b94 HasBinders Program 2024-04-15 10:07:20 -06:00
crumbtoo
03963832e0 fromString for Fix 2024-04-15 10:07:20 -06:00
crumbtoo
e6a5665d4a Eq1 2024-04-15 10:07:20 -06:00
crumbtoo
2daf24acac Eq1 2024-04-15 10:07:20 -06:00
crumbtoo
8c0d0b6fe1 instances for Fix 2024-04-15 10:07:20 -06:00
crumbtoo
e720876407 instances (finally) 2024-04-15 10:07:20 -06:00
crumbtoo
ea61c11373 Bi{foldable,functor,traversable} 2024-04-15 10:07:20 -06:00
crumbtoo
5bf83ffbaf instance hell 2024-04-15 10:07:20 -06:00
crumbtoo
65b9228794 clisp->sbcl 2024-04-15 10:07:20 -06:00
crumbtoo
627933d4f1 stopping for a bit 2024-04-15 10:07:20 -06:00
crumbtoo
de3c39d118 parser compiles 2024-04-15 10:07:20 -06:00
crumbtoo
4a120f9899 things 2024-04-15 10:07:20 -06:00
crumbtoo
45a6609152 things 2024-04-15 10:07:20 -06:00
crumbtoo
f691115868 fix hardcoded builddir 2024-04-15 10:07:20 -06:00
crumbtoo
50fac603b9 fix default prettyPrec definition 2024-04-15 10:07:20 -06:00
crumbtoo
9b8630db90 good enough 2024-04-15 10:07:20 -06:00
crumbtoo
6d4585a46b ohhhhhhhh 2024-04-15 10:07:20 -06:00
crumbtoo
2858cff882 why did i do this to myself 2024-04-15 10:07:20 -06:00
crumbtoo
eb165c99fa i want to fucking die 2024-04-15 10:07:20 -06:00
crumbtoo
9c498bd0ea backstage 2024-04-15 10:07:20 -06:00
crumbtoo
22f19ce9a5 something 2024-04-15 10:07:20 -06:00
crumbtoo
709123d68e HasLocation
HasLocation
2024-04-15 10:07:20 -06:00
crumbtoo
953086d751 SrcSpan 2024-04-15 10:07:20 -06:00
crumbtoo
a72b771506 no-ttg 2024-04-15 10:07:20 -06:00
crumbtoo
e63824e035 no-ttg 2024-04-15 10:07:20 -06:00
crumbtoo
1a0ef46df8 bump 2024-04-15 10:02:36 -06:00
crumbtoo
1436f1124f Merge branch 'main' into dev v0.1.0 2024-02-16 13:12:14 -07:00
crumbtoo
2e13ec2cf4 microlens -> lens
i still love you microlens..
2024-02-13 13:42:43 -07:00
crumb
36a17d092b rc (#13)
* update readme

* Literal -> Lit, LitE -> Lit

* commentary

* infer

* hindley milner inference :D

* comments and better type errors

* type IsString + test unification error

* infer nonrec let binds

infer nonrec let binds

* small

* LitE -> Lit

* LitE -> Lit

* TyInt -> TyCon "Int#"

* parse type sigs; program type sigs

* parse types

* parse programs (with types :D)

* parse programs (with type sigs :D)

* Name = Text

Name = Text

* RlpcError

* i'm on an airplane rn, my eyelids grow heavy, and i forgot my medication. should this be my final commit (of the week): gootbye

* kinda sorta typechecking

* back and medicated!

* errorful (it's not good)

* type-checked quasiquoters

* fix hm tests

* Compiler.JustRun

* lex \ instead of \\

* grammar reference

* 4:00 AM psychopath code

* oh boy am i going to hate this code in 12 hours

* application and lits

appl

* something

* goofy

* Show1 instances

* fixation fufilled - back to work!

* works

* labels

* infix decl

* expr fixups

* where

* cool

* aaaaa

* decls fix

* finally in a decent state

* replace uses of many+satisfy with takeWhileP

* layout

layouts

oh my layouts

* i did not realise my fs is case insensitive

* tysigs

* add version bounds

* grammar reference

* 4:00 AM psychopath code

* oh boy am i going to hate this code in 12 hours

* application and lits

appl

* something

* goofy

* Show1 instances

* fixation fufilled - back to work!

* works

* labels

* infix decl

* expr fixups

* where

* cool

* aaaaa

* decls fix

* finally in a decent state

* replace uses of many+satisfy with takeWhileP

* layout

layouts

oh my layouts

* i did not realise my fs is case insensitive

* tysigs

* its fine

* threaded lexer

* decent starting point

* man this sucks

* aagh

* okay layouts kinda

* kitten i'll be honest mommy's about to kill herself

* see previous commit and scale back the part where i'm joking

* version bounds

* we're so back

* fixy

* cool

* FIX REAL

* oh my god

* works

* now we're fucking GETTING SOMEWHERE

* i really need to learn git proper

* infix exprs

* remove debug flags

* renamerlp

* rename rlp

* compiles (kill me)

man

* RlpcError -> IsRlpcError

* when the "Test suite rlp-test: PASS" hits

i'm like atlas and the world is writing two lines of code

* errorful parser

* errorful parser

small

* msgenvelope

* errors!

* allow uppercase sc names in preperation for Rlp2Core

* letrec

* infer letrec expressions

* minor docs

* checklist

* minor docs

* stable enough for a demo hey?

* small fixups

* new tag syntax; preparing for Core patterns

new tag syntax; preparing for data names

* temporary pragma system

* resolve named data in case exprs

* named constr tests

* nearing release :3

* minor changes

putting this on hold; implementing TTG first

* some

* oh my god guys!!! `Located` is a lax semimonoidal endofunctor on the category Hask!!!

![abstractionjak](https://media.discordapp.net/attachments/1101767463579951154/1200248978642567168/3877820-20SoyBooru.png?ex=65c57df8&is=65b308f8&hm=67da3acb61861cab6156df014b397d78fb8815fa163f2e992474d545beb668ba&=&format=webp&quality=lossless&width=880&height=868)

* it's also a comonad. lol.

* idk

* show

* abandon ship

* at long last

more

no more undefineds

* i should've made a lisp man this sucks

* let layout

* ttg boilerplate

* fixup! ttg boilerplate

* fixup! ttg boilerplate

* organisation and cleaning

organisation and tidying

* error messages

* driver progress

* formatting

* *R functions

* -ddump-ast

* debug tags

* -ddump-eval

* core driver

* XRec fix

* rlp2core base

* ccoool

* something

* rlp TH

* sc

* expandableAlt

* expandableAlt

* fix layout_let

* parse case exprs

* case unrolling

* rose

* her light cuts deep time and time again

('her' of course referring to the field of computer science)

* tidying

* NameSupply effect

* tidy

* fix incomplete byTag

* desugar

* WIP associate postproc

corecursive

* sigh i'm gonna have to nuke the ast again in a month

* remove old files

* remove old files

* fix top-level layout

* define datatags

* diagram

* diagram

* Update README.md

* ppr debug flags

ddump-parsed

* ppr typesigs

* ppr datatags

* remove unnecessary comment

* tidying

* .hs -> .cr

update examples

* fix evil parser bug (it was a fucking typo)

* fix evil lexer bug (it was actually quite subtle unlike prev.)

* examples

* examples

* letrec + typechecking core

* Update README.md

* Rlp2Core: simple let binds

* Rlp2Core: pattern let binds

* small core fixes

* update examples

* formatting

* typed coreExpr quoter

* typechecking things

* lt

* decent state!

* constants for bool tags

* print# gm primitive

* bind VarP after pats

* fix: tag nested data names

* gte gm prim

* more nightmare GM fixes

* QuickSort example works i'm gonig to cry

* remove debug code

* remove debug tracers

* ready?

* update readme

* remove bad, incorrct, outdated docs

---------

Co-authored-by: crumbtoo <crumb@disroot.org>
2024-02-13 13:22:23 -07:00
crumbtoo
ccc71a751c remove bad, incorrct, outdated docs 2024-02-13 13:20:39 -07:00