Skip to content

New IR.ActorE AST-58#201

Merged
nomeata merged 2 commits intomasterfrom
joachim/ir-ActorE
Mar 3, 2019
Merged

New IR.ActorE AST-58#201
nomeata merged 2 commits intomasterfrom
joachim/ir-ActorE

Conversation

@nomeata
Copy link
Contributor

@nomeata nomeata commented Feb 28, 2019

to mimic It.NewObjE, i.e. take a list of declarations and fields. This gets rid of field_exp, and allows us to express the more powerful blocks-as-object features of Source.

It still has a binder for this, so that we don't regress functionality.

This obsoletes #189.

@nomeata nomeata requested a review from crusso February 28, 2019 22:24
@nomeata nomeata mentioned this pull request Feb 28, 2019
@nomeata nomeata force-pushed the joachim/ir-BlockE branch from 95b62e8 to 639612a Compare March 1, 2019 16:10
@nomeata nomeata changed the base branch from joachim/ir-BlockE to master March 1, 2019 16:13
@nomeata nomeata force-pushed the joachim/ir-ActorE branch from b4bb2bd to a43606d Compare March 1, 2019 16:22
let Name lab = name.it in
T.{lab; typ = T.Env.find id.it env.vals}) labids))
in
| ActorE (id, ds, fs, t0) ->
Copy link
Contributor

Choose a reason for hiding this comment

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

This code should probably check that t0 is well-formed in env (ie. no escape of types in ds)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good point. Same with BlockE then, right?

In fact, shouldn’t we simply insert a check_typ env (typ exp) at the top of check_exp, to always check the annotation in the outer scope? Will see if that works…

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Works without issues, 1da41fe.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Darn, tested the wrong binary. Actually shows issues with the output of tailcall. Let’s see if they are already on master

Copy link
Contributor Author

Choose a reason for hiding this comment

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

They are, see #208.

So I guess the present PR is not a regression. Will undo the extension of check_typ again and merge this.

Copy link
Contributor

@crusso crusso left a comment

Choose a reason for hiding this comment

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

This all looks good, but I wonder if we can't merge ActorE and NewObjE again in the future (and perhaps remove ActorDotE since we have the types available)

@nomeata
Copy link
Contributor Author

nomeata commented Mar 3, 2019

This all looks good, but I wonder if we can't merge ActorE and NewObjE again in the future

Maybe. I am not sure. ActorE really is quite a different beast in many ways that NewObjE, e.g. no await, captured variables need to be serialized …

