TADS 3.1.4 Release?

And you, as well. There is no “angst” nor “irateness” involved in my feelings about this. I was reacting to your comment that the developer [of Inform] “seems to have no interest” in interacting with the community. I’m saying that is exactly the case; he develops Inform 7 and has historically updated it (sometimes with years between iterations) and other than the proxies he’s put in place to answer questions and the bugfix website, he doesn’t feel the need to interact with users beyond that. He owes nothing to the community and is under no obligation to release the code as open source.

re: How do I make the distinction and how do I know? Admittedly I know much less about TADS than I do about Inform, but please re-check the definition of “seems” and put it together with the modifier “increasingly” as it relates to the overall topic of this thread. “Abandonware” admittedly is probably a bit of a loaded term; how about “software that seems to be no longer developed nor supported”?

My personal feelings (not being a user of TADS): I don’t know how much further parser gaming can be pushed. Anyone skilled in Inform 7 can at this point probably make it do reasonably anything in the text-narrative gamespace. It’s like the point when first-person games hit photorealism at 90 FPS…the experience begins to depend less on the “hardware” and more on the artistic skill of the designer.

Inform 7 runs on top of Inform 6. In fact, you can drop into I6 code within an I7 source text if you want access to the bare metal and wires and do some special tricks without the safety rails of I7. Inform 7 just makes the “code” of Inform 6 a lot more understandable for people who tend to be more “writerly” than “code-y”

One difference between Inform 6 and Inform 7 is that Inform 6 is older, so there are works written in Inform 6 from before Inform 7 existed.

Welllll, there are parser things that I could see happening without having to develop full AI or something. You know that a little hobbyhorse of mine is the idea that the parser could be dynamic–objects could have generated descriptions and those descriptions could be understood by the parser, in a way that goes beyond Inform’s “Understand by a property” mechanism (though that does a lot of it). And I could imagine a system that improves on a keyword model somehow. But neither of these would be easy to develop from Inform. I can imagine a lot more happening with Inform disambiguation, which is in one of the trickier parts of the parser.

(As for new experiments, c’mon, I had that game about commanding multiple NPCs simultaneously, and it even had an incredibly irritating cosmetic bug that manifested every turn! Truly old school.)

Can you expand on this a bit more? I’m working on a parser for a new story engine and I’m certainly willing to cannibalize as many good ideas as I can. My goal is a parser that has syntax trees that the author can modify to suit their project.

No guarantees about if or when this will see the light of day. (I’m a very slow programmer.)

I’m interested too. My parser has seen the light of day, but I always like to improve.

(maybe open a new thread to keep this one on topic?)

Opening a new thread is a great idea–this has gone pretty far afield! Here’s the thread.

[EDITED to fix the link to the new thread.]

I see that I started this thread a little over two months ago, when I was first exploring parser-IF tools. This is my personal, short history of investigating these different tools:

I’ve been programming pretty regularly in traditional languages for some twenty-odd years now, which biases my preferences to what I already know and the tools I use.

I like TADS 3, its syntax and libraries, and was initially my first choice. I ended up not using it–not so much because Mike Roberts has moved away from the scene, but because improvements and bug fixes that he made since 3.1.3 are stashed away in his private tree somewhere, and unavailable to the public at large. The TADS 3 C++ codebase is large-ish, and the build process a bit involved on Windows, but these could certainly be learned and overcome with time and effort: I felt frustrated, though, that the first bug-fixes I’d be working on are ones that he already fixed but didn’t release.

Then I tried Inform 7, because it’s the dominant tool, by reading the “Writing with Inform” manual in its entirety and then starting through the Recipe Book examples. Given my traditional programming background, the faux-natural-language syntax of I7 was very offputting, and prevented me from using modern tooling I’m accustomed to (more on that below). In the way that parser-IF is sometimes criticized for providing a false illusion of linguistic freedom to the player, so I7 seems to provide an illusion of natural-language freedom to the author, while nevertheless actually requiring its own idiosyncratic phrasings and word-orderings. And the compiler is closed-source, so one cannot answer questions by delving into the “ultimate authority” (the compiler code itself).

Then, finally, backwards to I6. From the tally of the games made with it, clearly it’s a capable-enough system for the types of parser games–both traditional and experimental–that historically defined the genre. The latest versions of both the compiler and library are available (and actively maintained) on GitHub, and within a month I could understand their workings well enough both to answer my own questions like “How do you represent the single-quote character in I6 source?” (answer: [size=150]’’’[/size], not [size=150]’’’[/size] as in C/Java), and to submit small patches to the maintainers (ex. to raise the number of verbs usable in Glulx from 256 to 65536, something already available in I7).

