-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding a mode to sercomp to get rid of all notations #196
Comments
Hi @vsiles , that's a tricky question; indeed it may be doable but there are several approaches:
|
It looks like the discussion hit a dead end last year. Do you think with some external use cases we could get new traction on that direction ? It looks like a promising step towards ejgallego/coq-lsp#331 . In the meantime, I'll get a bit more familiar with 2020's Coq internals, see if I can provide more than just a use case :) |
By the way, it really looks like ejgallego/coq-lsp#331, so feel free to close and move the discussion there |
Since it's still open, I'm taking the opportunity to ask an implementation question: in vsiles@e456953 I quickly hacked what I think could be the "notation erasure" function. As you can see there's a message when I run the new binary:
Does that ring any bell ? Also, do you think that's the way to go ? |
The main blocker for ejgallego/coq-lsp#331 was actually designing a flexible protocol so "internalization" [the part of the elaboration that deals with notations] would be available in some contexts. A really big problem with exposing internalization for vernaculars is that they don't really have an internalized form in the syntax, as of today internalization of commands happens internally so we don't have a |
Umm, it seems you are using an incomplete build? Does it work if you do |
Also, I recommend you place the functions in a separate module from the beginning. |
It seems to run ok... I was usually building using EDIT: I have serapi installed in my opam switch too. Maybe it's getting confused between the local version I'm building and the one in opam ? I'll try to remove it EDIT2: I removed serapi from my opam switch, now it doesn't run at all:
|
You need to run |
Installing into the opam switch will make the default paths work, however plugins will become out of date the moment you rebuild and the interface changes [so you need to reinstall again] |
got it running fine with dune, thanks ! |
@ejgallego Ok, my attempt seems to work "kind of"... but there's some cases where it doesn't work at all (involving inductive types e.g., not sure what's wrong). What would be the best way to contact Coq devs and see what they think of it ? Coq-club, an issue on github ? |
For these kind of questions Gitter may be the perfect spot. |
Duplicate of ejgallego/coq-lsp#331 |
Hi !
Do you know how complex it would be to extend
sercomp
with a mode that strips a vernacular expression of all notations ? The end goal here is to train an algorithm without having to deal/depend on user notations, feeding it only notation free expressions.To my knowledge there is currently no option to do that (and
coqc -beautify
is quite broken). I'm not familiar with Coq plugin development, but if you think that's not a huge task, I might be able to help implementing it.Just asking :)
Best,
V.
The text was updated successfully, but these errors were encountered: