TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

TLA+ Formal Modeling and Programmers: Avoiding the Imperative “Brainwash”

4 pointsby doonesburyover 4 years ago
I use the term brainwash as satire. Of course, the programmer imperative sensibility is quite important if you want to ship product, which is the bottom line.<p>But I&#x27;ve found the imperative mentality in my own work on TLA+ modeling initially confusing. I offer the following write-up to help clarify several important points (focusing on TLA+ Pluscal) in a technical note with example models, Python code. It&#x27;s the first in a series on modeling a distributed key-value store I&#x27;m working on:<p>https:&#x2F;&#x2F;github.com&#x2F;rodgarrison&#x2F;tla_note1<p>Beyond basics I also give a recipe to use TLA+ at the command line for those of us who prefer it over IDEs. TLA&#x27;s toolbox IDE is nice; still I prefer command line development when possible.<p>In the paper:<p>- program behavior versus model states<p>- deadlock<p>- termination<p>- coverage (label) checks<p>- setting up TLA+ on the command line<p>Hope it helps. As I note in the abstract I got some help of my own from the TLA Google Group.

1 comment

quickthrower2over 4 years ago
For the uninitiated - what is TLA?
评论 #25369229 未加载