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

fix env lost when making tail call #3

Closed
wants to merge 1 commit into from
Closed

fix env lost when making tail call #3

wants to merge 1 commit into from

Conversation

namin
Copy link
Contributor

@namin namin commented Oct 10, 2021

No description provided.

@namin namin requested a review from porcuquine October 10, 2021 17:04
Copy link
Contributor

@porcuquine porcuquine left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for finding this spot.

I'm going to make a separate PR which I think will solve everything the right way, including some of the hanging FIXME notes seeking reconciliation with the reference.

@@ -856,7 +856,7 @@ fn make_tail_continuation(env: &Expression, continuation: &Continuation) -> Cont
match &*continuation {
Continuation::Outermost => continuation.clone(),
// Match all tail continuations here.
Continuation::Tail(env, c) => *c.clone(),
Continuation::Tail(env, c) => make_tail_continuation(env, c),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, good. However, we want to avoid a recursive call here since we need the circuit shape to be independent of input.

@namin namin closed this Oct 10, 2021
@porcuquine porcuquine deleted the fix-env-lost branch January 28, 2022 19:11
huitseeker pushed a commit that referenced this pull request Jun 15, 2023
* refactor Store -> ScalarStore conversion

* ScalarStore conversion unit tests

* tests passing

* convert Tag::Nil to Tag::Sym on ScalarStore

* fix tests for Tag::Nil change

* fix Tag::from_field()

* reversing bytes in 'display_string'

* add ser_f de_f functions

* implement syntax module

* update Arbitrary impl for ScalarStore

* add new lurk_ff crate for non-ipld LurkField trait

* first draft of ldon crate

* format files with new rustfmt

* SerdeF serialization implemented and tested

* first draft of ldon parser

* parser now passing quickcheck

* implement Syn::Link, fix Syn::Map ordering, fix nested Syn::List parsing

* fixup warnings

* update branch to PR

* restore lurk-rs parent crate to master branch

* fixes

* fix CI

* ldon macros

* clippy for lurk_ff

* ldon clippy

* clarify README

* add new tests and comments from demo

* Apply suggestions from code review

Co-authored-by: Samuel Burnham <[email protected]>

* implement Cont serialization

* update lurk_ff

* update Cargo.lock

Co-authored-by: Arthur Paulino <[email protected]>
Co-authored-by: Samuel Burnham <[email protected]>
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