SLang 2.3.1release2
Lang is a story-creation tool, primarily of interest to writers. SLang stands for "Story-Language". It is a story-creation tool, similar to an index-card tool but much more sophisticated. It allows you to break your story down into "events", each of which will have a block of text describing the event.
In addition you can have any number of alternative versions of these text blocks for each event. SLang allows you to mark an event as "excluded" rather than having to delete it from the project, so you can come back to it later.
SLang allows you to define special rules for each event called dependency-relationships. These define which events depend on which others. SLang can then examine all the rules, and then put all the events in a sensible order automatically, and show you how it made its decisions.
Alternatively you can put the events in order manually. Either way, you can then generate an RTF or TXT file containing the whole story. Because of the way SLang allows you to specify dependency-relationships between events, SLang allows you to experiment with which events get included in the story and which don't, so you can experiment, generating alternative routes through your story.
The "Find shortest/longest path" utility finds out what events are required to reach a specified event in the story, and lists them in chronological order, thereby enabling you to deal with individual threads.
SLang can now export to ScriptMaker (a screenplay tool, free from the same website). This export facility creates an annotated "framework" for your script.