Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

IF Language

64 views
Skip to first unread message
Message has been deleted

Q

unread,
Jan 6, 2007, 4:43:55 PM1/6/07
to
Hi All. What are the strengths and weaknesses of the most popular IF
languages? Thanks.

Jeff Nyman

unread,
Jan 6, 2007, 4:45:36 PM1/6/07
to
"Q" <quddusa...@hotmail.com> wrote in message
news:1168118886....@v33g2000cwv.googlegroups.com...
> Hi all. Which IF Languages would be the most powerful one?

"Powerful" is a vague term. "Most" is a vague qualifier on that vague term.
All you're really going to get with this kind of question are a bunch of
more-or-less informed opinions. I'm not sure how much that will help you.

Systems like Inform 6, Inform 7, TADS 2, TADS 3, and Hugo (to name a few)
are all "powerful" and all are well-represented in terms of people actively
using those languages. The extent to which that power actually benefits you
will depend largely on what you want to do and the time you are willing to
invest in learning the systems. To a certain extent it will also depend on
the style you prefer when programming (or, at least, the style you find you
can adapt to).

- Jeff

Jeff Nyman

unread,
Jan 6, 2007, 4:53:34 PM1/6/07
to
"Q" <quddusa...@hotmail.com> wrote in message
news:1168119835....@11g2000cwr.googlegroups.com...

> Hi All. What are the strengths and weaknesses of the most popular IF
> languages? Thanks.

This is a question that you might come to answer yourself if you look at the
languages for a bit. Again, it can be more or less opinion because what
someone considers a "strength" of a language, another might consider a
"weakness" (or, at least, a "barrier" to using and/or learning the
language).

For example, all of the languages I mentioned in my previous post allow the
creation of non-player characters. Many would argue (and I would be one of
them) that TADS 3 probably offers the most "powerful" system for creating
NPCs, in terms of being able to actively manage the state of these
characters through the game and have them respond intelligently. Others
might argue that you can do the same things in Inform 7. How easily you can
do these things might be where someone draws the line between "strength" and
"weakness."

That's speaking to what the language allows. However, what about the
language that you construct these things in? Some like Inform 7 because of
the natural language interface it presents to the user. Others dislike that
very aspect of Inform 7 while otherwise finding the language very useful.
Some are hindered by the sheer size of the game library that comes with TADS
3 because it is so comprehensive. Others are not hindered by that. So,
again, where the line is drawn between "strength" and "weakness" will depend
on the person.

Another example might be the inclusion of media elements that the language
allows, which then also gets into the interepreter support for that
language, which then also gets into how widely ported the interpreters for
that language is. So, again, where a language or system is perceived as
"weak" or "strong" may depend on how much these things matter to the
individual person.

