I’ve seen mention of the development versions of I7 with new features and would like to play around with these, but I’m honestly not smart enough to figure out how to build all of these things from scratch. Could somebody build a version with these new in-progress features so I can play around with them (I’m on Windows 10).
To my knowledge, the development versions are only available for a select few for testing. I’ll leave other more qualified people to confirm, though.
EDIT: I stand corrected.
The repos are literally open source on Github. I just need someone to build them for me. Also why did you edit the title of my post? The title was intentionally a very specific question. Anyway, I’ve changed it back. I had no idea mods could do that so capriciously.
EDIT: I guess anyone can just change the title of a post. Okay then.
Anyone with a sufficient trust level can modify titles and tags; it’s mostly used when someone titles a post “Help Please” or the like.
As for your question, unfortunately I cannot (I’m on Linux), but I’m sure others will be able to.
I just thought it was too specific/jargony (“precompiled binaries”; what are those?) for the purpose (building a developmental version of Inform 7 from the GitHub repo). I also thought “stable” when you said “recent”, so I wanted to clarify that when other people come across this thread.
If you felt offended/intruded by my edit, I’m sorry. I didn’t mean it that way, and I’m fine with keeping the old title.
I’ve built it on MacOS for development testing. However, the Inform repo by itself just gets you a command-line tool. Building a version of the IDE which integrates the new Inform is a whole other problem, which I have not investigated.
We’re fine. I will just say:
I chose the title I chose very intentionally. The person who will know the answer to my question will know exactly what a precompiled binary is. Changing the title actually changed the target audience to include more people who won’t be able to help. So it was presumptuous to change it, imo.
I think a lot of people would be at least a little irritated that someone thought they knew what you meant to say better than you did. I can understand making a vague post title more specific but not the other way around.
Anyway, everything’s fine, we’re good. I just don’t like feeling like I’ve had words put in my mouth, and I think that’s an incredibly dangerous level of control to allow the average user.
Do you have any insider knowledge of when the next release version might actually come out? It seems like there’s been a dramatic number of improvements and changes put into place.
Unfortunately not. The last release took about eight years, so this one will hopefully be less than that.
Though that one involves going open source and rewriting a bunch of the underpinnings so hopefully it’s not the same order of magnitude this time!
The end of April is the traditional time for big Inform releases - after the first version came out then, I7 and the open-source I10 also came out on the anniversary. So that’s a possible time when it could happen - or it could happen some other time.
(Predictions are hard, especially about the future)
I am also very eager to work with the new release, particularly to avoid using the bug workarounds (bugs documented and fixed in the version currently under development) that I am detailing here. I am hesitant to install a development version on a Linux system, but I am concerned that I may not meet all the prerequisites and might enter a zone where the issues encountered would not receive the same level of support as provided by this forum…
Yeah honestly this looks like a beast to get working. Hence the request for someone to create some binary releases.
It should be quite straightforward to build the command line version on Linux. Updating the Windows IDE is where it gets trickier.
This is no immediate help to you unfortunately, but your question has made me think about restarting this. I created a project I called Informing. It provided the binaries and a way to run them, although no IDE material was included yet.
This was so I could use my Informed project.
Again, none of this is of help to you. This was a bit of a vanity project for me because I just wanted to play around, and that includes with Inweb and Intest, which are probably of less interest to you. But, I don’t know, maybe there is something useful to this idea. I would have figure out the IDE parts. I was just playing around with all this at the command line and with Visual Studio Code.
Exactly! That being said, the current version of Inform is already incredible, especially when we start massively working with relations, activities, and rules to fully harness the language’s power.
I may sound impatient, but I still have a lot of room for improvement. Moreover, for the past few months, I’ve been delving into software engineering (SOLID, design patterns, Clean Code, etc.) and narrative design. I realize that working at the right level of abstraction is something I must (and began to) learn, and that the current version of Inform is almost never the issue. I suppose I can wait a bit longer!
On a somewhat related note, is there anyway to get the stable version of Inform 7 prebuilt for Debian Testing? Best I can tell, the Debian repositories only have Inform 6, and while I get the impression Inform 6 might be more to my liking as someone most comfortable with C++ as far as general purpose languages go, I also get the impression Inform 7 has much better community support(or at least, has a larger active user base), and while I’m fine running g++ to compile my own programs that are maybe 2000 lines across a dozen source and header files at the largest and often much smaller, I’ve never been all that comfortable compiling large programs from source.
I’m also an old fashioned type who prefers a dumb editor and a command-line compiler, so I don’t care about integration with an IDE.
The most recent packages (including Debian packages) are here: Releases · ganelson/inform · GitHub, but there’s also a Flatpak version.
Honestly, Inform 7 IDE for Linux is lacking in a massive way: it doesn’t display tables correctly (I’ve used the Inform 7 IDE on all three platforms—neither the mac or windows version has this issue).
They’re very different languages in a lot of ways. I’m working on a project right now in Inform 6 and PunyInform, and it’s very much closer to your typical object-oriented imperative programming languages while Inform 7 is sort of a hybrid imperative/declarative language.
WIthout getting into the weeds too much: I like’em both, but after we finish Good Bones, my partner and I are probably going to do our next project in Inform 7. The syntax for I6 is such that it’s pretty easy to make mistakes that won’t lead to compile errors but then you end up with weird memory leaks when you least expect it.
You should read Graham Nelson’s paper, “Natural Language, Semantic Analysis and Interactive Fiction”. It offers an explanation of why I7 is the way it is in comparison to I6. Honestly, it’s a really easy read (I don’t have a CS degree and I was able to make sense of it), and it makes a good argument for the style of programming that Inform 7 facilitates (in a word: hooks).
If you’re already used to the command-line, it’s not such a chore to build in Linux. (With my apologies to the original poster, I don’t know how to do it on Windows.)
apt install build-essential git rsync uuid
mkdir ~/i7
cd ~/i7
wget https://github.com/ganelson/inweb/archive/refs/tags/v7.2.0.tar.gz
tar xf v7.2.0.tar.gz
ln -s inweb-7.2.0 inweb
export CFLAGS="-O2 -flto"
bash inweb/scripts/first.sh linux
wget https://github.com/ganelson/intest/archive/refs/tags/v2.1.0.tar.gz
tar xf v2.1.0.tar.gz
ln -s intest-2.1.0 intest
bash intest/scripts/first.sh
wget https://github.com/ganelson/inform/archive/refs/tags/v10.1.2.tar.gz
tar xf v10.1.2.tar.gz
ln -s inform-10.1.2 inform
cd inform # unlike previous steps you enter the directory for this...
bash scripts/first.sh
You can look to i7init
and i7
in my i7-helpers repo for example scripts to create and compile projects, respectively. You’ll want to eliminate the references to ifsitegen, change uuidgen
to uuid
for debian, I think, and change INBUILD_PATH in i7
to “$HOME/i7” (if you follow my build instructions above and put all this in ~/i7).
This is entirely a tangent, but what do you mean by “memory leaks” here? The usual sense is “forgetting to deallocate memory that you allocated”, but I6 has no way to allocate/deallocate memory.
(No shade intended; I’ve made every possible I6 mistake over the years.)