Rocksolid Light

Welcome to RetroBBS

mail  files  register  newsreader  groups  login

Message-ID:  

Disobedience: The silver lining to the cloud of servitude. -- Ambrose Bierce


devel / comp.lang.cobol / Re: counting upper and lowercase characters

SubjectAuthor
* counting upper and lowercase charactersBruce Axtens
`* Re: counting upper and lowercase charactersBruce Axtens
 `* Re: counting upper and lowercase charactersdocdwarf
  `* Re: counting upper and lowercase charactersArnold Trembley
   +- Re: counting upper and lowercase charactersdocdwarf
   `- Re: counting upper and lowercase charactersBill Gunshannon

1
counting upper and lowercase characters

<56fc4912-a602-451f-a60c-9c9a5ee47b2an@googlegroups.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=398&group=comp.lang.cobol#398

  copy link   Newsgroups: comp.lang.cobol
X-Received: by 2002:a05:620a:14a4:b0:6fa:2f16:88d1 with SMTP id x4-20020a05620a14a400b006fa2f1688d1mr8789319qkj.462.1668839839941;
Fri, 18 Nov 2022 22:37:19 -0800 (PST)
X-Received: by 2002:a05:622a:5a90:b0:3a6:642:8a4c with SMTP id
fz16-20020a05622a5a9000b003a606428a4cmr9909860qtb.271.1668839839753; Fri, 18
Nov 2022 22:37:19 -0800 (PST)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.cobol
Date: Fri, 18 Nov 2022 22:37:19 -0800 (PST)
Injection-Info: google-groups.googlegroups.com; posting-host=49.196.255.236; posting-account=1W9SuAoAAAApKJ8N7QNszANYOyWIVzjG
NNTP-Posting-Host: 49.196.255.236
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <56fc4912-a602-451f-a60c-9c9a5ee47b2an@googlegroups.com>
Subject: counting upper and lowercase characters
From: bruce.axtens@gmail.com (Bruce Axtens)
Injection-Date: Sat, 19 Nov 2022 06:37:19 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1891
 by: Bruce Axtens - Sat, 19 Nov 2022 06:37 UTC

Given this working version

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 UC-COUNTER PIC 99.
01 LC-COUNTER PIC 99.
PROCEDURE DIVISION.
INSPECT "My dog has fleas"
TALLYING UC-COUNTER FOR ALL 'A','B','C','D','E','F',
'G','H','I','J','K','L','M','N','O','P','Q','R','S','T',
'U','V','W','X','Y','Z'
LC-COUNTER FOR ALL 'a','b','c','d','e','f',
'g','h','i','j','k','l','m','n','o','p','q','r','s','t',
'u','v','w','x','y','z'.
DISPLAY UC-COUNTER " UPPER CASE CHARACTERS".
DISPLAY LC-COUNTER " LOWER CASE CHARACTERS".