Rather than talking about putative strengths and weaknesses, it's usually
best (I've found) to consider how effective you find a language in relation
to what you want to do with it and then consider how efficient you find a
language by how easily you can do those things.

- Jeff


Q

unread,
Jan 6, 2007, 5:04:35 PM1/6/07
to
Thanks for a comprehensive answer. I was trying to work out which
language I can do the most with (even if its hard to program). Thanks
again - and I see this is going to be a good forum to come back to if I
run into problems if everyones is as generuos as you.

Jeff Nyman

unread,
Jan 6, 2007, 5:18:38 PM1/6/07
to
"Q" <quddusa...@hotmail.com> wrote in message
news:1168121075....@q40g2000cwq.googlegroups.com...

> Thanks for a comprehensive answer. I was trying to work out which
> language I can do the most with (even if its hard to program). Thanks
> again - and I see this is going to be a good forum to come back to if I
> run into problems if everyones is as generuos as you.

I would personally recommend looking at TADS 3 and Inform 7, if nothing else
because they have the following:

(1) a great deal of up-to-date documentation
(2) a great deal of active community participation
(3) a great deal of available source code and examples

Both of these languages also provide a good contrast between different
levels of how to develop interactive fiction. Inform 7 takes the route of
providing a fairly minimal world model and presents you with a language that
attempts to cover some of the more programmatic concepts behind a natural
language "shell" (for lack of a better term). TADS 3 takes the route of
providing a very extensive world model and a language that hides none of the
outright programming. (Writing in TADS 3 is very akin to writing in Java or
maybe C#.) Inform 7 takes the approach of giving you a full development
environment -- that it largely expects you to use -- whereas TADS 3 provides
a more minimalist such environment -- where usage is very much optional.
These two systems are very much a study in contrasts in a lot of ways, even
though what they are capable of producing is largely similar.

I should note that these two systems are the two most current incarnations
of previous systems (TADS 2 and Inform 6, respectively). These earlier
systems are still available and still supported. I probably wouldn't
recommend TADS 2 as much at this point but Inform 6 could be a reasonable
alternative if you like various aspects of Inform overall but don't like the
Inform 7 approach.

A lot of what I just said here probably has a lot of caveats and "on the
other hand" type qualifiers I (or someone else) could apply. I don't think
anything I said here is demonstrably wrong or misleading, however.

I can tell you that the only way I personally came to the conclusion of what
system I would end up using was by trying things in each of the systems I
was interested in. It was only by doing so that I found the "strengths" and
"weaknesses" that mattered to me relative to what I wanted to create.

- Jeff


DJ Hastings

unread,
Jan 6, 2007, 5:35:45 PM1/6/07
to
Jeff Nyman wrote:
> "Powerful" is a vague term. "Most" is a vague qualifier on that vague term.
> All you're really going to get with this kind of question are a bunch of
> more-or-less informed opinions. I'm not sure how much that will help you.
>
> Systems like Inform 6, Inform 7, TADS 2, TADS 3, and Hugo (to name a few)
> are all "powerful" and all are well-represented in terms of people actively
> using those languages. The extent to which that power actually benefits you
> will depend largely on what you want to do and the time you are willing to
> invest in learning the systems. To a certain extent it will also depend on
> the style you prefer when programming (or, at least, the style you find you
> can adapt to).
>
> - Jeff

There's a document from about ten years ago called the "Which Authoring
System is Better FAQ". It compared many individual features and aspects
of the various authoring systems, and I thought it was helpful in
getting a "feel" for them. I don't think it's been updated, though. Does
anyone know of anything like that for current systems?

-DJ

Jim Aikin

unread,
Jan 6, 2007, 5:55:21 PM1/6/07
to
> Hi all. Which IF Languages would be the most powerful one?

You'll find there's no shortage of opinions around here on this subject ...
but as Jeff indicated, the question is at least partially subjective, and
has to be answered in terms of what you want to do.

I've used Inform 6 quite extensively. It's capable of doing a great deal,
and its conventional syntax is more to my taste than Inform 7's. The world
model in TADS 3 is more powerful and flexible than Inform 6's, which is one
reason why I have now switched, but TADS 3 is not so easy to learn, due
primarily to its complexity.

You'll find, however, that folks around here are very helpful in answering
almost any question you may need to ask.

--JA


Jeff Nyman

unread,
Jan 6, 2007, 5:57:35 PM1/6/07
to

"DJ Hastings" <dj.ha...@wavecable.com> wrote in message
news:68-dnXhHveDLuT3Y...@wavecable.com...

>
> There's a document from about ten years ago called the "Which Authoring
> System is Better FAQ". It compared many individual features and aspects of
> the various authoring systems, and I thought it was helpful in getting a
> "feel" for them. I don't think it's been updated, though. Does anyone know
> of anything like that for current systems?
>
> -DJ

You are correct about this. I don't think anything's been updated, though.
There is a version of this document here (in different formats):

http://www.ifarchive.org/if-archive/programming/general-discussion/whichsys.zip

That said, my opinion has always been that saying which is "better" is a
value judgment that is best reserved for the individual after they have come
to an informed opinion about the systems via some use of said systems. The
guide is definitely useful in the sense of perhaps giving a framework for
you to apply as you evaluate various systems.

If you want to get a feel for the languages, another thing you can look at
is Roger Firth's "Cloak of Darkness" page
(http://www.firthworks.com/roger/cloak/index.html) which attempts to show
the same game in various languages. (Inform 7 and TADS 3 examples are
available as part of the generic Inform and TADS area, which also cover
Inform 6 and TADS 2, respectively.) That said, this is only at a very
surface level, particularly if you have aspirations to do complicated
elements in your game.

Further, as with any programming language, a lot of how much you enjoy
creating interactive fiction, will probably have a lot to do with how
"enjoyable" you find the language. Some people are willing to sacrifice a
bit of the supposed "power" if they can work with a language that suits them
better. However, you'll only know this if you simply sit down and try to
work with the systems a bit, seeing what they can do and seeing what they
can't do (or what they can do only with a great deal of difficulty).

- Jeff


James Jolley

unread,
Jan 6, 2007, 8:11:52 PM1/6/07
to
Hi,

Jeff has really done a good job explaining the systems to date. I my
self prefer Inform 7 because of the natural language approach, even
though I do come from a programming background. Inform 6, at least to
me, was very difficult to learn, clunky in that it was a command line
interface and had no real IDE. TADS 3 does have one but as far as I can
tell is not quite accessible to blind users. I7 is actually doable for
the blind but I am missing the point.

It depends what kind of designer you are. I7 tends to be a logical if
rather different approach to IF development, relying on natural language
to express your ideas. The relations side of I7 really is remarkable.
I'm sure the same sorts of things can be done in TADS or I6 but not in
the same way.

Really, your best downloading the systems, reading some of the docs for
them and making your own mind up. TADS 3 does come with a really good
set of instructional materials, the getting started is really well
written and I don't even use the system.

I hope this helps you a little.

-James-

----== Posted via Newsgroups.com - Usenet Access to over 100,000 Newsgroups ==----
Get Anonymous, Uncensored, Access to West and East Coast Server Farms at!
----== Highest Retention and Completion Rates! HTTP://WWW.NEWSGROUPS.COM ==----

Neil Cerutti

unread,
Jan 7, 2007, 8:21:08 AM1/7/07
to
On 2007-01-06, Q <quddusa...@hotmail.com> wrote:
> Hi All. What are the strengths and weaknesses of the most
> popular IF languages? Thanks.

Strengths

They are all suitable for development of state-of-the-art games,
where state-of-the-art is basically something like Infocom's
"Trinity". They are approaching the ability to make things like
"Journey", but platform independance for graphics and sound is
still in the early stages. The biggest hurdle seems to me that
graphic and sound programming is simply harder to do than the
traditional text interface. The tools are constantly improving,
but the abilities of the averge IF programmer are not evolving
quickly.

They nearly all have excellent documentation, and a huge library
of production-qualit source code to study. Good, free programming
support is available here.

Weaknesses

They all require basic programming, and most require experience
with the {edit-compile}* cycle. None are particularly easy to
master. Testing is still a painstaking manual process requiring
hours of volunteer effort. It is tough to get much recognition
for your efforts. Most games tend to sink out of sight into the
wonderfully overstuffed repository at the if-archive. Submitting
something to the yearly competition is currently the best way to
get hundreds of eyes to see your work and write about it, but
it's also a good way to drown in a sea of releases.

--
Neil Cerutti

Q

unread,
Jan 7, 2007, 8:29:19 AM1/7/07
to
Thank you for your replies.
0 new messages