Skip to content
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

Design a sound Dafny/.NET shim layer #165

Closed
7 tasks
robin-aws opened this issue Feb 5, 2020 · 1 comment
Closed
7 tasks

Design a sound Dafny/.NET shim layer #165

robin-aws opened this issue Feb 5, 2020 · 1 comment
Assignees

Comments

@robin-aws
Copy link
Contributor

robin-aws commented Feb 5, 2020

This task is to agree on the overall approach to ensuring we provide an idiomatic .NET API, without sabotaging the formally-verified properties of the Dafny implementation.

May involve a combination of developing Dafny code idioms for adaptation and additional Dafny fixes and features to address soundness gaps.

I'm hoping to address the following related issues around the limitations of {:extern} via the compiler plugin mechanism. I don't like trying to address per-language customization through multiple arguments to {:extern} or {:nativeType}, and would prefer a plugin mechanism for the compiler that supports per-library specification of how Dafny concepts map to existing native concepts, potentially even a DSL for defining compilation rules in the future.

@robin-aws robin-aws added this to the Public Beta milestone Feb 5, 2020
@robin-aws robin-aws self-assigned this Feb 5, 2020
@robin-aws robin-aws modified the milestones: Public Beta, C# PenTest Feb 18, 2020
@acioc acioc modified the milestones: C# PenTest Temp, C# PenTest Feb 19, 2020
@robin-aws
Copy link
Contributor Author

Depends on #222, in order to make Keyring.Valid() not depend on the heap so it can be used in a subtype.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants