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

[RFC007] New AST for types #2079

Merged
merged 1 commit into from
Oct 28, 2024
Merged

[RFC007] New AST for types #2079

merged 1 commit into from
Oct 28, 2024

Conversation

yannham
Copy link
Member

@yannham yannham commented Oct 24, 2024

Depends on #2072

The previous PR #2072 introducing the new AST used the "old" type representation from mainline Nickel. Now that typ::Type has been made more generic in #2078, we can use a better representation that can be arena allocated as well and can contain contracts that are themselves represented in the new AST.

This PR integrates this new type representation and adds corresponding translation functions from the mainline implementation.

@yannham yannham marked this pull request as draft October 24, 2024 12:53
Copy link
Contributor

github-actions bot commented Oct 24, 2024

🐰 Bencher Report

Branch2079/merge
Testbedubuntu-latest

⚠️ WARNING: The following Measure does not have a Threshold. Without a Threshold, no Alerts will ever be generated!

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds CLI flag.

Click to view all benchmark results
BenchmarkLatencynanoseconds (ns)
fibonacci 10📈 view plot
⚠️ NO THRESHOLD
474,510.00
foldl arrays 50📈 view plot
⚠️ NO THRESHOLD
1,708,900.00
foldl arrays 500📈 view plot
⚠️ NO THRESHOLD
6,595,900.00
foldr strings 50📈 view plot
⚠️ NO THRESHOLD
6,973,800.00
foldr strings 500📈 view plot
⚠️ NO THRESHOLD
61,683,000.00
generate normal 250📈 view plot
⚠️ NO THRESHOLD
45,232,000.00
generate normal 50📈 view plot
⚠️ NO THRESHOLD
2,078,600.00
generate normal unchecked 1000📈 view plot
⚠️ NO THRESHOLD
3,270,600.00
generate normal unchecked 200📈 view plot
⚠️ NO THRESHOLD
743,050.00
pidigits 100📈 view plot
⚠️ NO THRESHOLD
3,114,600.00
pipe normal 20📈 view plot
⚠️ NO THRESHOLD
1,489,400.00
pipe normal 200📈 view plot
⚠️ NO THRESHOLD
10,223,000.00
product 30📈 view plot
⚠️ NO THRESHOLD
811,010.00
scalar 10📈 view plot
⚠️ NO THRESHOLD
1,483,500.00
sum 30📈 view plot
⚠️ NO THRESHOLD
801,890.00
🐰 View full continuous benchmarking report in Bencher

Copy link

dpulls bot commented Oct 25, 2024

🎉 All dependencies have been resolved !

@yannham yannham force-pushed the rfc007/ast-type branch 2 times, most recently from 7631b14 to f115a5d Compare October 25, 2024 13:44
The previous commit introducing the new AST used the "old" type
representation from mainline Nickel. Now that `typ::Type` has been made
more generic, we can use a better representation that can be arena
allocated as well and can contain contracts that are themselves
represented in the new AST.

This commit integrates this new type representation and add
corresponding translation functions from the mainline implementation.
@yannham yannham requested a review from jneem October 25, 2024 13:47
@yannham yannham marked this pull request as ready for review October 25, 2024 13:47
core/src/bytecode/ast/typ.rs Show resolved Hide resolved
@yannham yannham added this pull request to the merge queue Oct 28, 2024
Merged via the queue into master with commit 1857d33 Oct 28, 2024
5 checks passed
@yannham yannham deleted the rfc007/ast-type branch October 28, 2024 11:03
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

Successfully merging this pull request may close these issues.

2 participants