Thanks.
I'm trying to be multilingual ... TADS 3 is still on the horizon, too.
For a new game I would still use I6 right now, since it feels like low level
fiddling is a bit easier to do.
David Fisher
More than just "on the horizon," though the current user pool seems not
to be very large. Eric's new book-length manual, coupled with the
improvements in the Windows Workbench in 3.0.15 (a year or so old, now)
make T3 a very serious choice. Mac and Linux users will have to use a
text editor, but that's not a huge stumbling block.
The way I look at it, the learning curve for I7 is concave -- shallow at
first, but increasingly steep as you try to do more sophisticated
things. The learning curve for T3 is convex -- steep at first, but once
you become familiar with its resources, setting up sophisticated effects
rapidly becomes easier.
--JA
Yes, well, I7 *does* sort of have the heroin-addiction model of user
ensnarement, while T3 appears to hew to the "it was hard to write, it
*should* be hard to use!" philosophy.
However, seriously, by the time you're writing even IF-Comp scale games
(i.e., about 2 hours for a pretty deep playing), the difficulty of the
language is going to be far behind you in terms of the overall
difficulty of the project.
I find that I7 lets me write more quickly than I6 ever did. At some
point I'd like to do a game--a heavily simulationist game--that actually
exploited the stuff that T3 is good at. Specifically, I'm not happy
with the conversation system in my WIP, which is basically a keyword
match for each actor, and doesn't have any sort of more-detailed
knowledge base (although I could have coded something of the sort pretty
straightforwardly in I7 with relations).
My advice remains this:
Figure out what sort of work you want to write, and what your approach
to it is. If you want a fairly deep simulation, in which things happen
because those things are a logical working-out of the consequences of
the world model (I'd say "physics" but, really, it's not just physical
interactions), then you probably want T3. If what you care about is
what happens to the player, and you're happy with building a stage set
and stage-managing the player--that is, a narrativist rather than a
simulationist approach--then I7 is probably a better fit for you.
I have no plans to ever go back to I6. Everything I could say in I6, I
can say faster in I7. But I never was much of an I6 stud to start with;
sure, I could (and can) write games in it, but I never attained a really
deep understanding of the language.
Adam
I meant on the horizon for me, rather than everybody else!
I'm just waiting for the best opportunity to devote a serious block
of time to it (the bits I've looked at so far are all great).
David Fisher
I meant for me personally :-)
As a programmer, I really love lots of the feaures of TADS 3 (anonymous
in-place functors!), but I just haven't got to it yet ... I want to devote a
proper block of time to learning it some time.
The more I7 develops, the more cool stuff you seem to be able to do, but
something that looks like a programming language will always fit me better.
The high level commands ("all the Xs are now Y ...") are very appealing,
though.
David Fisher
Because David Fisher's original response to Paul's original most
mentioned that while he'd prefer to use I6 for an original game
right now, he's also considering becoming familiar with TADS 3.
Or to put the point more widely, the original question could be read
as presupposing that there's a set group of Inform users whose
principal choice is whether to use I6 or I7, but this may not be the
best way of framing the question of language choice. For example,
David Fisher seemed to be expressing a desire to be multilingual
between I6 and TADS 3 (if I understand him correctly), while I'm
attempting to be multilingual in I7 and TADS 3, since I tend to
agree with Adam Thornton (elsewhere in this thread) that which is
the better choice can depend on what kind of game you want to write
(but, like Adam - if I read him correctly - I don't see I6 as having
any advantages over I7/TADS 3).
In other words, the choice between I6 and I7 doesn't always seem to
be the main one everyone considering using one or other of these
languages is making. For some people the decision is now between
whichever of I6 or I7 they already prefer and some other language
(usually TADS 3).
That said, I appreciate that the Paul's original question could be
taken in a slightly different way, as simply enquiring whether among
people who are using I6 or I7 to write games, more are using I6 or
I7 (regardless of what other systems they are also considering).
Taken in that sense Paul can add me to the I7 count, since I have a
current I7 WIP but no plans to write anything in I6 (I do have one
small I6 game released, but I'd not consider myself as ever having
been a regular Inform user in the past).
-- Eric
I like the IDE that comes packaged with Inform 7, but I'm intimidated
by having to learn a new language when I'm already pretty competent
with I6. I6 was easy for me to learn, because it looks so much like
other programming languages I had dabbled in. As far as I can tell,
I7 is a completely different beast. (even though I know that at its
core, I7 is just an extension of I6).
Dave
Which is certainly another valid point.
If you want to write IF in something that looks like a traditional
procedural or object-oriented programming language, you're probably
better off with I6 or T3. If you don't mind learning a fundamentally
declarative language, I7 is likely to suit. I find that the declarative
approach really does make it faster for me to write games, for the most
part.
The trickiness, of course, comes when there are procedural bits, and
suddenly the language feels less natural for expressing algorithms than
a more-traditional one. However...if you use Python, or have used
Hypercard, then it really won't feel that strange after all.
Adam
In the IF Comp, there were:
* 10 Inform 6 games and 13 Inform 7 games in 2006
* 9 Inform 6 games and 8 Inform 7 games in 2007.
For games in general, IF Comp or not: according to the IFWiki (it's
not necessarily always complete), there were:
* c. 54 Inform 6 games and 45 Inform 7 games in 2006 (only counting
the games released after April 30th, 2006, because Inform 7 wasn't
available before)
* 43 Inform 6 games and 57 Inform 7 games in 2007
* 5 Inform 6 games and 17 Inform 7 games in 2008 (until now)
So, I think Inform 7 may be a bit more used than Inform 6, but not
much more...
I concur - I also note, of course, that *large* works probably were
started in I6 and unless you're in the mood to reimplement everything,
you're going to stick with I6.
That was what I was *going* to do with Weishaupt Scholars, in fact,
but reimplementing my IntroComp entry in I7 took three days from
knowing nothing of I7. Which is to say I'm precisely in Adam
Thornton's boat with respect to I6, I7, and TADS 3 (and in fact have a
number of unreleased TADS 3 fragments floating around from simulations
that turned out to not be interesting enough).
That said, my last released work was I6, because it removed the
standard library almost entirely. At that point, there's no sense in
not just targeting the Z-Code directly. I6 remains the language of
choice for Z-Abuse, in my book.
--Michael
I owe you a coke.
I've never even looked at I6. I am of the brave new I7 generation!
However, I do sort-of wish that I6 were still the flavour of the day.
It's probably ridiculously hard, but it is allegedly similar to C,
which I want to learn. It would force me to learn things which would
no doubt stand me in good stead when writing software in the future.
I personally didn't get on with I6, mostly because of a lack of IDE
for the mac. I7 certainly is a lot easier to use though and I think
that many users of it are coming from being unable to write in
programming languages.