Skip to content

WIP: first stab at 2nd class modules with type components#175

Merged
crusso merged 24 commits intomasterfrom
crusso/modules
Apr 23, 2019
Merged

WIP: first stab at 2nd class modules with type components#175
crusso merged 24 commits intomasterfrom
crusso/modules

Conversation

@crusso
Copy link
Contributor

@crusso crusso commented Feb 14, 2019

This PR contains a first-cut implementation of modules for actorscript.

Modules contain type and value declarations and can be nested. Access to module components is by the dot notion, for both types and value components.

The syntax is extended with a new declaration

module <id> = { decs }

Example

module Collections = {
  module List = {
    type t<T> = ?(T, t<T>);
    func nil<T>() : t<T> = null;
    func cons<T>(x : T, l : t<T>) : t<T> = ?(x, l);
  };
};

type Stack = Collections.List.t<Int>;

func push(x : Int, s : Stack) : Stack = Collections.List.cons<Int>(x, s);

let empty = Collections.List.nil<Int>();

Supported features: (too?) liberal cross module recursion of types and terms.

features:

[X] module renaming via [let ìd = path], provided path is backward looking and an import, module identifier or module path.
[ ] type abstraction (sealing).

Implementation (notes)

  • The current implementation extends types with variant Kind (c,k) (k should be removed since c now carries its kind).
  • Type syntax is extended with (restricted) paths X. … .Y.t" (better would be .t`)
  • Type components are just fields with type Kind _.
  • Field lookup is sensitive to type vs value lookup, with punning of type and values allowed.
  • Fields are sorted lexicographically by flavour (type or value) and label. Modules are a new sort of object.
  • Prepasses for typing recursion look down as well as ahead, descending into module declarations.
  • Type components are erased by compilation.

Future plans:

  • support full expressions (extended with module ) on rhs of module binding for computed modules.
  • add quantifiers to object types so we can properly trreat scoping of concrete and, later, abstract type components.
  • add existential introduction via subtyping (<exp> : <module type>)
  • (perhaps) replace module declaration by module pattern that eliminates (existential) quantifiers from module values (i.e. integrate module with let). Make current module declaration sugar for
    'let module X = module ', where lhs 'module x' is a new (nestable) pattern.
  • add purity restrictions on module contents (otherwise we could just use objects with type components).

@matthewhammer
Copy link
Contributor

The examples in test/run/module1.as look really exciting to me. I look forward to using similar patterns to manage namespaces (of types) in stdlib soon.

Why does the last commit say "not the implementation I want"?

I guess I'm wondering:

  • Are there examples that you want to write, but that don't (yet) work?
  • Or, is it just that the implementation isn't optimal in some way?
  • Or both?

@crusso
Copy link
Contributor Author

crusso commented Mar 8, 2019

@matthewhammer basically it's a bit hacky at the moment, but I suspect you could pretty much use it for your examples. It does seem to go through the entire pipeline (but that's with minimal testing).

Module renaming doesn't work yet and is potentially tricky with recursion.

So I guess the answer is both.

Copy link
Contributor

@ggreif ggreif left a comment

Choose a reason for hiding this comment

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

I only looked at the example.

nomeata added a commit that referenced this pull request Apr 13, 2019
with the semantics of
https://dfinity.atlassian.net/wiki/spaces/AST/pages/147357892/ActorScript+library+import

This is the simple variant where we translate them between parsing and
typechecking into a big block, with (internal) variable names for the
files.

The file `pipeline.ml` is still a mess, I think I did not make it a
bigger mess. I tries some clean up, in particular:
 * Lexing, parsing, resolving always applies to a single file (or
   string)
 * loading, checking, interpreting and running always applies to a list
 of files

This comes with a syntactic check for “static expressions”, to be used here and
probably in #175. The check is a bit uninformed yet about what it should allow and
what not, and may need to be tweaked.
@crusso crusso requested a review from rossberg April 18, 2019 17:59
Copy link
Contributor

@matthewhammer matthewhammer left a comment

Choose a reason for hiding this comment

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

LATM.
A = Awesome

Copy link
Contributor

@rossberg rossberg left a comment

Choose a reason for hiding this comment

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

Great stuff, thanks for this! I like the general direction but feel a bit uneasy about some of the details of typing.

Above all, I think we need to make up our minds regarding name-spacing. If we have two separate name spaces for types and terms then we should avoid the hack of a Kind type that isn't a proper type, but rather bite and put two environments into object types.

Still trying to wrap my head around the recursive typing...

