wilbowma / cur

A less devious proof assistant
BSD 2-Clause "Simplified" License
222 stars 18 forks source link

Merge Turnstile Core #109

Closed wilbowma closed 4 years ago

wilbowma commented 4 years ago

Completely rewrites the Curnel to run on Turnstile+. This gives us new extensibility, resugaring, and debugging support. New features include:

Closes #88


wilbowma commented 4 years ago

Think I'm going to make my goals for merging this less ambitious and go MVP, since Cur is alpha quality anyway, and we're already once directly someone to install a non-master branch.

stchang commented 4 years ago

Yes, agree!

wilbowma commented 4 years ago

I've finished code review on the totality checker, and cut non-essentials of my checklist. I should be ready to merge this into master this week.

Any chance of getting Cur masters to build on Turnstile master?

stchang commented 4 years ago

Any chance of getting Cur masters to build on Turnstile master?

Yes, definitely. That should be the goal.

To achieve that though, you'll also need to merge in metantac and generic-type-methods (from my fork).

You want me to do the merge?

wilbowma commented 4 years ago

Sure. The turnstile-core branch is stable for now and I won't be making many changes for a bit.

stchang commented 4 years ago

So master is 4 commits ahead for some reason. Do you want those commits? It would make merging a lot easier if I first reset master to match where turnstile-core branched off. (The changes in those commits will be gone anyways bc they are in racket-impl.)

wilbowma commented 4 years ago

If they're all in racket-impl, I would revert them in master during the merge. Not sure if that will cause auto-merge to behave badly.

stchang commented 4 years ago

Yes we might have to ignore the automerge. Or we can revert master first. No one's using it anyways. You want me to do it?

stchang commented 4 years ago

Actually, I dont think i have access to the main repo?

wilbowma commented 4 years ago

Invited.

The only thing I want to avoid is a force push or rebase in master. I might want to revisit that racket-impl

stchang commented 4 years ago

ok sounds good. do you want to keep the commits from the separate branches that get merged in, or squash into one?

wilbowma commented 4 years ago

I think most of them, particularly those related to Turnstile, can be squashed. I want to keep the few that have #closes and such. I've already squashed those as far as I want to. I think there are only 3 of those---auto, termination checking, and totality checking.

stchang commented 4 years ago

sounds good

stchang commented 4 years ago

Question about one of the additions to match-info: https://github.com/wilbowma/cur/commit/9b3dc826660a21fdd14690a18cad0eaf5e301086#r39816834

I think we should keep match-info as small as possible if we can.