Creating things in tables not working properly in 10.1?

We just discussed this in chat. In short, the example in 16.16 in the documentation (about jerseys) doesn’t work, nor did my other tests, but @Zed has one that does. I’m putting this here so it doesn’t get lost in the chat overnight.

Stephen3:03 pm

Is it known that defining things with tables is broken in 10.1? Specifically, only the thing is created, the properties are not. The example in 16.16 doesn’t work in 10.1 but does in the previous release.

Well, it kind of works:

x yellow
Since 0, the Tour de France has awarded this jersey to the .

Zed Lopez3:06 pm

creating kinds of things by table is broken in 10.1 but I haven’t had troubles with creating objects or values

Stephen3:06 pm

I just dropped the example into a fresh file and it doesn’t work. Well, I get the jerseys, but not the properties. I tried borogove as well, in case my local version were broken, but it’s the same.

(edited)

Zed Lopez3:10 pm

… oh, I see.

I’ll go report… (unless you want to!)

Stephen3:17 pm

If you could report it, that would be good. I’ve never used the Inform bug tracker.

Zed Lopez3:19 pm

I7-2351 created.

Stephen3:21 pm

Thanks! I’ve used tables like that before but I always find the syntax fiddly, so I’m kind of glad it wasn’t just me being inept :slight_smile:

Zed Lopez3:23 pm

I just tried it with creating kinds of value and the description property I created was assigned correctly.

I guess I never did objects.

Stephen3:31 pm

For this particular one, the example in 16.16 gives it a good workout.

I ended up manually filling in the other properties with a repeat loop and matching by the object, so at least I have a work-around.

Zed Lopez3:46 pm

actually, I’m seeing property-setting working with other tables creating things. I don’t know what’s up with the jerseys example that makes it fail. And I gotta go bed now

Stephen3:51 pm

Do you have a working example? My tests also failed.

3 Likes
lab is a room.

a color is a kind of thing.
some colors are defined by the table of color-things

table of color-things
color   txt     num
red "puce"  81
blue    "navy"  123

The description of a color is usually "[item described]: [txt] [num]".

all the colors are in the lab.

test me with "x red / x blue".

produces

Lab
You can see red and blue here.

>test me
(Testing.)

>[1] x red
red: puce 81

>[2] x blue
blue: navy 123

1 Like

Very interesting. This, on the other hand, does not work:

Laboratory is a room.

A ball is a kind of thing.
Some balls in the Laboratory are defined by the table of ovoids.
The description of a ball is "The [item described] is [colour].".

Table of ovoids
Ball	colour
tennis ball	"green"
soccer ball	"black and white"

test me with "x tennis/x soccer".

Which gives:

Untitled
An Interactive Fiction
Release 1 / Serial number 230522 / Inform 7 v10.1.0 / D
 
Laboratory
You can see tennis ball and soccer ball here.
 
>test me
(Testing.)
 
>[1] x tennis
The tennis ball is .
 
>[2] x soccer
The soccer ball is .
 
>

I’ve worked it out. It’s this line that’s the problem:

Some balls in the Laboratory are defined by the table of ovoids.

Replacing it with this fixes it:

Some balls are defined by the table of ovoids. All the balls are in the laboratory.

1 Like