@crusso crusso merged commit 743f6af into master Apr 23, 2019
@rossberg
Copy link
Contributor

Btw, I'd prefer if we did not get into the habit of merging PRs before the review is complete. ;)

@crusso
Copy link
Contributor Author

crusso commented Apr 24, 2019

I merged because it was blocking Matthew.

@matthewhammer
Copy link
Contributor

I merged because it was blocking Matthew.

Thanks @crusso; sorry @rossberg!

@matthewhammer
Copy link
Contributor

...using this now to reorganize the stdlib and PX implementation files.

@nomeata nomeata deleted the crusso/modules branch April 29, 2019 09:45
dfinity-bot added a commit that referenced this pull request May 21, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@406decfa...96448083](dfinity/ic-hs@406decf...9644808)

* [`d4db8d07`](dfinity/ic-hs@d4db8d0) bump nixpkgs to 7c786944f801745310578d1cfc019923396f830c ([dfinity/ic-hs⁠#163](https://github.com/dfinity/ic-hs/issues/163))
* [`31d535d2`](dfinity/ic-hs@31d535d) increase the number of allowed delegations in a request from 4 to 20 ([dfinity/ic-hs⁠#166](https://github.com/dfinity/ic-hs/issues/166))
* [`4a310c0d`](dfinity/ic-hs@4a310c0) support ic0.is_controller ([dfinity/ic-hs⁠#169](https://github.com/dfinity/ic-hs/issues/169))
* [`5fc27bdc`](dfinity/ic-hs@5fc27bd) do not include keep-alive header in httpbin response ([dfinity/ic-hs⁠#170](https://github.com/dfinity/ic-hs/issues/170))
* [`96448083`](dfinity/ic-hs@9644808) drop nix-build-uncached ([dfinity/ic-hs⁠#175](https://github.com/dfinity/ic-hs/issues/175))
dfinity-bot added a commit that referenced this pull request May 23, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@406decfa...a1b3f670](dfinity/ic-hs@406decf...a1b3f67)

* [`d4db8d07`](dfinity/ic-hs@d4db8d0) bump nixpkgs to 7c786944f801745310578d1cfc019923396f830c ([dfinity/ic-hs⁠#163](https://github.com/dfinity/ic-hs/issues/163))
* [`31d535d2`](dfinity/ic-hs@31d535d) increase the number of allowed delegations in a request from 4 to 20 ([dfinity/ic-hs⁠#166](https://github.com/dfinity/ic-hs/issues/166))
* [`4a310c0d`](dfinity/ic-hs@4a310c0) support ic0.is_controller ([dfinity/ic-hs⁠#169](https://github.com/dfinity/ic-hs/issues/169))
* [`5fc27bdc`](dfinity/ic-hs@5fc27bd) do not include keep-alive header in httpbin response ([dfinity/ic-hs⁠#170](https://github.com/dfinity/ic-hs/issues/170))
* [`96448083`](dfinity/ic-hs@9644808) drop nix-build-uncached ([dfinity/ic-hs⁠#175](https://github.com/dfinity/ic-hs/issues/175))
* [`c6fbe1f7`](dfinity/ic-hs@c6fbe1f) increase ingress_expiry in reference test suite ([dfinity/ic-hs⁠#176](https://github.com/dfinity/ic-hs/issues/176))
* [`a1b3f670`](dfinity/ic-hs@a1b3f67) add Connection: close header to httpbin ([dfinity/ic-hs⁠#178](https://github.com/dfinity/ic-hs/issues/178))
dfinity-bot added a commit that referenced this pull request May 25, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@406decfa...d3812ffc](dfinity/ic-hs@406decf...d3812ff)

* [`d4db8d07`](dfinity/ic-hs@d4db8d0) bump nixpkgs to 7c786944f801745310578d1cfc019923396f830c ([dfinity/ic-hs⁠#163](https://github.com/dfinity/ic-hs/issues/163))
* [`31d535d2`](dfinity/ic-hs@31d535d) increase the number of allowed delegations in a request from 4 to 20 ([dfinity/ic-hs⁠#166](https://github.com/dfinity/ic-hs/issues/166))
* [`4a310c0d`](dfinity/ic-hs@4a310c0) support ic0.is_controller ([dfinity/ic-hs⁠#169](https://github.com/dfinity/ic-hs/issues/169))
* [`5fc27bdc`](dfinity/ic-hs@5fc27bd) do not include keep-alive header in httpbin response ([dfinity/ic-hs⁠#170](https://github.com/dfinity/ic-hs/issues/170))
* [`96448083`](dfinity/ic-hs@9644808) drop nix-build-uncached ([dfinity/ic-hs⁠#175](https://github.com/dfinity/ic-hs/issues/175))
* [`c6fbe1f7`](dfinity/ic-hs@c6fbe1f) increase ingress_expiry in reference test suite ([dfinity/ic-hs⁠#176](https://github.com/dfinity/ic-hs/issues/176))
* [`a1b3f670`](dfinity/ic-hs@a1b3f67) add Connection: close header to httpbin ([dfinity/ic-hs⁠#178](https://github.com/dfinity/ic-hs/issues/178))
* [`d3812ffc`](dfinity/ic-hs@d3812ff) increase delegation expiry in tests ([dfinity/ic-hs⁠#182](https://github.com/dfinity/ic-hs/issues/182))
dfinity-bot added a commit that referenced this pull request May 26, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@406decfa...7a6259c2](dfinity/ic-hs@406decf...7a6259c)

* [`d4db8d07`](dfinity/ic-hs@d4db8d0) bump nixpkgs to 7c786944f801745310578d1cfc019923396f830c ([dfinity/ic-hs⁠#163](https://github.com/dfinity/ic-hs/issues/163))
* [`31d535d2`](dfinity/ic-hs@31d535d) increase the number of allowed delegations in a request from 4 to 20 ([dfinity/ic-hs⁠#166](https://github.com/dfinity/ic-hs/issues/166))
* [`4a310c0d`](dfinity/ic-hs@4a310c0) support ic0.is_controller ([dfinity/ic-hs⁠#169](https://github.com/dfinity/ic-hs/issues/169))
* [`5fc27bdc`](dfinity/ic-hs@5fc27bd) do not include keep-alive header in httpbin response ([dfinity/ic-hs⁠#170](https://github.com/dfinity/ic-hs/issues/170))
* [`96448083`](dfinity/ic-hs@9644808) drop nix-build-uncached ([dfinity/ic-hs⁠#175](https://github.com/dfinity/ic-hs/issues/175))
* [`c6fbe1f7`](dfinity/ic-hs@c6fbe1f) increase ingress_expiry in reference test suite ([dfinity/ic-hs⁠#176](https://github.com/dfinity/ic-hs/issues/176))
* [`a1b3f670`](dfinity/ic-hs@a1b3f67) add Connection: close header to httpbin ([dfinity/ic-hs⁠#178](https://github.com/dfinity/ic-hs/issues/178))
* [`d3812ffc`](dfinity/ic-hs@d3812ff) increase delegation expiry in tests ([dfinity/ic-hs⁠#182](https://github.com/dfinity/ic-hs/issues/182))
* [`40a46e2f`](dfinity/ic-hs@40a46e2) sync universal-canister with IC repo ([dfinity/ic-hs⁠#177](https://github.com/dfinity/ic-hs/issues/177))
* [`7a6259c2`](dfinity/ic-hs@7a6259c) decrease number of threads and request submission latency ([dfinity/ic-hs⁠#179](https://github.com/dfinity/ic-hs/issues/179))
dfinity-bot added a commit that referenced this pull request May 27, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@406decfa...a9f73dba](dfinity/ic-hs@406decf...a9f73db)

* [`d4db8d07`](dfinity/ic-hs@d4db8d0) bump nixpkgs to 7c786944f801745310578d1cfc019923396f830c ([dfinity/ic-hs⁠#163](https://github.com/dfinity/ic-hs/issues/163))
* [`31d535d2`](dfinity/ic-hs@31d535d) increase the number of allowed delegations in a request from 4 to 20 ([dfinity/ic-hs⁠#166](https://github.com/dfinity/ic-hs/issues/166))
* [`4a310c0d`](dfinity/ic-hs@4a310c0) support ic0.is_controller ([dfinity/ic-hs⁠#169](https://github.com/dfinity/ic-hs/issues/169))
* [`5fc27bdc`](dfinity/ic-hs@5fc27bd) do not include keep-alive header in httpbin response ([dfinity/ic-hs⁠#170](https://github.com/dfinity/ic-hs/issues/170))
* [`96448083`](dfinity/ic-hs@9644808) drop nix-build-uncached ([dfinity/ic-hs⁠#175](https://github.com/dfinity/ic-hs/issues/175))
* [`c6fbe1f7`](dfinity/ic-hs@c6fbe1f) increase ingress_expiry in reference test suite ([dfinity/ic-hs⁠#176](https://github.com/dfinity/ic-hs/issues/176))
* [`a1b3f670`](dfinity/ic-hs@a1b3f67) add Connection: close header to httpbin ([dfinity/ic-hs⁠#178](https://github.com/dfinity/ic-hs/issues/178))
* [`d3812ffc`](dfinity/ic-hs@d3812ff) increase delegation expiry in tests ([dfinity/ic-hs⁠#182](https://github.com/dfinity/ic-hs/issues/182))
* [`40a46e2f`](dfinity/ic-hs@40a46e2) sync universal-canister with IC repo ([dfinity/ic-hs⁠#177](https://github.com/dfinity/ic-hs/issues/177))
* [`7a6259c2`](dfinity/ic-hs@7a6259c) decrease number of threads and request submission latency ([dfinity/ic-hs⁠#179](https://github.com/dfinity/ic-hs/issues/179))
* [`a9f73dba`](dfinity/ic-hs@a9f73db) fix decoding compressed WASM modules during snapshotting ([dfinity/ic-hs⁠#184](https://github.com/dfinity/ic-hs/issues/184))
dfinity-bot added a commit that referenced this pull request May 28, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@406decfa...a9f73dba](dfinity/ic-hs@406decf...a9f73db)

* [`d4db8d07`](dfinity/ic-hs@d4db8d0) bump nixpkgs to 7c786944f801745310578d1cfc019923396f830c ([dfinity/ic-hs⁠#163](https://github.com/dfinity/ic-hs/issues/163))
* [`31d535d2`](dfinity/ic-hs@31d535d) increase the number of allowed delegations in a request from 4 to 20 ([dfinity/ic-hs⁠#166](https://github.com/dfinity/ic-hs/issues/166))
* [`4a310c0d`](dfinity/ic-hs@4a310c0) support ic0.is_controller ([dfinity/ic-hs⁠#169](https://github.com/dfinity/ic-hs/issues/169))
* [`5fc27bdc`](dfinity/ic-hs@5fc27bd) do not include keep-alive header in httpbin response ([dfinity/ic-hs⁠#170](https://github.com/dfinity/ic-hs/issues/170))
* [`96448083`](dfinity/ic-hs@9644808) drop nix-build-uncached ([dfinity/ic-hs⁠#175](https://github.com/dfinity/ic-hs/issues/175))
* [`c6fbe1f7`](dfinity/ic-hs@c6fbe1f) increase ingress_expiry in reference test suite ([dfinity/ic-hs⁠#176](https://github.com/dfinity/ic-hs/issues/176))
* [`a1b3f670`](dfinity/ic-hs@a1b3f67) add Connection: close header to httpbin ([dfinity/ic-hs⁠#178](https://github.com/dfinity/ic-hs/issues/178))
* [`d3812ffc`](dfinity/ic-hs@d3812ff) increase delegation expiry in tests ([dfinity/ic-hs⁠#182](https://github.com/dfinity/ic-hs/issues/182))
* [`40a46e2f`](dfinity/ic-hs@40a46e2) sync universal-canister with IC repo ([dfinity/ic-hs⁠#177](https://github.com/dfinity/ic-hs/issues/177))
* [`7a6259c2`](dfinity/ic-hs@7a6259c) decrease number of threads and request submission latency ([dfinity/ic-hs⁠#179](https://github.com/dfinity/ic-hs/issues/179))
* [`a9f73dba`](dfinity/ic-hs@a9f73db) fix decoding compressed WASM modules during snapshotting ([dfinity/ic-hs⁠#184](https://github.com/dfinity/ic-hs/issues/184))
dfinity-bot added a commit that referenced this pull request May 30, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@406decfa...a9f73dba](dfinity/ic-hs@406decf...a9f73db)

* [`d4db8d07`](dfinity/ic-hs@d4db8d0) bump nixpkgs to 7c786944f801745310578d1cfc019923396f830c ([dfinity/ic-hs⁠#163](https://github.com/dfinity/ic-hs/issues/163))
* [`31d535d2`](dfinity/ic-hs@31d535d) increase the number of allowed delegations in a request from 4 to 20 ([dfinity/ic-hs⁠#166](https://github.com/dfinity/ic-hs/issues/166))
* [`4a310c0d`](dfinity/ic-hs@4a310c0) support ic0.is_controller ([dfinity/ic-hs⁠#169](https://github.com/dfinity/ic-hs/issues/169))
* [`5fc27bdc`](dfinity/ic-hs@5fc27bd) do not include keep-alive header in httpbin response ([dfinity/ic-hs⁠#170](https://github.com/dfinity/ic-hs/issues/170))
* [`96448083`](dfinity/ic-hs@9644808) drop nix-build-uncached ([dfinity/ic-hs⁠#175](https://github.com/dfinity/ic-hs/issues/175))
* [`c6fbe1f7`](dfinity/ic-hs@c6fbe1f) increase ingress_expiry in reference test suite ([dfinity/ic-hs⁠#176](https://github.com/dfinity/ic-hs/issues/176))
* [`a1b3f670`](dfinity/ic-hs@a1b3f67) add Connection: close header to httpbin ([dfinity/ic-hs⁠#178](https://github.com/dfinity/ic-hs/issues/178))
* [`d3812ffc`](dfinity/ic-hs@d3812ff) increase delegation expiry in tests ([dfinity/ic-hs⁠#182](https://github.com/dfinity/ic-hs/issues/182))
* [`40a46e2f`](dfinity/ic-hs@40a46e2) sync universal-canister with IC repo ([dfinity/ic-hs⁠#177](https://github.com/dfinity/ic-hs/issues/177))
* [`7a6259c2`](dfinity/ic-hs@7a6259c) decrease number of threads and request submission latency ([dfinity/ic-hs⁠#179](https://github.com/dfinity/ic-hs/issues/179))
* [`a9f73dba`](dfinity/ic-hs@a9f73db) fix decoding compressed WASM modules during snapshotting ([dfinity/ic-hs⁠#184](https://github.com/dfinity/ic-hs/issues/184))
mergify bot pushed a commit that referenced this pull request Jun 6, 2023
## Changelog for ic-hs:
Branch: master
Commits: [dfinity/ic-hs@406decfa...9152a0ff](dfinity/ic-hs@406decf...9152a0f)

* [`d4db8d07`](dfinity/ic-hs@d4db8d0) bump nixpkgs to 7c786944f801745310578d1cfc019923396f830c ([dfinity/ic-hs⁠#163](https://github.com/dfinity/ic-hs/issues/163))
* [`31d535d2`](dfinity/ic-hs@31d535d) increase the number of allowed delegations in a request from 4 to 20 ([dfinity/ic-hs⁠#166](https://github.com/dfinity/ic-hs/issues/166))
* [`4a310c0d`](dfinity/ic-hs@4a310c0) support ic0.is_controller ([dfinity/ic-hs⁠#169](https://github.com/dfinity/ic-hs/issues/169))
* [`5fc27bdc`](dfinity/ic-hs@5fc27bd) do not include keep-alive header in httpbin response ([dfinity/ic-hs⁠#170](https://github.com/dfinity/ic-hs/issues/170))
* [`96448083`](dfinity/ic-hs@9644808) drop nix-build-uncached ([dfinity/ic-hs⁠#175](https://github.com/dfinity/ic-hs/issues/175))
* [`c6fbe1f7`](dfinity/ic-hs@c6fbe1f) increase ingress_expiry in reference test suite ([dfinity/ic-hs⁠#176](https://github.com/dfinity/ic-hs/issues/176))
* [`a1b3f670`](dfinity/ic-hs@a1b3f67) add Connection: close header to httpbin ([dfinity/ic-hs⁠#178](https://github.com/dfinity/ic-hs/issues/178))
* [`d3812ffc`](dfinity/ic-hs@d3812ff) increase delegation expiry in tests ([dfinity/ic-hs⁠#182](https://github.com/dfinity/ic-hs/issues/182))
* [`40a46e2f`](dfinity/ic-hs@40a46e2) sync universal-canister with IC repo ([dfinity/ic-hs⁠#177](https://github.com/dfinity/ic-hs/issues/177))
* [`7a6259c2`](dfinity/ic-hs@7a6259c) decrease number of threads and request submission latency ([dfinity/ic-hs⁠#179](https://github.com/dfinity/ic-hs/issues/179))
* [`a9f73dba`](dfinity/ic-hs@a9f73db) fix decoding compressed WASM modules during snapshotting ([dfinity/ic-hs⁠#184](https://github.com/dfinity/ic-hs/issues/184))
* [`64c19a95`](dfinity/ic-hs@64c19a9) bump nixpkgs to eaf03591711b46d21abc7082a8ebee4681f9dbeb ([dfinity/ic-hs⁠#189](https://github.com/dfinity/ic-hs/issues/189))
* [`9152a0ff`](dfinity/ic-hs@9152a0f) add date header to httpbin responses and make http header names lower-case ([dfinity/ic-hs⁠#188](https://github.com/dfinity/ic-hs/issues/188))

Includes and closes #3915. Reason: `ic-hs` and `nixpkgs` must be in sync, so that the artefact caching can work.
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.

5 participants