Compiling with 3.1, Playing with 3.0

This is a discussion / support forum for the Hugo programming language by Kent Tessman. Hugo is a powerful programming language for making text games / interactive fiction with multimedia support.

Hugo download links: https://www.generalcoffee.com/hugo
Roody Yogurt's Hugo Blog: https://notdeadhugo.blogspot.com
The Hugor interpreter by RealNC: http://ifwiki.org/index.php/Hugor

Moderators: Ice Cream Jonsey, joltcountry

Cryptonomic
Posts: 55
Joined: Wed May 05, 2004 4:35 am
Location: Chicago, IL
Contact:

Compiling with 3.1, Playing with 3.0

Post by Cryptonomic »

I may be making an obvious statement here, but I am curious if this is intended. If you write even a simple example, like:

Code: Select all

routine Main
{
   cls
   print "Hello, Sailor!"
   pause
   quit
}
... then compile that with the 3.1 compiler, but play it with a 3.0 engine, you will find that it does not work. This seems to be the case with anything you compile in that fashion.

Kent
Posts: 119
Joined: Fri Jun 27, 2003 12:10 pm

Post by Kent »

Yeah, that's pretty much the case with any version jump, i.e., from 2.x to 2.y or 3.x to 3.y, etc. Anything that breaks compatibility increases the minor version number. However, things compiled with the same sub-version number are generally compatible, i.e., a game compiled with 3.1.01 is playable on a 3.1.0 engine.

(The reason for this, really, is that true forward-compatibility is pretty tough if not impossible to do. Future versions add behavior, features, and functionality that previous versions have no knowledge of. It's possible to just ignore the "future" features, but that has the effect of potentially throwing a big wrench in the program-running works.)

Basically, I'm hoping that any outstanding ports will upgrade to 3.1 soon; in the interim, it's possible to compile with the '-30' switch if you need to force the ability to run on 3.0 engines. (Note that this shouldn't impair at all your ability to run on 3.1 engines.)

--Kent

Post Reply