nomeata added 2 commits March 3, 2019 12:17
to deal with varying output of “Illegal Instruction”.
to mimic It.NewObjE, i.e. take a list of declarations and fields. This
gets rid of `field_exp`, and allows us to express the more powerful
blocks-as-object features of Source.
@nomeata nomeata force-pushed the joachim/ir-ActorE branch from 1da41fe to 2dbcbd3 Compare March 3, 2019 11:17
@nomeata nomeata merged commit 9b6fbf2 into master Mar 3, 2019
@nomeata nomeata deleted the joachim/ir-ActorE branch March 3, 2019 11:31
dfinity-bot added a commit that referenced this pull request Oct 19, 2020
## Changelog for ic-ref:
Branch: release-0.11
Commits: [dfinity-lab/ic-ref@9edd0fdd...824fd6d9](https://github.com/dfinity-lab/ic-ref/compare/9edd0fdda006519118ed40515b84c74f69c59bc1...824fd6d904b0635349820ca52262ce91fd9e695c)

* [`ad7f600e`](https://github.com/dfinity-lab/ic-ref/commit/ad7f600ed6a95a1f30766addce6753f7106e75b9) ic-ref: Introduce Env data type ([dfinity-lab/ic-ref⁠#198](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/ic-ref/issues/198))
* [`b9bd4d3f`](https://github.com/dfinity-lab/ic-ref/commit/b9bd4d3f2e28ce966258eba1ba2392035edc54fa) ic-ref: Introduce CanisterActions type
* [`449da3c9`](https://github.com/dfinity-lab/ic-ref/commit/449da3c92d79b3fc0a1641631cc2f032f3f0d6f5) ic-ref-test: Systematically test System API availability
* [`871565bb`](https://github.com/dfinity-lab/ic-ref/commit/871565bb5fede65cb21f3f2e23e3d884eee2a934) Remove IC.Logger (not really useful)
* [`578465cc`](https://github.com/dfinity-lab/ic-ref/commit/578465cce07470a6f0498bf464e6e6a77cd8547e) ic-ref-test: Remove some tests that became obsolete
* [`a30b0b4e`](https://github.com/dfinity-lab/ic-ref/commit/a30b0b4ee0cdaa9a7485522d87c9e5bb41f3903b) Bump nixpkgs to 20.09 ([dfinity-lab/ic-ref⁠#201](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/ic-ref/issues/201))
* [`89463035`](https://github.com/dfinity-lab/ic-ref/commit/8946303584e4b5c0d44990e9f58b177258ed425e) Update caba.project.freeeze file
* [`f172aad1`](https://github.com/dfinity-lab/ic-ref/commit/f172aad192b63b9b8bd8314bcab1b7a95bde1784) ic-ref-test: No priming
* [`449b3efc`](https://github.com/dfinity-lab/ic-ref/commit/449b3efc732be3445d67c56ecbfc423fb1ab1b03) ic-ref-test: Fix “call from query“ tests
* [`824fd6d9`](https://github.com/dfinity-lab/ic-ref/commit/824fd6d904b0635349820ca52262ce91fd9e695c) ic-ref-test: Canister deletion tests
mergify bot pushed a commit that referenced this pull request Oct 19, 2020
## Changelog for ic-ref:
Branch: release-0.11
Commits: [dfinity-lab/ic-ref@9edd0fdd...824fd6d9](https://github.com/dfinity-lab/ic-ref/compare/9edd0fdda006519118ed40515b84c74f69c59bc1...824fd6d904b0635349820ca52262ce91fd9e695c)

* [`ad7f600e`](https://github.com/dfinity-lab/ic-ref/commit/ad7f600ed6a95a1f30766addce6753f7106e75b9) ic-ref: Introduce Env data type ([dfinity-lab/ic-ref⁠#198](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/ic-ref/issues/198))
* [`b9bd4d3f`](https://github.com/dfinity-lab/ic-ref/commit/b9bd4d3f2e28ce966258eba1ba2392035edc54fa) ic-ref: Introduce CanisterActions type
* [`449da3c9`](https://github.com/dfinity-lab/ic-ref/commit/449da3c92d79b3fc0a1641631cc2f032f3f0d6f5) ic-ref-test: Systematically test System API availability
* [`871565bb`](https://github.com/dfinity-lab/ic-ref/commit/871565bb5fede65cb21f3f2e23e3d884eee2a934) Remove IC.Logger (not really useful)
* [`578465cc`](https://github.com/dfinity-lab/ic-ref/commit/578465cce07470a6f0498bf464e6e6a77cd8547e) ic-ref-test: Remove some tests that became obsolete
* [`a30b0b4e`](https://github.com/dfinity-lab/ic-ref/commit/a30b0b4ee0cdaa9a7485522d87c9e5bb41f3903b) Bump nixpkgs to 20.09 ([dfinity-lab/ic-ref⁠#201](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/ic-ref/issues/201))
* [`89463035`](https://github.com/dfinity-lab/ic-ref/commit/8946303584e4b5c0d44990e9f58b177258ed425e) Update caba.project.freeeze file
* [`f172aad1`](https://github.com/dfinity-lab/ic-ref/commit/f172aad192b63b9b8bd8314bcab1b7a95bde1784) ic-ref-test: No priming
* [`449b3efc`](https://github.com/dfinity-lab/ic-ref/commit/449b3efc732be3445d67c56ecbfc423fb1ab1b03) ic-ref-test: Fix “call from query“ tests
* [`824fd6d9`](https://github.com/dfinity-lab/ic-ref/commit/824fd6d904b0635349820ca52262ce91fd9e695c) ic-ref-test: Canister deletion tests
dfinity-bot added a commit that referenced this pull request Mar 13, 2021
mergify bot pushed a commit that referenced this pull request Mar 13, 2021
dfinity-bot added a commit that referenced this pull request Jun 23, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@52369fa1...f092a2d5](dfinity/ic-hs@52369fa...f092a2d)

* [`12590345`](dfinity/ic-hs@1259034) bump cachix/install-nix-action ([dfinity/ic-hs⁠#201](https://github.com/dfinity/ic-hs/issues/201))
* [`2ef5690c`](dfinity/ic-hs@2ef5690) Bump openssl from 0.10.48 to 0.10.55 in /httpbin-rs ([dfinity/ic-hs⁠#202](https://github.com/dfinity/ic-hs/issues/202))
* [`46af8266`](dfinity/ic-hs@46af826) sync httpbin implementation with ic repo ([dfinity/ic-hs⁠#193](https://github.com/dfinity/ic-hs/issues/193))
* [`1fd276eb`](dfinity/ic-hs@1fd276e) implement Call context removal transition ([dfinity/ic-hs⁠#191](https://github.com/dfinity/ic-hs/issues/191))
* [`11c00d2a`](dfinity/ic-hs@11c00d2) catch HTTP exception from HTTPS outcalls ([dfinity/ic-hs⁠#195](https://github.com/dfinity/ic-hs/issues/195))
* [`9eb5bf48`](dfinity/ic-hs@9eb5bf4) deleted call contexts prevent canister from stopping (again) ([dfinity/ic-hs⁠#190](https://github.com/dfinity/ic-hs/issues/190))
* [`f092a2d5`](dfinity/ic-hs@f092a2d) implement and test canister history ([dfinity/ic-hs⁠#198](https://github.com/dfinity/ic-hs/issues/198))
mergify bot pushed a commit that referenced this pull request Jun 23, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@52369fa1...f092a2d5](dfinity/ic-hs@52369fa...f092a2d)

* [`12590345`](dfinity/ic-hs@1259034) bump cachix/install-nix-action ([dfinity/ic-hs⁠#201](https://github.com/dfinity/ic-hs/issues/201))
* [`2ef5690c`](dfinity/ic-hs@2ef5690) Bump openssl from 0.10.48 to 0.10.55 in /httpbin-rs ([dfinity/ic-hs⁠#202](https://github.com/dfinity/ic-hs/issues/202))
* [`46af8266`](dfinity/ic-hs@46af826) sync httpbin implementation with ic repo ([dfinity/ic-hs⁠#193](https://github.com/dfinity/ic-hs/issues/193))
* [`1fd276eb`](dfinity/ic-hs@1fd276e) implement Call context removal transition ([dfinity/ic-hs⁠#191](https://github.com/dfinity/ic-hs/issues/191))
* [`11c00d2a`](dfinity/ic-hs@11c00d2) catch HTTP exception from HTTPS outcalls ([dfinity/ic-hs⁠#195](https://github.com/dfinity/ic-hs/issues/195))
* [`9eb5bf48`](dfinity/ic-hs@9eb5bf4) deleted call contexts prevent canister from stopping (again) ([dfinity/ic-hs⁠#190](https://github.com/dfinity/ic-hs/issues/190))
* [`f092a2d5`](dfinity/ic-hs@f092a2d) implement and test canister history ([dfinity/ic-hs⁠#198](https://github.com/dfinity/ic-hs/issues/198))
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