Commit Graph

26 Commits

Author SHA1 Message Date
Victor Taelin
bcf7fd28b9 giving up on bootstrapping due to parser perf
initially, I wanted Kind2 to be bootstrapped, but I'm facing
difficulties, because pure hvm parser is still much slower than the
typescript parser; a few seconds vs instant to parse the entire
codebase. I think HVM2 will need to have proper immutable strings (i.e.,
nodes that expand as if they were cons-strings, but are stored as
buffers) before it can have fast parsers. as such, I'm making the
decision to NOT bootstrap it now. that is a tough decision becase,
honestly, if we don't do it as soon as possible in the development
process, it is very unlikely we'll ever do it. but the tech isn't ready
for it, and we need to move forward, so, that's the only solution.

as such, I'll be rewritting the typescript to Rust, and we'll have a
very similar design to former Kind2, with Rust doing the parsing, IO and
error reporting, and a checker.hvm1 / checker.hvm2 file doing the actual
type-checking (and HOAS-based type-level evaluation).

also, I believe we'll not even generate .hvm from a .kind bootstrap.
while losing types is significant, being able to manually edit the HVM
is very helpful to debugging, it simplifies and accelerates the
development process and removes many complications that are bought by
bootstrapping
2024-02-23 14:28:04 -03:00
Victor Taelin
cc0bffb22c recursive Kind2 file loader works now...
someone acquired debt today
2024-02-22 23:43:20 -03:00
Victor Taelin
ab98950f50 wip 2024-02-22 21:31:53 -03:00
Victor Taelin
f3451e442b WIP - breaking; will update after the map merge 2024-02-22 17:01:05 -03:00
Victor Taelin
e4b262f9d1 many things 2024-02-21 22:10:51 -03:00
Victor Taelin
2033189215 Kind.mat 2024-02-19 20:10:38 -03:00
Victor Taelin
9a7a3aa1aa add missing files 2024-02-19 15:27:32 -03:00
Victor Taelin
7c09ed7b4e recent 2024-02-19 15:16:21 -03:00
Victor Taelin
bcb53dcf39 parser stuff 2024-02-18 18:55:09 -03:00
Victor Taelin
b35e7e14cd several additional parsers 2024-02-13 15:30:53 -03:00
Victor Taelin
f2b86bd3e8 Kind2 parser WIP 2024-02-12 22:39:06 -03:00
Victor Taelin
ee703523cd add several functions to book 2024-02-12 20:15:50 -03:00
Victor Taelin
534ff0dec2 bootstrap stringifier / compiler 2024-02-12 17:18:29 -03:00
Victor Taelin
22a699eb38 kind2 initial bootstrap 2024-02-11 20:14:37 -03:00
Victor Taelin
9e09d6f845 more functions
this is temporarily becoming a behemoth, but that is fine - the goal is
to first complete the bootstrap, and then add more features, which can
then be used to decrease the size of the implementation.
2024-02-10 23:15:08 -03:00
Victor Taelin
bda6304856 faster, better equality; 1.6m to 160k rewrites on Kind.Show 2024-02-10 18:34:04 -03:00
Victor Taelin
db769b7abc kind2 bootstrap - initial term and stringifier 2024-02-10 12:25:48 -03:00
Victor Taelin
6b764e9522 tmp 2024-02-10 09:57:13 -03:00
Victor Taelin
b9683c424d remove eta expansion comment 2024-02-08 20:14:37 -03:00
Victor Taelin
bfced71efc fix missing reduce call 2024-02-08 20:14:11 -03:00
Victor Taelin
c4c909994d add bft proof 2024-02-08 20:01:37 -03:00
Victor Taelin
f872b10909 first kind2 proof 2024-02-08 19:31:48 -03:00
Victor Taelin
95f6518b81 fix reduce, add equal 2024-02-08 19:01:46 -03:00
Victor Taelin
7381d03062 updates 2024-02-08 17:49:33 -03:00
Victor Taelin
755e72a558 updates 2024-02-08 15:47:43 -03:00
Victor Taelin
88b44e0fff Kind2 notice 2024-02-08 14:56:16 -03:00