/inform-evolution

Proposal documents for user-facing changes to Inform.

inform-evolution

Inform is a mature and widely used programming language, and changes to its design which are visible to users, or implementation changes on any large scale, have since 30 July 2022 been proposed and tracked in this repository. The core repository for the language itself is ganelson/inform.

In progress

Proposal Began Comments
(IE-0015) World model enforcement 16 January 2023 PR#15

Implemented and waiting to be released

Proposal Began Comments
(IE-0040) Version number kind 31 July 2024 PR#40
(IE-0039) Roomless source texts 21 May 2024 PR#39
(IE-0038) Division of time 28 April 2024 PR#38
(IE-0037) Relative kinds 28 April 2024 PR#37
(IE-0036) Extension licencing 4 April 2024 PR#36
(IE-0035) Ambiguously plural property 18 March 2024 PR#35
(IE-0033) Kit-set properties 20 September 2023 PR#33
(IE-0032) Run-time problem reform 26 August 2023 PR#32
(IE-0031) BANISH debugging command 9 August 2023 PR#31
(IE-0030) Extension examples and testing 7 August 2023 PR#30
(IE-0029) Basic IO 20 July 2023 PR#29
(IE-0028) Extension documentation revisited 19 July 2023 PR#28
(IE-0027) Sorting with custom comparison phrases 20 July 2023 PR#27
(IE-0026) Units and number bases 13 July 2023 PR#26
(IE-0025) Kit-enumerated kinds 24 June 2023 PR#25
(IE-0024) Reorganisation of standard kits 11 June 2023 PR#24
(IE-0023) Retaining text/regexp match start/end locations 11 June 2023 PR#23
(IE-0022) Tidying the startup sequence 11 June 2023 PR#22
(IE-0021) No automatic plural synonyms use option 7 June 2023 PR#21
(IE-0019) Unicode command parser 15 May 2023 PR#19
(IE-0018) Use options and kit configuration 2 May 2023 PR#18
(IE-0017) Apps and extensions 15 April 2023 PR#17
(IE-0016) Language extensions reform 5 February 2023 PR#16
(IE-0014) Inter names for rulebooks 23 October 2022 PR#14
(IE-0013) Annotations for kit linking 10 October 2022 PR#13
(IE-0012) Glk foundations 23 Sept 2022 PR#12
(IE-0010) Concepts 21 July 2022 PR#10
(IE-0009) Dialogue sections 21 July 2022 PR#9
(IE-0006) New annotations for I6 syntax 16 June 2022 PR#6
(IE-0005) Removing translates into Unicode 5 June 2022 PR#5
(IE-0003) Dividing source text into multiple files 1 May 2022 PR#3
(IE-0002) Automatic gitignores for Inform projects 1 May 2022 PR#2
(IE-0001) Directory format for extensions with resources 1 May 2022 PR#1

Still drafting or not yet implemented

Proposal Began Comments
(IE-0011) New data structures (still drafting: see pull request) -- PR#11
(IE-0008) Faster memory allocation 13 July 2022 PR#8
(IE-0007) Double-precision real numbers 3 July 2022 PR#7
(IE-0004) Access to data files embedded in blorbs 5 May 2022 PR#4

Notes

  • Proposals are numbered IE-0001, IE-0002, ... in order of creation. They will not always be implemented in numerical order.
  • The baseline design is Inform version 10.1.0.
  • Any change to the Inform design visible to users (and causing a minor or major version number bump) should be related to a proposal here.
  • For now, proposals are made by the Inform team.
  • Details are likely to change before release, and proposals listed above as "waiting to be released" are only mostly final. In particular, comments on them remain open.

For now, we ask users not to open their own pull requests against this repository, but users are very welcome to contribute comments in the PR associated with each proposal for exactly that purpose. For example, PR#1 exists for comments on IE-0001. For more free-flowing discussion about future possibilities, the Inform area of the intfiction.org forum would be the place.