TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Inform 7 v10.1.0 is now open-source

202 点作者 nickmain大约 3 年前

15 条评论

dwheeler大约 3 年前
Inform 7 is a very different language from other programming languages. Historically it was developed to be domain-specific and usable by non-programmers.<p>An interesting summary is here: &quot;Inform 7 for Programmers&quot; by Ron Newcomb <a href="http:&#x2F;&#x2F;www.plover.net&#x2F;~pscion&#x2F;inform7.html" rel="nofollow">http:&#x2F;&#x2F;www.plover.net&#x2F;~pscion&#x2F;inform7.html</a>
kragen大约 3 年前
This is wonderful news! Inform has been one of the most interesting programming languages for a long time, but it was always a fatal flaw that it was unfree. I&#x27;m so happy to hear that problem has finally been solved!<p>It&#x27;s under the Artistic License 2.0: <a href="https:&#x2F;&#x2F;github.com&#x2F;ganelson&#x2F;inform" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ganelson&#x2F;inform</a>
评论 #31200486 未加载
gtirloni大约 3 年前
If you, like me, have no idea what this is about, this page might be easier to understand:<p><a href="https:&#x2F;&#x2F;ganelson.github.io&#x2F;inform&#x2F;" rel="nofollow">https:&#x2F;&#x2F;ganelson.github.io&#x2F;inform&#x2F;</a>
评论 #31200263 未加载
评论 #31197525 未加载
mycroftiv大约 3 年前
I&#x27;m happy and excited to see this happen, I have used Inform 6 in Plan 9 for interactive fiction development for years now, and with Inform 7 becoming open, I&#x27;m hoping the core compilation pipeline can be ported, reading source code for games like Counterfeit Monkey by Emily Short is quite amazing.
评论 #31204510 未加载
cxr大约 3 年前
&gt; For Inform that human-readable format is a website, rather than a printed book<p>I dunno. I think hypertext, while well-suited to model traditional non-literate programs, really punts on the promise of literate programming. Even ignoring that—<p>Previously:<p>&gt; <i>Have a look at this slide in particular: &lt;<a href="http:&#x2F;&#x2F;inform7.com&#x2F;assets&#x2F;images&#x2F;NS2&#x2F;slide036.jpg" rel="nofollow">http:&#x2F;&#x2F;inform7.com&#x2F;assets&#x2F;images&#x2F;NS2&#x2F;slide036.jpg</a>&gt; Here&#x27;s an excerpt:</i><p>&gt; &quot;Once The Historian is done, the instructions are passed to Instruction::read, which parses them more fully (see below) and returns an intest_instructions object&quot;.<p>&gt; <i>It goes on in that style. This is reminiscent of every bad attempt I saw during Java&#x27;s heyday to ensure that a given codebase was 100% commented. People just end up writing &quot;documentation&quot; that consists of low-level repetition of what the code is doing</i><p>&lt;<a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25594817" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25594817</a>&gt;<p>The problem, it seems, with people who try to do literate programming, is that they&#x27;re too close to the thing to be effective at fulfilling the promise that literate programming sets for itself. I&#x27;m curious to see if the 3 years&#x27; overhaul changed Inform 7 substantially so that it&#x27;s no longer on this track. Keep in mind that at the time, the slide containing that snippet was supposed to be a <i>good</i> example of literate programming—instead of what it actually was, i.e. an example of how not to do it...
评论 #31199690 未加载
hlandau大约 3 年前
Amazing news. It&#x27;s great this is finally open.<p>I have quite a bit of respect for the fact that this is a successful, real-world program developed using Literate Programming. It&#x27;s a style of programming which has interested me before, but like many other people, I&#x27;ve found it hard to do in practice, and tools to be lacking.<p>As an aside, the interactive fiction community is from a technological perspective a fascinating microcosm, including from a CS perspective. You have not just one toolchain, but an entire ecosystem of competing virtual machine specifications (Z-Machine, Glulx, TADS, Hugo), compilers, and source languages, all intending to deliver architecture-independence and the ability to preserve IF for the ages, yet apart from all general-purpose technologies typically used for the task.<p>Glulx is a simple, 32-bit virtual machine created to replace the Z-Machine. Both have numerous implementations. Glulx is itself used with an extensible I&#x2F;O abstraction layer, and as I recall has been used with numerous I&#x2F;O systems. Usually it is used with Glk, but I recall some outfits trying to sell commercial IF defined their own custom I&#x2F;O system using the same Glulx virtual machine to provide greater capabilities.<p>Inform 7, as people are probably aware, is itself an experiment in source languages which read like natural language. The compiler produces Inform 6 as an intermediate language, and then invokes the Inform 6 compiler. The Inform 6 language as far as I&#x27;m aware was a product of reverse engineering the Z-Machine, and is completely different to the language Infocom originally used to produce Z-Machine images (though I believe that source is now released for those with historical interest).<p>It wasn&#x27;t all Inform, though. TADS was an interesting second fiddle and one I personally preferred, being designed to appeal as far as I can tell more to programmers. The downside is it probably led to less popularity; though I personally don&#x27;t really find myself thrilled at the prospect of writing Inform 7 with its unusual language, it&#x27;s clearly won.<p>TADS 3 in particular featured an extremely sophisticated object-oriented virtual machine, which was very complex compared to the simplicity of the 32-bit Glulx machine. It&#x27;s an impressive piece of technical work which I find fascinating, but my understanding is that despite fairly good documentation on the system&#x27;s internals, nobody besides its original author ever managed to write their own implementation due to its intricacy. The VM is open source so this isn&#x27;t the biggest deal, but having multiple implementations is a big deal, especially for something intended to allow works to be preserved through the ages.<p>Whereas the Inform ecosystem went with Glulx and the Glk I&#x2F;O system, TADS chose to adopt HTML to facilitate formatting and multimedia functionality. This seemed like a natural choice, yet I distinctly recall finding it hard to find HTML TADS implementations for non-Windows platforms years ago. In the modern era, where people want to play IF in a browser, you would expect TADS to come into its own, but this has not been so. In a remarkably strange and in my view mistaken move, TADS chose to add web functionality by allowing (if I recall correctly) TADS projects to be recompiled so that the VM hosts a web server. Since it requires projects to be recompiled, and for two images to be shipped - one non-web, one web - it seems like an incredibly bad decision and undermines the whole point of having a universal image.<p>There are countless other engines, of course - ADRIFT, which was popular due to its GUI-based editor. &quot;Hugo&quot;, which was used for the commercial game &quot;Future Boy&quot; and which emphasized multimedia capabilities.<p>Another angle to consider is sandboxing - all of these VM systems were designed to offer good sandboxing. Arguably the wider world is only just catching up with this now with the rising popularity of WebAssembly for non-web applications. The growth of the non-web WebAssembly ecosystem and sheer availability of different runtimes is really nice to see and the ready availability of VM systems which are both sandboxed and architecture-independent seems to be enabling all sort of interesting research and development. Who knows, maybe we&#x27;ll see WebAssembly be adopted for IF-related use in the future.
评论 #31207198 未加载
评论 #31199712 未加载
评论 #31197147 未加载
评论 #31200052 未加载
评论 #31200598 未加载
davidjhall大约 3 年前
Waited a while for this -- exciting! Uses Artistic License 2.0 license<p>The GUI isn&#x27;t available until 3rd party developers release it in May --- currently it&#x27;s command line only.
评论 #31196895 未加载
foogered大约 3 年前
This is so exciting to see! I became obsessed with Inform7 a while back after I learned about it from &quot;The best things and stuff of 2014&quot; [1]. I remember scouring the web for its source code and being really bummed it wasn&#x27;t open source. I can&#x27;t wait to finally dive in! I&#x27;ve never seen a literate program of this scale before.<p>[1] <a href="http:&#x2F;&#x2F;blog.fogus.me&#x2F;2014&#x2F;12&#x2F;29&#x2F;the-best-things-and-stuff-of-2014&#x2F;" rel="nofollow">http:&#x2F;&#x2F;blog.fogus.me&#x2F;2014&#x2F;12&#x2F;29&#x2F;the-best-things-and-stuff-of...</a>
bfz大约 3 年前
Can anyone offer a working link for a Javascript player wired up to a notable example? Weirdly inaccessible world. I found Slouching Towards Bedlam, but the site wants to run a Java applet
评论 #31200572 未加载
ChicagoDave大约 3 年前
Just read through the code a bit. This is an insanely complex and extraordinary achievement.<p>You don’t need to be a fan of Interactive Fiction to appreciate how brilliant this work is.
dwheeler大约 3 年前
This is great news!<p>Inform 7 is really intriguing.
georgeoliver大约 3 年前
A major achievement IMO. I&#x27;m trying to think of what to compare it to so someone who knows nothing of Inform and interactive fiction can get a handle on it.<p>Maybe, it&#x27;s like if they open-sourced Photoshop (and Photoshop -- as we know it today -- was the tool of a super-niche community)?
anthk大约 3 年前
And the English library?<p>Ah, maybe it comes bundled.<p>Great news. I prefer Inform6, but having free languages to code IF it&#x27;s always good.
评论 #31196354 未加载
adamrezich大约 3 年前
very cool. Inform 7 is a lot of fun to use, and open-sourcing it is exciting.
Decabytes大约 3 年前
excited for someone much smarter than me to write a blog post going over some of the details of this!