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

Support for "active elements" #67

Open
joshsh opened this issue Jul 11, 2023 · 1 comment
Open

Support for "active elements" #67

joshsh opened this issue Jul 11, 2023 · 1 comment
Labels

Comments

@joshsh
Copy link
Member

joshsh commented Jul 11, 2023

One of the major benefits of moving to LambdaGraph as SmSn's underlying data model (#65) is that programs will be valid elements in the graph. That means that queries can be naturally embedded in the graph as further elements. However, these elements will be somewhat more complicated to work with. In particular, we will need:

  1. A way to display programs in a user-friendly format
  2. A way to interpret programs in the context of the graph
  3. A way for users to define their own programs and easily debug them

While (1) and (2) are straightforward (and will be inherited directly from Hydra), (3) could be difficult without IDE integration. It is simply too easy to define invalid programs in a Hydra DSL -- or indeed any strongly-typed language -- without spotting the problem until you attempt to run the program. Perhaps the expectation should not be that developing programs is part of the same user experience as that of jotting down notes in Emacs or another client. Instead, the user makes use of their IDE for developing programs, but includes the source directory (or a generated directory) in their graph.

cc @jmatsushita

@joshsh joshsh added the v2 label Jul 11, 2023
@joshsh
Copy link
Member Author

joshsh commented Jul 11, 2023

Note: the same is probably true of graph schemas. While they can be included in the graph once written, they are best developed using Hydra's Types DSL with the help of an IDE.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant