new inform 7 version trouble

it’s not because of the unicode bug that i am annoyed, this was solved in ten seconds, and to get that clear: it was not the reason for the program finishing itself. there are a lot of other things to complain, like crashes, freezes, hang ups, not giving a hint where an error is, just telling it; finding an error one time and one time not, the find function only works before compiling; nonsensical error descriptions like the one above (why shouldn’t i be allowed to make a new region with a new word for the new region ??) and so on and so on… . this version just has not the quality i got used to. please tell me how i should finish a long program with a non functional error handling; i can’t read 6000 lines of code every time the program decides to hang (to finish) itself.

Why don’t you just finish the program using the old version of Inform you were using?

it seems i will be forced to, but i would like to remind the professional programmers of inform that the goal of inform should not be being supercool for professional programmers but being usable for nonprofessional programmers.

FOUND THE NEW ONE! i have a backdrop in two regions. it seems I have to define the backdrop after i define the second region! BUT THE COMPILER SHOULD BE ABLE TO TELL ME THIS!

sorry for yelling and lg, stefan

It sounds like you had code like this?

Fooz is a backdrop.
Fooz is in reg.

The reg is a region.

You can file a bug for this error message. However, it’s a tricky case. The compiler can’t just say “You must define your regions first” because it can’t be sure that you intended reg to be a region. Maybe you meant reg to be a room (which is what the compiler would assume from the first two lines alone). Or a container. Maybe you meant to create a room called rog and a region called reg. Or vice versa.

There are several different correct pieces of code that this example is one typo away from. That’s why the error message is unspecific.

i have to admit, i am not sure (i had a three years break form programming). i narrowed down the possible lines with the aforementioned method, then i changed the order of a few of them. and it all worked (i had some errors left, but as long as the compiler shows them, it was just syntax update like with ‘change’ or ‘Instead of doing sg. other than’).

the problem with the compiler was not, that he had to guess what’ wrong, as you suggested, (he does that all time but very enlightening), but that he show s nothing, just crashes.

the other trouble that froze the compiler without letting him show the errors, were two non updated extensions by Mikael Saegercrantz. I dropped one of them and i am now trying to program sg. like ‘trinity inventory’ but myself. at the moment i have to retrain my brain to think a routine that does goes through all items and if one is carried by the player, it has to show sg. like ‘the inventory listing’. Sounds as easy, as all the difficult things.

I updated Trinity Inventory for 6L02; posted it in the other thread.

Thank you! I will download and test it.