HugoManual, Chap. 1 Questions/Comments

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

Hugella

HugoManual, Chap. 1 Questions/Comments

Post by Hugella »

[I'm going through the beta manual, so all questions now and in the future come from that source.]

from section I.j., Limit Settings: what are the maximum limits for each adjustable setting? For example, can the MAXDICT be more than 2048?

I.k., Directories, gives a list of 'valid' directories. Are these the only ones we can use, or can any directory name be specified elsewhere?

Compilation flags are mentioned in several places, but not explicitly defined.

Typo on p.22, in the bold-faced Note, last sentence: 'Non-Unix users probably don't need to worry about that means'..looks like you left out a 'what'. :)

Also, on p.25, the last sentence on the page rather puzzlingly starts off: "It points sets the desired switches..."..I have no idea what 'points sets' means.

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

Re: HugoManual, Chap. 1 Questions/Comments

Post by Kent »

Hugella wrote:[I'm going through the beta manual, so all questions now and in the future come from that source.]
That has been revised a little bit since the last PDFing, but not much.
Hugella wrote: from section I.j., Limit Settings: what are the maximum limits for each adjustable setting? For example, can the MAXDICT be more than 2048?
Generally 32768 per limit setting; the compiler will tell you if you try to set something higher than is possible. (And this is largely an arbitrary limit.)
Hugella wrote: I.k., Directories, gives a list of 'valid' directories. Are these the only ones we can use, or can any directory name be specified elsewhere?
I'm not sure what you mean by "any directory name". Where @<directoryname>=C:\Your\real\directory or some such, the <directoryname> is one of a handful of things known to the compiler to tell it where to look for source files, library files, where to generate the executable, etc.
Hugella wrote: Compilation flags are mentioned in several places, but not explicitly defined.
Ah. Largely because these aren't built-in. Almost all compiler flags are set by the library or other source files (and as such are mentioned in the library section). But I get where that could be confusing.

And thanks for pointing out the typos. All fixed now.

Guest

Post by Guest »

That has been revised a little bit since the last PDFing, but not much
Any timeframe for when you'll release a new version?
I'm not sure what you mean by "any directory name
I meant, for example...one of the listed valid directories is 'source'. Must I use 'source', or could I use, say, 'src' or 'mysource', etc?

Wait..are you saying that if I @<directory>=c:\mydirectory, mydirectory can be anything? In other words, contain any combination of alphanumeric characters, as long as I set it with @,directory?
Almost all compiler flags are set by the library or other source files
I see where this concept becomes slightly clearer in Chapter 2 (but that's another thread. :))

Thanks for the quick response, Kent.

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

Post by Kent »

I meant, for example...one of the listed valid directories is 'source'. Must I use 'source', or could I use, say, 'src' or 'mysource', etc?
Basically, if you have your source files in, say, C:\Documents\MySource, do:

hc @source=c:\documents\mysource filename.hug

where filename.hug lives in MySource, not in the directory you're executing hc from. If you want to put the output .hex file into Games, say:

hc @source=c:\documents\mysource @object=c:\Games filename.hug

'source', 'object', and others are the directory locations you can specify, found in the manual or by typing 'hc @list'.

Does that clear up what these "directories" are in the compiler invocation?

On a Windows box (or DOS or Unix, etc.) it's possible to set environment variables* for HUGO_SOURCE, HUGO_OBJECT, etc. so that you don't have to set these up every time:

For instance, on my Windows machine, I have the following set:

HUGO_LIB=c:\hugo\lib
HUGO_OBJECT=c:\hugo\hex
HUGO_SAVE=c:\hugo\save
HUGO_TEMP=c:\temp

Which tells the compiler and engine where to look for library files, game files, where to save, and what to use for tempfiles during compilation.

I, um, think this is also in the manual somewhere. I'll have to check when I get a chance.

*If setting environment variables is beyond the scope of this discussion, kindly ignore me.

Guest

Post by Guest »

Gotcha. I think it was just a little confusing in the manual since it says in one place (paraphrasing here) 'these are the valid directories' (implying they're the *only* directory names that can be used) and elsewhere talking about setting the environment variables.

I should tell you that in addition to going through the manual with the intention of learning Hugo, I'm also reading it with an eye for clarity and/or 'understandibility' for a true newbie programmer (I'm blogging my efforts at learning Hugo, hopefully to be helpful to others at some point), so I hope you'll forgive my occasionally quibbly questions. :)

Skullduggery
Posts: 11
Joined: Thu May 16, 2002 8:34 am

Another Chapter 1 Nag

Post by Skullduggery »

In Section I.i: Compiler Switches, there is a long note about precompiled headers, with a footnote to see Appendix E: Precompiled Headers, for more information. Both of these contain the exact same information.
aka HUGELLA

Post Reply