3 ms·
As a fan of interactive fiction (I used to run a podcast about it) and a programmer, I've always hated Inform 7. The design philosophy is totally upside down. I
by vincent-toups 7y ago
As a fan of interactive fiction (I used to run a podcast about it) and a programmer, I've always hated Inform 7. The design philosophy is totally upside down. I understand the apparent value of making code _look like_ english, but in the end it makes code very hard to write.
Its like literally the only read only programming language I know of.
Code which looks like english makes the implicit suggestion that you can program it in english, but in fact, like all languages, it only accepts a very narrow syntax. This makes the language exceedingly frustrating to use.
- vincent-toups 7y agoI've got to elaborate: programming languages are for telling dumb machines _exactly_ what to do. English is for communicating with other intelligent beings, usually in a more or less interactive way. The two use cases could not possibly be more distinct. One way to see this is to observe how much redundancy and ambiguity is built into natural languages. Redundancy is there because natural communication is lossy and ambiguity is there because communicating agents share an enormous amount of common context. Programming languages have tended towards less and less redundancy and more or and more precision over their history. Its more or less a coincidence induced by sloppy human thinking that we are "communicating" with computers when we program. Honestly, I'd almost rather program in assembly than in any of these absurd "natural" languages.
- skybrian 7y agoAlthough I broadly agree that other programming languages probably shouldn't follow Inform 7's example, I think Inform 7's similarity to English can be fun to play around with [1], so I'm glad it exists. Perhaps after it's open sourced, someone will look into grammar improvements? [1] http://slesinsky.org/brian/code/i7_poetry.html http://slesinsky.org/brian/code/i7_poetry.html