-
Notifications
You must be signed in to change notification settings - Fork 262
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
C++ support for unconstrained ints #1259
Comments
Can you clarify what you have in mind for depending on a big integer library only when running the test suite? |
I'm just suggesting that if we are nervous about picking a big integer implementation as an official dependency, it might be possible to pick one and make it clear that it's only to unblock more general C++ compiler testing and not production ready. Heck, perhaps we could even embed a really simple, inefficient version in |
Ah, I see. Thanks for the clarification. If I find a motivated student, I'll see what we can do :) |
@parno: just had a thought that we could build a simple, inefficient (but formally-verified!) big integer implementation based on the positional natural numbers library under review here: dafny-lang/libraries#15 That would provide a great default backend for |
Interesting, so you're imagining a two-stage compilation process, where we first compile the big-integer library, and then we compile subsequent Dafny programs, assuming the compiled big-integer library is available? |
Exactly. I'd love for more of the Dafny runtime code for the various target languages to be compiled from Dafny itself, based on a smaller kernel for each language. The implementations of |
There is no real standard for "big integers" in C++ AFAIK, so the current compiler only supports constrained subset types like
uint32
.This is the main gap blocking running many existing tests in the test suite against the C++ compiler, so it's making it difficult to measure just how complete the C++ compiler is. I'd be happy with even just the incremental step of depending on a big integer library only when running the Dafny test suite.
cc @parno
The text was updated successfully, but these errors were encountered: