Skip to content

Infrastructure for calling nodes as lambdas with unique arguments #883

Description

@Keavon

Because a Graphene document is turned, at graph compilation time, into a static call graph where each input to a node (its construction argument) is hardcoded in the node's struct as the result of evaluating its input node with static inputs, we can't easily make runtime calls to other nodes with varying inputs. Maybe something equivalent to dynamic dispatch can be employed to solve this limitation, but this will require some discussions with @TrueDoctor about Graphene architecture. The approach taken involves generalizing () and Footprint call arguments with Contexts which allows attaching custom key-value pair data to the call argument when given to predecessor nodes. This can then support varying that data between each repeated call to a predecessor node, like giving a unique index: usize to each iteration's call of a predecessor node.

Activity

  1. added
    WebInvolves web programming (TypeScript, Svelte, CSS)
    DesignInvolves UI, UX, icon, or graphic design work
    on Dec 12, 2022
  2. moved this to Medium-Term in Task Boardon Mar 18, 2023
  3. moved this to Medium-Term in Task Boardon May 31, 2023
  4. changed the title [-]Add a UI for lambdas in the node graph[/-] [+]Lambda nodes[/+] on Dec 30, 2024
  5. added
    GrapheneInvolves the node graph system/engine used by Graphite
    and removed
    WebInvolves web programming (TypeScript, Svelte, CSS)
    DesignInvolves UI, UX, icon, or graphic design work
    on Dec 30, 2024
  6. moved this from Medium-Term to Short-Term in Task Boardon Dec 30, 2024
  7. TrueDoctor commented on Jan 4, 2025

    @TrueDoctor
    Member

    We do have a provision for this which are the call arguments which can be supplied at runtime but using this for complex inputs would be a bit annoying atm

  8. moved this from Short-Term to Ongoing Projects in Task Boardon Feb 2, 2025
  9. changed the title [-]Lambda nodes[/-] [+]Tracking Issue: Lambda nodes[/+] on Mar 2, 2025
  10. moved this from Ongoing Projects to Completed This Milestone in Task Boardon Mar 29, 2025
  11. Keavon commented on Mar 29, 2025

    @Keavon
    MemberAuthor

    Closed by #2232.

  12. changed the title [-]Tracking Issue: Lambda nodes[/-] [+]Infrastructure for calling nodes as lambdas with unique arguments[/+] on Mar 29, 2025
  13. added this to the Milestone 46 milestone on Apr 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

GrapheneInvolves the node graph system/engine used by Graphite

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions