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
Add #lang herbie/input skeleton #120
Conversation
Defines only surface syntax and error checking. A `#lang herbie/input` program does nothing but check that herbie tests are well formed and print out some messages. The following conditions are checked: - Duplicate variables - Unused variables - Undefined variables Additionally, the general structure of test cases is checked. A test case is an s-expression containing `herbie-test`, a string description, a variable list, and an equation. Malformed test cases produce syntax errors highlighting the cause.
Accidentally left this in
Looking over the Hamming examples, it seems the herbie input syntax has changed. Do not merge this yet, it should use the "official" syntax (and probably document it). |
Yep, the "correct" Herbie syntax is in a bit of a weird flux. The Hamming examples are in this "lambda" syntax because we wanted to add We haven't really decided on what we want for the 1.0 release. —Pavel Panchekha On Wed, Apr 27, 2016 at 1:30 PM, Jack Firth notifications@github.com
|
Where can I find information about the FPBench format? |
Would it make sense for a separate package to provide syntax and data structures for working with the FPBench format? |
That'd be amazing. FPBench is still a work in progress (we're going to try On Fri, Apr 29, 2016, 16:25 Jack Firth notifications@github.com wrote:
|
Where should such a package go? A directory in the FPBench repo? |
Probably a new file in the —Pavel Panchekha On Fri, Apr 29, 2016 at 6:52 PM, Jack Firth notifications@github.com
|
@jackfirth, I've been doing some changes to Herbie in the mean while, and have merged a syntax checking framework into the If you've got time, I'd love to chat about how defining a custom language could improve on what we've got now. For now, I'm marking the PR closed. |
SGTM. I don't have the bandwidth to work on this at the moment, but I'm interested in discussing how to take Herbie's new syntax checking further. In particular, a |
Thanks, @jackfirth. I sent you an email to set up a time to chat. Type checking is a good call,: it could help catch bugs when writing preconditions, plus one day we'd like to do more types than just scalar floating point values. Thanks for the reference to turnstile. |
Defines only surface syntax and error checking. A
#lang herbie/input
program does nothing but check that herbie tests are well formed and
print out some messages. The following conditions are checked:
Additionally, the general structure of test cases is checked. A test
case is an s-expression containing
herbie-test
, a string description,a variable list, and an equation. Malformed test cases produce syntax
errors highlighting the cause.