GOBACK.
```
Is there a better way of expressing the alphabets? That is, can we have a SPECIAL-NAMES or something like that so that the instruction can be INSPECT TALLYING FOR ALL LATIN-UPPERCASE-LETTERS-ENGLISH or something similar?

-- Bruce

Re: counting upper and lowercase characters

<60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=399&group=comp.lang.cobol#399

  copy link   Newsgroups: comp.lang.cobol
X-Received: by 2002:ad4:5009:0:b0:4bb:9919:b33c with SMTP id s9-20020ad45009000000b004bb9919b33cmr10106159qvo.61.1668851803003;
Sat, 19 Nov 2022 01:56:43 -0800 (PST)
X-Received: by 2002:a05:620a:126e:b0:6ec:3480:ee5a with SMTP id
b14-20020a05620a126e00b006ec3480ee5amr9134723qkl.603.1668851802822; Sat, 19
Nov 2022 01:56:42 -0800 (PST)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.cobol
Date: Sat, 19 Nov 2022 01:56:42 -0800 (PST)
In-Reply-To: <56fc4912-a602-451f-a60c-9c9a5ee47b2an@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=49.196.255.236; posting-account=1W9SuAoAAAApKJ8N7QNszANYOyWIVzjG
NNTP-Posting-Host: 49.196.255.236
References: <56fc4912-a602-451f-a60c-9c9a5ee47b2an@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>
Subject: Re: counting upper and lowercase characters
From: bruce.axtens@gmail.com (Bruce Axtens)
Injection-Date: Sat, 19 Nov 2022 09:56:42 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1742
 by: Bruce Axtens - Sat, 19 Nov 2022 09:56 UTC

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
CLASS UPPER-CASE-ENGLISH-LETTERS IS
'A','B','C','D','E','F','G','H','I','J','K','L','M',
'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 UC-COUNTER PIC 99.
PROCEDURE DIVISION.
INSPECT "My dog has fleas"
TALLYING UC-COUNTER FOR ALL UPPER-CASE-ENGLISH-LETTERS.
DISPLAY UC-COUNTER " UPPER CASE CHARACTERS".
STOP RUN.

Doesn't work, of course, as INSPECT doesn't allow CLASSes to be used. Even so ...

Re: counting upper and lowercase characters

<tlanrd$es7$1@reader2.panix.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=400&group=comp.lang.cobol#400

  copy link   Newsgroups: comp.lang.cobol
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!.POSTED.panix1.panix.com!not-for-mail
From: docdwarf@panix.com
Newsgroups: comp.lang.cobol
Subject: Re: counting upper and lowercase characters
Date: Sat, 19 Nov 2022 14:05:33 -0000 (UTC)
Organization: Public Access Networks Corp.
Message-ID: <tlanrd$es7$1@reader2.panix.com>
References: <56fc4912-a602-451f-a60c-9c9a5ee47b2an@googlegroups.com> <60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>
Injection-Date: Sat, 19 Nov 2022 14:05:33 -0000 (UTC)
Injection-Info: reader2.panix.com; posting-host="panix1.panix.com:166.84.1.1";
logging-data="15239"; mail-complaints-to="abuse@panix.com"
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
 by: docdwarf@panix.com - Sat, 19 Nov 2022 14:05 UTC

In article <60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>,
Bruce Axtens <bruce.axtens@gmail.com> wrote:
>IDENTIFICATION DIVISION.
>PROGRAM-ID. HELLO-WORLD.
>ENVIRONMENT DIVISION.
>CONFIGURATION SECTION.
>SPECIAL-NAMES.
> CLASS UPPER-CASE-ENGLISH-LETTERS IS
> 'A','B','C','D','E','F','G','H','I','J','K','L','M',
> 'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'.
>DATA DIVISION.
>WORKING-STORAGE SECTION.
> 01 UC-COUNTER PIC 99.
>PROCEDURE DIVISION.
> INSPECT "My dog has fleas"
> TALLYING UC-COUNTER FOR ALL UPPER-CASE-ENGLISH-LETTERS.
> DISPLAY UC-COUNTER " UPPER CASE CHARACTERS".
> STOP RUN.
>
>Doesn't work, of course, as INSPECT doesn't allow CLASSes to be used.
>Even so ...

A question, Mr Axtens: is the goal of the exercise to get the count of
characters or is it to get the count of characters using INSPECT?
Consider:

05 TEST-BED PIC X(20) VALUE SPACES.
05 WS-TEST-AREAS.
10 WS-TEST-ALPHA PIC X VALUE SPACES.
88 UCASE-ALPHA VALUES 'A' THRU 'H', 'I' THRU 'R', 'S' THRU 'Z'.
88 LCASE-ALPHA VALUES 'a' THRU 'h', 'i' thru 'r', 's' thru 'z.
88 A-SPACE VALUE X'40'.
88 SPECL-CHAR VALUE X'05', X'62'.

MOVE 'My dog has fleas' TO TEST-BED.
MOVE UKELELE-PLAYER TO ANOTHER-NEIGHBORHOOD.
PERFORM VARYING TALLY FROM 1 BY 1 UNTIL TALLY > (LENGTH OF TEST-BED)
MOVE TEST-BED(TALLY:1) TO WS-TEST-ALPHA
IF UCASE-ALPHA ADD 1 TO UC-CTR
IF LCASE-ALPHA ADD 1 TO LC-CTR

.... and so on. First, I was taught that you have to be very careful
coding INSPECTS because some shops wouldn't look too closely when they
found something 'that worked'... and INSPECT (SORT, too) work really in
batch but less so in the online regions.

Next, this method tries to restrict hardcoding out of the PROCEDURE
DIVISION. It all goes into WORKING-STORAGE until there's so much stuff
that needs to be checked they redesign the code to load tables during
HOUSEKEEPING.

DD

Re: counting upper and lowercase characters

<PuKdnU2C_6MiQOT-nZ2dnZfqnPednZ2d@giganews.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=401&group=comp.lang.cobol#401

  copy link   Newsgroups: comp.lang.cobol
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!1.us.feeder.erje.net!feeder.erje.net!border-1.nntp.ord.giganews.com!border-2.nntp.ord.giganews.com!nntp.giganews.com!Xl.tags.giganews.com!local-1.nntp.ord.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sun, 20 Nov 2022 07:56:47 +0000
Date: Sun, 20 Nov 2022 01:56:47 -0600
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.5.0
Subject: Re: counting upper and lowercase characters
Content-Language: en-US
Newsgroups: comp.lang.cobol
References: <56fc4912-a602-451f-a60c-9c9a5ee47b2an@googlegroups.com>
<60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>
<tlanrd$es7$1@reader2.panix.com>
From: arnold.trembley@att.net (Arnold Trembley)
In-Reply-To: <tlanrd$es7$1@reader2.panix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Antivirus: Avast (VPS 221119-4, 11/19/2022), Outbound message
X-Antivirus-Status: Clean
Message-ID: <PuKdnU2C_6MiQOT-nZ2dnZfqnPednZ2d@giganews.com>
Lines: 76
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-BKwIDq24Qr3wTAwX7PvboeoKaNOXkBgLI9X9tz9zUaNbcPAWYM+SqAg4mU062P6T3Q32WVumaw1TFRB!E34Qhjd0rd78vt3vRMAVJZnhfT9tixfnYpzI4ZgqgZ0jfPdEY0dM/0BwEOzA6nyDhVb/PWJxDQ==
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
 by: Arnold Trembley - Sun, 20 Nov 2022 07:56 UTC

On 11/19/2022 8:05 AM, docdwarf@panix.com wrote:
> In article <60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>,
> Bruce Axtens <bruce.axtens@gmail.com> wrote:
>> (SNIP)
>>
>> Doesn't work, of course, as INSPECT doesn't allow CLASSes to be used.
>> Even so ...
>
> A question, Mr Axtens: is the goal of the exercise to get the count of
> characters or is it to get the count of characters using INSPECT?
> Consider:
>
> 05 TEST-BED PIC X(20) VALUE SPACES.
> 05 WS-TEST-AREAS.
> 10 WS-TEST-ALPHA PIC X VALUE SPACES.
> 88 UCASE-ALPHA VALUES 'A' THRU 'H', 'I' THRU 'R', 'S' THRU 'Z'.
> 88 LCASE-ALPHA VALUES 'a' THRU 'h', 'i' thru 'r', 's' thru 'z.
> 88 A-SPACE VALUE X'40'.
> 88 SPECL-CHAR VALUE X'05', X'62'.
>
>
> MOVE 'My dog has fleas' TO TEST-BED.
> MOVE UKELELE-PLAYER TO ANOTHER-NEIGHBORHOOD.
> PERFORM VARYING TALLY FROM 1 BY 1 UNTIL TALLY > (LENGTH OF TEST-BED)
> MOVE TEST-BED(TALLY:1) TO WS-TEST-ALPHA
> IF UCASE-ALPHA ADD 1 TO UC-CTR
> IF LCASE-ALPHA ADD 1 TO LC-CTR
>
> ... and so on. First, I was taught that you have to be very careful
> coding INSPECTS because some shops wouldn't look too closely when they
> found something 'that worked'... and INSPECT (SORT, too) work really in
> batch but less so in the online regions.

I'm pretty sure if you use this method, you could define your own CLASS
TEST alphabets and use them. For example,

EVALUATE TRUE
WHEN TEST-BED (TALLY:1) IS MY-UPPER-CASE
ADD +1 TO UC-CTR
WHEN TEST-BED (TALLY:1) IS MY-LOWER-CASE
ADD +1 TO LC-CTR
END-EVALUATE

You don't want to use the built-in ALPHABETIC-UPPER and ALPHABETIC-LOWER
classes because they include SPACE as an alphabetic character, which I
presume must be simultaneously upper-case and lower-case.

I'm retired now, but I recall that once we got to IBM COBOL for MVS it
became safe to use several verbs like INSPECT in online CICS programs,
because the underlying Language Environment library routines were made
re-entrant (possibly even threadsafe). You still don't want to code
OPEN and CLOSE in a CICS program, however, for obvious reasons.

>
> Next, this method tries to restrict hardcoding out of the PROCEDURE
> DIVISION. It all goes into WORKING-STORAGE until there's so much stuff
> that needs to be checked they redesign the code to load tables during
> HOUSEKEEPING.
>
> DD

We had a style rule to reduce or eliminate hardcoding literals in the
PROCEDURE DIVISION. It was supposed to help prevent certain kinds of
logic errors. I recall a billing program that had three instances of
multiplying a transaction count by a billing rate of a half-cent. If
the half-cent billing rate was a literal and needed to be changed to
..006, what are the odds a maintenance programmer would change two of the
literals and miss the third?

Kind regards,

--
https://www.arnoldtrembley.com/

Re: counting upper and lowercase characters

<tldegf$qbj$1@reader2.panix.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=402&group=comp.lang.cobol#402

  copy link   Newsgroups: comp.lang.cobol
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!.POSTED.panix1.panix.com!not-for-mail
From: docdwarf@panix.com
Newsgroups: comp.lang.cobol
Subject: Re: counting upper and lowercase characters
Date: Sun, 20 Nov 2022 14:44:32 -0000 (UTC)
Organization: Public Access Networks Corp.
Message-ID: <tldegf$qbj$1@reader2.panix.com>
References: <56fc4912-a602-451f-a60c-9c9a5ee47b2an@googlegroups.com> <60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com> <tlanrd$es7$1@reader2.panix.com> <PuKdnU2C_6MiQOT-nZ2dnZfqnPednZ2d@giganews.com>
Injection-Date: Sun, 20 Nov 2022 14:44:32 -0000 (UTC)
Injection-Info: reader2.panix.com; posting-host="panix1.panix.com:166.84.1.1";
logging-data="26995"; mail-complaints-to="abuse@panix.com"
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
 by: docdwarf@panix.com - Sun, 20 Nov 2022 14:44 UTC

In article <PuKdnU2C_6MiQOT-nZ2dnZfqnPednZ2d@giganews.com>,
Arnold Trembley <arnold.trembley@att.net> wrote:
>On 11/19/2022 8:05 AM, docdwarf@panix.com wrote:
>> In article <60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>,
>> Bruce Axtens <bruce.axtens@gmail.com> wrote:
>>> (SNIP)
>>>
>>> Doesn't work, of course, as INSPECT doesn't allow CLASSes to be used.
>>> Even so ...
>>
>> A question, Mr Axtens: is the goal of the exercise to get the count of
>> characters or is it to get the count of characters using INSPECT?
>> Consider:
>>
>> 05 TEST-BED PIC X(20) VALUE SPACES.
>> 05 WS-TEST-AREAS.
>> 10 WS-TEST-ALPHA PIC X VALUE SPACES.
>> 88 UCASE-ALPHA VALUES 'A' THRU 'H', 'I' THRU 'R', 'S' THRU 'Z'.
>> 88 LCASE-ALPHA VALUES 'a' THRU 'h', 'i' thru 'r', 's' thru 'z.
>> 88 A-SPACE VALUE X'40'.
>> 88 SPECL-CHAR VALUE X'05', X'62'.
>>
>>
>> MOVE 'My dog has fleas' TO TEST-BED.
>> MOVE UKELELE-PLAYER TO ANOTHER-NEIGHBORHOOD.
>> PERFORM VARYING TALLY FROM 1 BY 1 UNTIL TALLY > (LENGTH OF TEST-BED)
>> MOVE TEST-BED(TALLY:1) TO WS-TEST-ALPHA
>> IF UCASE-ALPHA ADD 1 TO UC-CTR
>> IF LCASE-ALPHA ADD 1 TO LC-CTR
>>
>> ... and so on. First, I was taught that you have to be very careful
>> coding INSPECTS because some shops wouldn't look too closely when they
>> found something 'that worked'... and INSPECT (SORT, too) work really in
>> batch but less so in the online regions.
>
>I'm pretty sure if you use this method, you could define your own CLASS
>TEST alphabets and use them. For example,
>
> EVALUATE TRUE
> WHEN TEST-BED (TALLY:1) IS MY-UPPER-CASE
> ADD +1 TO UC-CTR
> WHEN TEST-BED (TALLY:1) IS MY-LOWER-CASE
> ADD +1 TO LC-CTR
> END-EVALUATE
>
>You don't want to use the built-in ALPHABETIC-UPPER and ALPHABETIC-LOWER
>classes because they include SPACE as an alphabetic character, which I
>presume must be simultaneously upper-case and lower-case.

That's why the 88 A-SPACE is coded all on its own. Maybe it's time for me
to stop coding it in EBCDIC, as well.

[snip]

>>
>> Next, this method tries to restrict hardcoding out of the PROCEDURE
>> DIVISION. It all goes into WORKING-STORAGE until there's so much stuff
>> that needs to be checked they redesign the code to load tables during
>> HOUSEKEEPING.
>
>We had a style rule to reduce or eliminate hardcoding literals in the
>PROCEDURE DIVISION. It was supposed to help prevent certain kinds of
>logic errors. I recall a billing program that had three instances of
>multiplying a transaction count by a billing rate of a half-cent. If
>the half-cent billing rate was a literal and needed to be changed to
>.006, what are the odds a maintenance programmer would change two of the
>literals and miss the third?

The same as the odds for any sort of previously-unencountered, obscure
error during an important batch run: 100%.

DD

Re: counting upper and lowercase characters

<jtuuehFfrfdU3@mid.individual.net>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=403&group=comp.lang.cobol#403

  copy link   Newsgroups: comp.lang.cobol
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!news.szaf.org!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: bill.gunshannon@gmail.com (Bill Gunshannon)
Newsgroups: comp.lang.cobol
Subject: Re: counting upper and lowercase characters
Date: Sun, 20 Nov 2022 10:12:17 -0500
Lines: 58
Message-ID: <jtuuehFfrfdU3@mid.individual.net>
References: <56fc4912-a602-451f-a60c-9c9a5ee47b2an@googlegroups.com>
<60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>
<tlanrd$es7$1@reader2.panix.com>
<PuKdnU2C_6MiQOT-nZ2dnZfqnPednZ2d@giganews.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: individual.net pR63S+rVV2bX2dd7xVH+RgX6KSUP4a3Q+bc/RjndtNNQgPmUBd
Cancel-Lock: sha1:GLrjJQ0Z06uQtIwJBWmMDAu5Jnk=
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.2.2
Content-Language: en-US
In-Reply-To: <PuKdnU2C_6MiQOT-nZ2dnZfqnPednZ2d@giganews.com>
 by: Bill Gunshannon - Sun, 20 Nov 2022 15:12 UTC

On 11/20/22 02:56, Arnold Trembley wrote:
> On 11/19/2022 8:05 AM, docdwarf@panix.com wrote:
>> In article <60d51dc4-dcc6-4878-a351-487008c76db1n@googlegroups.com>,
>> Bruce Axtens  <bruce.axtens@gmail.com> wrote:
>>> (SNIP)
>>>
>>> Doesn't work, of course, as INSPECT doesn't allow CLASSes to be used.
>>> Even so ...
>>
>> A question, Mr Axtens: is the goal of the exercise to get the count of
>> characters or is it to get the count of characters using INSPECT?
>> Consider:
>>
>> 05  TEST-BED PIC X(20) VALUE SPACES.
>> 05  WS-TEST-AREAS.
>>      10  WS-TEST-ALPHA PIC X VALUE SPACES.
>>          88  UCASE-ALPHA VALUES 'A' THRU 'H', 'I' THRU 'R', 'S' THRU 'Z'.
>>          88  LCASE-ALPHA VALUES 'a' THRU 'h', 'i' thru 'r', 's' thru 'z.
>>          88  A-SPACE VALUE X'40'.
>>          88  SPECL-CHAR VALUE X'05', X'62'.
>>
>>
>> MOVE 'My dog has fleas' TO TEST-BED.
>> MOVE UKELELE-PLAYER TO ANOTHER-NEIGHBORHOOD.
>> PERFORM VARYING TALLY FROM 1 BY 1 UNTIL TALLY > (LENGTH OF TEST-BED)
>>      MOVE TEST-BED(TALLY:1) TO WS-TEST-ALPHA
>>          IF UCASE-ALPHA ADD 1 TO UC-CTR
>>          IF LCASE-ALPHA ADD 1 TO LC-CTR
>>
>> ... and so on.  First, I was taught that you have to be very careful
>> coding INSPECTS because some shops wouldn't look too closely when they
>> found something 'that worked'... and INSPECT (SORT, too) work really in
>> batch but less so in the online regions.
>
> I'm pretty sure if you use this method, you could define your own CLASS
> TEST alphabets and use them.  For example,
>
>     EVALUATE TRUE
>     WHEN TEST-BED (TALLY:1) IS MY-UPPER-CASE
>         ADD +1   TO UC-CTR
>     WHEN TEST-BED (TALLY:1) IS MY-LOWER-CASE
>         ADD +1   TO LC-CTR
>     END-EVALUATE
>

I never liked that EVALUATE TRUE stuff preferring something closer
to the good old fashioned CASE statement like:

EVALUATE TEST-BED (TALLY:1)
WHEN "A" THRU "Z" ADD 1 TO UC-CTR
WHEN "a" THRU "z" ADD 1 TO LC-CTR
END-EVALUATE

I haven't actually tried this but I see no reason it wouldn't work.

bill

1
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor