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

Primitives for creating/modifying/editing code without opening a model instance #128

Open
arthurhjorth opened this issue Jul 19, 2018 · 0 comments

Comments

@arthurhjorth
Copy link
Member

arthurhjorth commented Jul 19, 2018

Currently we can only edit child model code if we use either of the ls:create- commands. That's super helpful if people are working with child model code. However, there are two ways in which I'd really like to see this extended:

  1. I would really like to see a small change where we have a command that calls this code but without having to open a model in a LevelSpace system. It could be as simple as just creating a child model and discarding it again. Yes, I know it seems a bit silly to have a prim that just calls ls:create-<> and then ls:close, but it does feel like a different function to me. Also, it would be possible to integrate with my next idea for an extension:

  2. I'd like it to also be able to open a savable version of the default model, making it possible to write LevelSpace models with just one instance of NetLogo open at a time.

I imagine the usecase something like:

User calls the prim.
If model already exists, LS calls ls:create, opens an editable tab with the model code, then ls:close.
If not, LS informs the user that the model does not exist and prompts whether to create a new model.
If yes, LS opens the default model, and then forces the user to save immediately in the current working directory since, unlike regular NetLogo, LevelSpace needs the model to exist in a saved form in order to load it as a child model.
If no, LS exits out.

What do you think, @qiemem ?

Presumptuously, what should we name it?

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

No branches or pull requests

1 participant