Tooling: the conventional syntax of I6 allows one to configure editors and IDEs to navigate the source very conveniently. I can have my IDE readily show me all the source locations where “UndergroundLabRoom” is referenced, or all the objects that override the “Take” action; I can view the function call-tree for parser routines, to see how they really work, even if undocumented in the manual; etc.

So it seems good that I7 and I6 can co-exist, for the different sorts of folk who come into the scene, each looking for a different philosophy of IF system.



For what’s it’s worth, there will be a meetup in June where Graham Nelson will speak about the advancement of Inform, so I believe we can safely say that Inform is not dead.

It doesn’t address anything about TADS, but at least it should clarify the situation a bit.

1 Like

I’m happy to be wrong about G. Nelson and to know he is still actively involved! Daily social interaction can be a huge drain on time (I’m experiencing this firsthand) and that’s what I had in mind by “active in the community”.

Thanks for the news. I don’t keep up with live events very much at all.

Actually, as I was writing my response, I thought “AI”…which would be absolutely awesome. I think that’s what Emily Short was attempting with Versu I might venture (for IF) that AI is a thing logistically that would be easier and more interesting simulated cleverly in the context of a story than as a full-blown operating game system. [rant-But oho!]Don’t think I haven’t tried it - I had a prototype where my NPCs had “to do” boxes as part of their bodies and there were objects they would carry which would affect their behavior and they could pass them between each other.[/rant]

I have played with description generation and it’s fun and works well. I tend to just write a whole lot of synonyms so the parser recognizes an object even by words the player might not yet understand it by.



This has been an interesting discussion, more for what it shows about how people conflate fact and opinion and how they engage on the same. My own discipline, testing and quality assurance, is (for better and worse) filled with notoriously fractious personalities, often bordering on manic defensiveness. And that’s on both sides of whatever issue they have decided to plant their respective flags on. They then engage in battles over hills that no one is really trying to take anyway.

This is certainly something I’ve observed in the interactive fiction community going back well over two decades now. And I don’t say that to cast aspersions or somehow hold myself above it. I’ve certainly had pointed opinions on how various things have developed. (Adv3Lite in TADS being one of those, as some may recall.)


The storm that started all this may be this notion that Graham and Mike are “uninvolved” in their respective systems. If I’m reading any sort of consensus correctly, people seem to agree on that with Mike and TADS, disagree on that with Inform and Graham. I’ll take that state of affairs as a given. I think what some are worrying about is that TADS atrophied when its creator (at least seemingly) stopped having a visible say in anything; when decisions were delegated down to others, and those decisions may have lacked a coherent design strategy and thus fragmentation of (and quality issues with) the ecosystem became more possible. People may be worrying about that same state of affairs eventually happening with Inform 7.


Whether that’s true or not, I can’t say. But I’m also not sure how much it matters because all of this, by which I mean, text-based interactive fiction, is a hobbyist endeavor. It’s a hill no one is really trying to take in any substantive way. I say that not to denigrate it but just to put it in perspective.

So all this verbal fighting (I think I saw “angst” mentioned once or twice) is probably unnecessary. Given that this is a hobbyist sort of thing, if you enjoy it, do it. If you don’t, don’t do it. If the system you prefer happens to be “dead” or “abandoned” or whatever other semantic nitpick people want to froth at the mouth over, pick another one. And if none of what’s left appeals to you, then realize you are probably pursuing the wrong hobby. But also realize even “dead” systems can have a certain life to them for a long time, as long as they basically work.

Having different opinions is a good thing. Having healthy (rather than reactionary) debate about those opinions is an even better thing.


Taking one of Jesse’s points:

Indeed! This is what I’m experimenting with now, essentially going back to I6 for a lot of reasons. Somewhere in the above fracas was mentioned the notion of more experimentation with Inform 6 than Inform 7. While I think the same level of experimentation is possible with both, having been with the IF community for multiple decades now, I do agree that Inform 6 has tended to see more diverse experimentation. But I also think a large part of that is the “different philosophy” Jesse mentions and how that philosophy manifests in the interface of both systems. By “interface”, I don’t just mean an “IDE” here, but rather the interface of the code itself. The intersection of human readable and machine expressive does matter when it comes to how people experiment.


