-
Notifications
You must be signed in to change notification settings - Fork 1
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
Support meta-nodes #20
Comments
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
Basically a `let-multi` but where you don't include a namespace in the names, and it's clearer the intent of the user. Part of #20.
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
Just sketched in, not clear if it works yet. Part of #20.
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
Now it's basically like `seeds/example-utility#expect` in that it's an array of expected parameters. Part of #20.
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
The `var` references to arguments will need to include `arg` so it's better to be consistent. Part of #20.
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
If set, it may be a subset of the enumerated arguments and if those values aren't set when called then it will set them to the default. Part of #20.
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
… not of type function. They'll also throw if it's not a seedReference. Part of #20.
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
jkomoros
added a commit
that referenced
this issue
Jul 29, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Maybe meta-nodes should be seed packets, with a defined '' entrypoint
This can be covered (mostly) by having a let with a seed-reference to the sub-seed, and then the sub-seed uses
var
within. But that's confusing about ways to use it and which variables it expects to be set.Perhaps some kind of special parameter on a seed that describes the environment it expects to be set? And then there can be some tooling to complain if those aren't set. (or it could just be convention, a utility seed of
expect
which takes an object, and then verifies that getting the var for each is not undefined.)keys
let
throw
(to throw an error)call
function
function
has defaultscall.function
be typed to only be allowed to be a seed functioncall.function
throw if the seed reference is not to a functionarg:
namespace (becausevar
will have to have it so it's confusing)call
fail if the sub-object is not afunction
?)the convention is to pass parameters with an
arg:
prefix.Ideally there'd be more than just convention, so there could be toolnig around it.
E.g. a
call
seed, which is basically alet-multi
with a nested seed reference for block. And afunction
seed type that is basically anexpect
node but with a defined set of parameters and defaults. These don't do anything semantically except make it very clear to tooling what the intention is, allowing listing them as entrypoints, detecing missing parameters, etc.function
should have an array of arguments, prefixed witharg:
, calle dargs. Anddefaults
, which are a subset of args. And any that don't have defaults are required and will throw.Should
call
require thearg:
namespace or not?The text was updated successfully, but these errors were encountered: