NetLogo / LevelSpace

This is the LevelSpace extension repository. LevelSpace allows you to run NetLogo models |: from inside NetLogo models :|
Other
19 stars 8 forks source link

Ordering of ls:ask #131

Closed arthurhjorth closed 6 years ago

arthurhjorth commented 6 years ago

I forgot. Did we decide to unorder ls:ask? I think we should. In the circumstances where people want to order it, they can sort ls:models just like they would have to do with turtles, and if they want to save "special models" that should be treated uniquely, they can save them in variables, like they would do with turtles.

This would need to be changed in the code though, so our documentation aligns with the paper. :)

arthurhjorth commented 6 years ago

Oh, now it is finally coming back to me. So yeah, we lose paralellization. Can we introduce a ls:ask-ordered and randomize ls:ask? Did we already decide on that?

arthurhjorth commented 6 years ago

Btw, this is a good example of primitive design - we could discuss it in the workshop later today.

arthurhjorth commented 6 years ago

closed after conversation with @qiemem

qiemem commented 6 years ago

Just to make sure the information is preserved, there are a couple reasons why ls:ask and ls:of work the way they do. First, note that ls:ask is actually non-deterministic: when asking multiple models, it will typically run things in parallel. ls:of always returns ordered results, but executes in a non-deterministic order as well. That said, when they don't run parallel, execution happens in order. Okay, with that out of the way, the reasons it works the way it does:

I think that's everything. I'll update this issue if I remember any other considerations.