(Maybe?) along the subject of this thread, the reason I experimented with I6, then I7, then back to I6 (and ultimately not TADS) is simply that the ecosystem is wider for the Ix variety. For me, that’s currently the case whether Graham is “involved” or not.

Now, whether the converse is true for TADS is not something I can say, but I do think that question is interesting and I also do think that TADS can serve as a cautionary aspect, at least in some respects, for Inform. That opinion can be held and maintained without denigrating Inform, TADS, or their creators.

I somehow completely messed up the link to the new thread about dynamic parsers. Here’s the thread.

I couldn’t help but throw in two cents for next release. I’m not sure if this is possible or not, but customization of the exe game window would be really cool. It wouldn’t have to be super big until later if desired to go bigger with customization.

  • Allow us to remove menu or sub menu items: Remove add/delete themes, remove themes, remove edit themes.
  • Allow us to force start in a theme.
  • Allow us to change the color and screen color of console theme programmatically
  • Override save system and call it with a function.

If these are already features please let me know. But the idea is if we can release Tads 3 games professionally maybe a bit more professional customization would be suitable for a pristine system. I think if we could personalize the console feel Tads 3 would literally be the best.

One annoying thing. There are like 5 parser commands that return information but none of them return the full command that was last typed by the player. This is extremely obvious as to why it would be useful, and extremely not-understandable why it’s not right there.

Did you consider making webui version of the game? I know it is not the same as a standalone exe file, but when it comes to customization, you have almost unlimited possibilities.

No, just windows for now. Although I can see how it would be good for styling. I just found blasphemy in the documentation:

“In the traditional UI, the user installs a TADS interpreter on her machine,”

Now we’re all ‘hers’ lol.


Putting on my mod hat, if it’s not “blasphemy” when someone chooses to use “him” to refer to a person of unknown gender (since it makes us all into “hims”), then it isn’t blasphemy when someone chooses to use “her” to refer to a person of unknown gender.

1 Like

When I write documenation, I prefer to use epicene pronouns throughout: they/them/their/theirs/themselves. Check out this handy chart to avoid “pronoun trouble”


For more information on pronoun trouble see the Looney Tunes cartoon, Rabbit_Seasoning.

And, yes, gender neutral pronouns are important. If you are male, you may not realize what a drag it is to read a comp sci or math textbook (or other books on stereotypically male interests.) where all the examples are “he.” It just makes half the population feel excluded, which is not enjoyable. I don’t see that “she” is a much better option, but I do at least appreciate that the author is trying to level the playing field a bit.

I think most the world is used to seeing ‘he’ including woman. I have nothing against woman, but I’m used to reading bible. It would never use ‘she’ for ‘he’ on purpose. For thousand and thousands of years it’s been mankind. That’s a lot of conditioning to compete with. I know that’s getting opinionated but bare with me on the general consensus thing, which in the end effects popularity. Documentation is not scripture and we don’t all believe, that’s fine. But I would say like the last poster said gender neutral is the norm for documentation. I would say 90% of men do not want to see ‘her’ in place of the user so therefore don’t do it. You can, it might not be a mistake, but prepare to get groans from 90% of your male readers. If you don’t want to put them off, or the woman, use gender neutral for smooth sailing.

If you’re going to make etymological arguments based on the Bible, please cite the Aramaic. :confused:

EDIT-ADD: Also, move to off-topic.

1 Like

Doubtful, as “mankind” is an English word, and English hasn’t been around for 1000’s of years. Don’t know what the orginal Hebrew or Greek would have been or if those languages have the equivalent of a singular they.

Actually, the history of the singular they form is quite old and using he for singular they, is comparatively more recent. I found this article on the topic fascinating: https://en.wikipedia.org/wiki/Singular_they#Usage

They (not he :slight_smile: ) even give some examples as early as the 1300’s.

So, good news, we only have to overcome our grade school education and perhaps a few centuries. We can do it. Every generation recreates the world anew. I, too, was taught that a sentence like, “A good person does not eat his dessert before his vegetables,” was more correct than, “A good person does not eat their dessert before their vegetables.”* I used to think that people who used “they” and “their” in the singular sounded ignorant because I had been taught better. I don’t believe that anymore. In the 90’s I used to write out “he/she” and “his/her,” which was always awkward. I was so happy to discover the acceptability of singular they.

Lest anyone think this veering too far off topic, every good piece of IF needs good writing and the more inclusive your writing style is the larger your audience will be.

I will get off the soapbox now. Thanks for listening.

*I eat dessert whenever I feel like it. Try not to judge.