From: Les Neilson on

"Louis Krupp" <lkrupp_nospam(a)indra.com.invalid> wrote in message
news:2vGdnSF349lYvXDWnZ2dnUVZ_gSdnZ2d(a)indra.net...
> On 5/13/2010 9:44 PM, Uno wrote:
>> Richard Maine wrote:
>>> Uno <merrilljensen(a)q.com> wrote:
>>>
>>>> I can't imagine the circumstance when a person would have to work
>>>> around
>>>> a hollerith constant.
>>>
>>> I'm afraid would ascribe that mostly to a failure of imagination.
> <snip>
>> My imagination is just fine, Richard ...
> <snip>
>
> Perhaps imagination is the wrong word; how about "life experience"?
>
> Can you conceive of:
>
> Black & white TV?
>
> Postal zones instead of zip codes?
>
> Party lines (hint: they're not something you snort)?
>
> Rotary telephones?
>
> Punched cards?
>
> Radios with vacuum tubes instead of transistors?
>
> Twenty shillings to a pound, and twelve pence to a shilling?
>
> Hollerith constants will be on that list some day.
>
> Louis

Oh my. I had d�j� vu all over again :-)

Les

From: Terence on
Nostalgia!
There was a heck of a lot of weird Hollerith in the DEC versions of
the 66 BMD programas I recovered and re-wrote. IBM's Fortran IV
squeezed 4 charactaers into a real variable (apparent preference,
rather than integer), But DEC tried to get away with 5 in their 36-bit
registers (7 bits ascii?). That was actually the first time I had to
really count characters (and over two lines often) when converting to
string literals.
Anyway 'tis done and they work.
From: Uno on
On 5/15/2010 5:51 AM, Terence wrote:
> Nostalgia!
> There was a heck of a lot of weird Hollerith in the DEC versions of
> the 66 BMD programas I recovered and re-wrote. IBM's Fortran IV
> squeezed 4 charactaers into a real variable (apparent preference,
> rather than integer), But DEC tried to get away with 5 in their 36-bit
> registers (7 bits ascii?). That was actually the first time I had to
> really count characters (and over two lines often) when converting to
> string literals.
> Anyway 'tis done and they work.

I'm sure they do. Let's maybe take another look at the program on the wiki:

Dir for this script: E:\fortran_stuff\

E:\fortran_stuff>gfortran -Wall -Wextra -ffixed-form -o out.exe holl1.for
holl1.for:4.35:

DATA IHWSTR/4HHELL,4HO WO, 3HRLD/
1
Warning: Extension: Hollerith constant at (1)
holl1.for:4.20:

DATA IHWSTR/4HHELL,4HO WO, 3HRLD/
1
Warning: Extension: Conversion from HOLLERITH to INTEGER(4) at (1)
holl1.for:4.27:

DATA IHWSTR/4HHELL,4HO WO, 3HRLD/
1
Warning: Extension: Conversion from HOLLERITH to INTEGER(4) at (1)
holl1.for:4.35:

DATA IHWSTR/4HHELL,4HO WO, 3HRLD/
1
Warning: Extension: Conversion from HOLLERITH to INTEGER(4) at (1)

E:\fortran_stuff>out
HELLO WORLD

E:\fortran_stuff>type holl1.for
C PROGRAM HELLO1
C
INTEGER IHWSTR(3)
DATA IHWSTR/4HHELL,4HO WO, 3HRLD/
C
WRITE (6,100) IHWSTR
STOP
100 FORMAT (3A4)
END

C gfortran -Wall -Wextra -ffixed-form -o out.exe holl1.for
E:\fortran_stuff>

What a clever little program and excellent way to show this material to
people who are younger.

How dependent is this scheme on integers having a width of four?
--
Uno
From: Uno on
On 5/14/2010 5:07 AM, Louis Krupp wrote:
> On 5/13/2010 9:44 PM, Uno wrote:
>> Richard Maine wrote:
>>> Uno <merrilljensen(a)q.com> wrote:
>>>
>>>> I can't imagine the circumstance when a person would have to work
>>>> around
>>>> a hollerith constant.
>>>
>>> I'm afraid would ascribe that mostly to a failure of imagination.
> <snip>
>> My imagination is just fine, Richard ...
> <snip>
>
> Perhaps imagination is the wrong word; how about "life experience"?
>
> Can you conceive of:
>
> Black & white TV?
>
> Postal zones instead of zip codes?
>
> Party lines (hint: they're not something you snort)?
>
> Rotary telephones?
>
> Punched cards?
>
> Radios with vacuum tubes instead of transistors?
>
> Twenty shillings to a pound, and twelve pence to a shilling?
>
> Hollerith constants will be on that list some day.
>
> Louis

These were things that disappeared in my youth. We had a party line
when we moved to Ohio in '72. But that didn't bother me because I
wouldn't call anyone whom I would otherwise see in elementary school the
next day.

One thing that *did* bother me was watergate, because it interrupted my
cartoons.
--
Uno
From: Uno on
On 5/13/2010 10:44 PM, Uno wrote:

> In this program, nothing is declared explicitly, so how can you know
> what is a hollerith constant and what isn't?
>
> C PROGRAM HELLO1
> C
> INTEGER IHWSTR(3)
> DATA IHWSTR/4HHELL,4HO WO, 3HRLD/
> C
> WRITE (6,100) IHWSTR
> STOP
> 100 FORMAT (3A4)
> END
>

I was wrong that nothing's declared. What I couldn't see was that
everything was declared. If you don't know what the basic hollerith
idea is, it's quite the eye twister. The space in '4HO WO' is
particularly eye-bending.

I think this version is better:

E:\fortran_stuff>gfortran -Wall -Wextra -ffixed-form -o out.exe holl1.for

E:\fortran_stuff>out
HELLO WORLD

E:\fortran_stuff>type holl1.for
C PROGRAM HELLO1
C
IMPLICIT NONE
INTEGER IHWSTR(3)
DATA IHWSTR/4HHELL,4HO WO, 3HRLD/
C
WRITE (6,100) IHWSTR
STOP
100 FORMAT (3A4)
END

C gfortran -Wall -Wextra -ffixed-form -o out.exe holl1.for
E:\fortran_stuff>
--
Uno