Merge /api/improve and /api/alternatives, remove custom Herbie properties#1164
Merge /api/improve and /api/alternatives, remove custom Herbie properties#1164pavpanchekha merged 22 commits intomainfrom
/api/improve and /api/alternatives, remove custom Herbie properties#1164Conversation
|
This is still WIP, because there are still some non-JSON data structures in the histories portion that need to be JSONified. Ugh. |
|
This continues moving along, there are now only two non-JSON things being returned by
We really ought to redo this and make it saner to start, but 🤷 |
|
The |
|
Ok, there are several issues here:
|
|
|
Yes, I'm coming around to the view that "preprocessing" should be internal to Herbie and not exposed to users. |
|
@elmisback per discussion today, please re-test this branch. I fixed the issue with |
|
Odyssey runs fine when getting alternatives for sqrt(x*x) now, no crashes! |

The core idea behind this PR is that both of these APIs return JSON blobs, and those JSON blobs have distinct sets of keys. So we can just merge both endpoints and return both sets of keys, and everyone will be happy.
Doing this is quite involved, and required:
alternativesin favor ofimprovealternatives,histories, andderivationskeys tomake-improve-result:herbiekeys fromunparse-resultunparse-resultin favor ofalternatives(which is an FPCore)alternativeskey in case of a string name with spaces