question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Better separate models and specs

See original GitHub issue

We want specs to describe systems. Verification with model-checkers such as TLC is import, but ultimately a secondary concern. We do not want users to write specs that are amenable to model-checking. The primary purpose of the Toolbox’s model editor is to make it convenient to check specs without amending them for model-checking. Until (if ever) vscode-tlaplus has first-class support for TLC models, I suggest to adopt the convention of the pre-toolbox era: Where vscode-tlaplus currently creates a Foo.cfg config file for a Foo spec, vscode-tlaplus should create the pair MCFoo.tla and MCFoo.cfg (with the necessary boilerplate such as EXTENDS Foo, …).

/fyi @xxyzzn

Issue Analytics

  • State:open
  • Created 3 years ago
  • Reactions:1
  • Comments:17 (11 by maintainers)

github_iconTop GitHub Comments

1reaction
JoshuaRowePhantomcommented, May 13, 2022

I consider myself fairly proficient with TLA+, but not so much with the .cfg files since I’m used to using the Toolbox. I’m trying to make the switch to VSCode, and the mapping between the Toolbox way and the VsCode way is eluding me. I do find that having several Toolbox models helps me make tradeoffs that I can communicate to other engineers by checking them in.

Whether or not support is added for toolbox-style models, at least documenting how to achieve a similar result would be helpful for users trying to make the transition like myself.

0reactions
lemmycommented, Oct 18, 2022

There is no support to inherit from configs. Let S.tla be the “underlying” spec and S.cfg the corresponding config. As a workaround, you can reuse S.cfg when checking the model spec MCS.tla by running TLC with tlc -config S.cfg MCS.tla. In VSCode, this amounts to selecting “TLA+: Check model with TLC using non-default config...” in the command palette.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Model Specification: Choosing the Best Regression Model
Model specification is the process of determining which variables to include and exclude from a model. Learn how to choose the best regression...
Read more >
Tesla Model X vs. Tesla Model Y Specs Comparison
Here, we take a look at the similarities and differences between the Model X and Y based on the data in order to...
Read more >
Car Make and Model: What Does it Mean? - ValuePenguin
Cars from the same make with the same body style can have drastically different values, so just knowing you have or are looking...
Read more >
Compare iPhone Models - Apple
Compare features and technical specifications for the iPhone 14 Pro, iPhone 14 Pro Max, iPhone 14, iPhone 14 Plus, iPhone SE, and many...
Read more >
Tesla models compared: Model S, Model 3, Model X, Model Y ...
Tesla has taken more than its fair share of headlines over the past few years. ... There are four current on-sale models, with...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found