General HydroStatics
Ship Stability Software
Command of the Week
(New or interesting aspects of GHS that you may not know about)


In GHS, if you want to get your longitude, you have to misspell the word.

In the early days of computers, keywords were often severely shortened, and they still are today to a lesser extent. But we freely admit that LONGTUDE is a weird way to abbreviate LONGITUDE, especially since its companion LATITUDE omits no letters. Why not simply LAT and LONG? Because there was a greater danger of conflicting with variable names that might already have been assigned by users.

If you have looked at the documentation for the VARIABLE command or scanned the HELP VARIABLE presentation on the screen, you know that most of the system variables have names involving abbreviations. Also notice that none of their names are longer than eight characters, which reflects a limit in the program. (The limit applies only to system variables, not to "user" variables that you declare yourself.)

Short names for the most part are "friendly" and easy to manage, but in the case of LONGTUDE, with the "I" missing in the middle, it's almost impossible to type it incorrectly which you need to do in order for it to be correct -- or what GHS regards as correct.

By the way, what are system variables? That's what we call the built-in functions which return values pertaining to the state of the program or of its data. Yes, there are a few other odd ones like LATITUDE and LONGTUDE.

If you were unaware that GHS knew your coordinates, try this to see if it does:
ME "My position is {LATITUDE}, {LONGTUDE}
How does GHS know this? Actually it doesn't know, and the experiment above may not work. The operating system offers a way to access latitude and longitude, and GHS makes use of that. Whether or not the information is available depends on arrangements that may or may not have been made to interface a GPS sensor or another device that has access to location information.

So what good is it? Why does GHS provide these functions? Primarily so that when used aboard a ship in the form of GLM (GHS Load Monitor), a "voyage" report can be generated which marks changes in ballast with the locations where the ballast was taken on or discharged.

Other than that, the only thing these system variables are good for is being the subject of an odd COW.

Questions, comments, or requests?
Contact Creative Systems, Inc.

USA phone: 360-385-6212 Fax: 360-385-6213
Office hours: 7:00 am - 4:00 pm Pacific Time, Monday - Friday

Mailing address:
PO Box 1910
Port Townsend, WA 98368 USA

Click here for an index to this and previous COWs