[comp.lang.forth] PHILOSOPHY & CM

ForthNet@willett.UUCP (ForthNet articles from GEnie) (02/19/90)

Category 1,  Topic 12
Message 79        Sat Feb 17, 1990
F.SERGEANT [Frank]           at 18:21 CST
 
 NOT EXACTLY 3 KEYS

 Using SuperKey, I have begun using a modified version of the  Dvorak-Dealey
"Simplified" keyboard (suggested by Roedy Green).  This  is my third day.  My
computer boots with it automatically, so I have  given up QWERTY altogether. 
I planned to try it without any  committment, but I think I like it.  I am a
fast touch typist on a  QWERTY keyboard and I am certainly not back up to
normal speed yet.   Roedy suggested that you might reduce fatigue as well as
increase  speed.  I guess I'll find out.

 I found a book in the library: TYPEWRITING BEHAVIOR by August Dvorak  et al
copyright 1936.  I can't read it.  It goes into tedious detail  after tedious
detail on the subjects of typing, teaching typing, coping  with the mechanics
of the typewriters of their day, etc.  I wanted the  book mainly to see what
layout Dvorak recommended (as opposed to what  others say his layout is). 
Maybe I'll get a copy of their patent one  day: "Simplified Keyboard
Arrangement," U.S. Patent Office, Serial No.  612,738,  1932.

 Anyway, my layout is the same as theirs for the letters and some of  the
punctuation.  The numbers and some of the punctuation are  different.  They
recommend    7 5 3 1 9 0 2 4 6 8   but I'm still using   1 2 3 4 5 6 7 8 9 0. 
Maybe I'll switch the numbers later.  Right now I  find their familiarity a
comfort.

 I haven't switched key caps, so I'm REALLY doing it by touch.

 I still want to go to a 3 key keyboard, so this interim step may be  wasted. 
Meanwhile I'm noticing and enjoying staying mostly in home  position (which
you can't really do with QWERTY) and noticing and  disliking the terrible jump
to and from the Enter key and to and from  the cursor pad.  Maybe I'll remap
another key to Enter and start using  more of the Word Star control key
approach to cursoring.  It sure would  be nice not to have no leave home
position ever.

  - Frank
-----
This message came from GEnie via willett through a semi-automated process.
Report problems to: 'uunet!willett!dwp' or 'willett!dwp@gateway.sei.cmu.edu'

ForthNet@willett.UUCP (ForthNet articles from GEnie) (03/06/90)

Category 1,  Topic 12
Message 80        Sun Mar 04, 1990
F.SERGEANT [Frank]           at 21:50 CST
 
 Rob Chapman (via Usenet) suggests that  u  FOR  ...  NEXT   should  execute u
times.

 Rob, thanks for your suggestion and thanks for posting your source  code for
BOTFORTH.  (Where did the name come from?)

 : STARS  ( u -)   FOR  STAR  NEXT  ;

 In Pygmy and in cmFORTH and presumably in ANS,   u  STARS  would  do STAR  
u+1 times.  0 STARS would do STAR 1 time.  -1 STARS would do  STAR a whole
lotta times.  If you want it done u times you need to  do something like    :
STARS  ( u -)  ?DUP IF 1- FOR STAR NEXT THEN ;

 I have about decided that I agree with Rob.  In looking over several 
applications it seems that much of the time when I used  FOR NEXT I  preceded
it with 1- or surrounded it with  ?DUP IF 1- .... THEN.  So, I  think I'm
going to change over to Rob's method.

 cmFORTH has the word -ZERO that accomplishes this change to u instead  of 
u+1.  It is used like this

        : STARS  ( u -)   FOR  -ZERO  STAR   THEN  NEXT  ;

when I first looked at it, it didn't make sense to me that -ZERO was  laying
down an unconditional branch.  I thought it should be testing  for zero.  Now
I understand.  It lays down an unconditional jump to the  end of the loop,
using up the 1st of the u+1 passes without doing the  body of the loop.  If u
is zero, then the body of the loop is not  executed at all.  At compile time, -
ZERO increments the address left by  FOR so that NEXT will compile a branch
back to STAR and not back to the  unconditional branch laid down by -ZERO.

 Rather than use -ZERO, I think I will build it in as the default.

 The first cost I see is that each occurrence of FOR will take up 6  bytes (in
Pygmy:  PUSH BRANCH <address>  rather than just 2 bytes  for PUSH.  We could
define another primitive that would combine the  PUSH and branch and would
only take up 4 bytes instead of 6.  Thus our  cost in space is either 2 or 4
bytes.  We will make up for this by the  many times we can eliminate the  8
bytes for  ?DUP 1- IF  ...  THEN.   The other cost is the time to do the
branch in those cases where we do  not need to prevent the body of the loop
from executing for an index of  zero.  We will also gain in source code
clarity.

  Anyone have any thoughts on why we shouldn't make this change?

  -- Frank
-----
This message came from GEnie via willett through a semi-automated process.
Report problems to: 'uunet!willett!dwp' or 'willett!dwp@gateway.sei.cmu.edu'

ForthNet@willett.UUCP (ForthNet articles from GEnie) (04/13/90)

 Date: 04-10-90 (09:08)              Number: 3110 (Echo)
   To: GARY SMITH                    Refer#: 3104
 From: JACK BROWN                      Read: NO
 Subj: CHUCK MOORE AND FORTH         Status: PUBLIC MESSAGE

 >         A well-written program does not need comments.  Alternately,
 >         comments are a crutch to make inteligible a poorly organized
 >         program.
 >

 Well....  If Chuck Moore is right I guess poor old Donald Knuth
 wasted 3-4 years of his life trying to turn TEX into a model literate 
 program.   See the March 1990 issue of the ACM Journal...(towards the 
 back)  for a report on the state of literate programming.

 Literate programming is at the extreme opposite end of the scale from 
 Chuck's postion.  Programs should not only contain comments they should 
 be typeset in beautiful fonts with complete explanations of the 
 algorithms embedded in the text.  Ideally you have a literate 
 programming environment that allows you to develop both your code and 
 prose simultaneously.

 NET/Mail : British Columbia Forth Board - Burnaby BC - (604)434-5886   
-----
This message came from GEnie via willett through a semi-automated process.
Report problems to: 'uunet!willett!dwp' or 'willett!dwp@gateway.sei.cmu.edu'

ForthNet@willett.UUCP (ForthNet articles from GEnie) (04/13/90)

 Date: 04-11-90 (22:34)              Number: 3111 (Echo)
   To: JACK BROWN                    Refer#: 3110
 From: JERRY SHIFRIN                   Read: NO
 Subj: CHUCK MOORE AND FORTH         Status: PUBLIC MESSAGE

 JB>Literate programming is at the extreme opposite end of the scale from
 JB>Chuck's postion.  Programs should not only contain comments they shou
 JB>be typeset in beautiful fonts with complete explanations of the

 While I think Chuck tends towards the extreme in terms of cryptic
 coding, I'm afraid I don't see great virtue in the other extreme.
 I remember when I was first getting started in programming and
 these guys would show me how they took great pains to line up all
 their variable names, commas, etc.  They put greater energy into
 the appearance of the code than they did into its functionality.
 At the time I thought that was decadent and I've seen no reason
 to change my opinion.

 I beieve that there is reason to be concerned with form, but not
 more so than substance.
 ---
  ~ EZ 1.26 ~ 
-----
This message came from GEnie via willett through a semi-automated process.
Report problems to: 'uunet!willett!dwp' or 'willett!dwp@gateway.sei.cmu.edu'

ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie) (08/13/90)

Category 1,  Topic 12
Message 69        Sat Aug 11, 1990
F.SERGEANT [Frank]           at 17:31 CDT
 
     To Phil Koopman, re 3-key keyboard & CM

     An ongoing interest of mine, as well.  All the details would be 
appreciated.  For example, did you see him entering text - as one might  into
a word processor?  That is, typing away, character by character?   How fast
was it?  I gather he was picking out letters, for example one  of seven picks
the group, e.g.  LETTERS  NUMBERS PUNCTUATION TOGGLES  etc, then under LETTERS
might be
   ABCDEFG   HIJKMNO   PQRSTUV   XYZ.,?Space
                     Capitalize-Previous-Letter    BS     UP etc.  Then under
ABCDEFG might be  A  B  C  D  E  F  G.  The more  details from you & others,
the better.

     With the system above, it would seem that each any char would take  about
5 strokes max, with 2 being the most common.  For example.  Once  you select
LETTERS, you then choose the group and then the single  letter and are
automatically returned to the LETTERS menu, so as long  as you are just typing
letters, it is two strokes.  When you need  something else, you pick UP to get
out of the LETTERS menu.           

     As I type now, I'm often using only a single keystroke per letter.  
However, it takes both hands and there is the slow down from reaching  away
from home position.  Even reaching for the shift key is a bit  jarring, from
the stand point of staying in home position, and the  Enter key, allllll the
way over there is almost intolerable (if I could  stand the smiley faces I
might consider putting one here).  All concept  of "home" disappears when I
shift over to function keys or to the  cursor pad.

     I consider it possible, but not proved, that the 3 key keyboard's 
promise of NEVER EVER having to leave HOME might pay for the doubling, 
trebling, whatever of strokes.  Plus it would free up an extra arm and  hand
and most of your body (your posture is greatly affected by having  to get BOTH
hands on the keyboard).  We might begin to "hear" our text  as we drum out
passages.  Additional benefits would be portability (to  go with a battery
powered RTX computer) and, if you didn't display the  menus, system security!

     Anyway, thanks for the details you've mentioned so far.

  -- Frank
-----
This message came from GEnie via willett through a semi-automated process.
Report problems to: uunet!willett!dwp or dwp@willett.pgh.pa.us

rvn@forth.mlb.semi.harris.com (Rick VanNorman) (08/15/90)

In regard to the current controversy about Chuck Moore's 3-key input
device (crippled mouse? 8^)), I have watched him move from a normal terminal
connected to a (I think) PDP-11 (about 1985); to a seven switch, one hand 
keyboard connected to a single-board Novix computer (the Fk2, Fk3) (from 
1986-1987) where the seven switches were the exact ascii representation of
the character to be input; to a 3-key input device connected to the same 
Novix computer; to a 3-key input device connected to the ShBoom computer 
(shown this year at the Rochester Forth Conference).

The way that Chuck uses the 3-key device is:  pick one of seven actions
from a (currently) invisible (used to be visible) menu.  These seven choices
represent six things to be done at the current level and one option to return
to a higher level in the structure.  

In the current (ShBoom) system, textual data is not represented by ascii but
by an arbitrary coded representation that was convenient for Chuck (as I 
recall, the numbers and letters are contiguous, and the special symbols 
followed them).  The entry of text and programs is done via
a memory dump editor.  To insert a character, one uses the cursor motion
modes to select the position in memory, then switch modes to "byte edit",
then scroll up/down the current character until the desired character 
appears.

This seems very cumbersome, but to watch Chuck in action belies some of the
confusion.

I don't think I could ever use an input device like that, but Chuck has
a track record of innovations that border on genius 8^).

I hope this clears up some of the confusion, or at least adds to the 
confusion.

Cheerio,
Rick VanNorman
Harris Semiconductor
Standard Disclaimers (the only standard I believe in!)

ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie) (08/20/90)

Category 1,  Topic 12
Message 70        Sun Aug 19, 1990
F.SERGEANT [Frank]           at 13:26 CDT
 
 MB>One wonders how a color-blind person would fare with such a device?

     Mitch, thanks for the info about the 3-key keybd.  And, not just  the
color-blind, but the monochrome monitor users as well!  I think the  color-
blind cope with traffic lights by their positions and they might  handle CM's
menus the same way.  Same for monochrome monitor users,  perhaps, or maybe by
numbering the choices.

  -- Frank
-----
This message came from GEnie via willett through a semi-automated process.
Report problems to: uunet!willett!dwp or dwp@willett.pgh.pa.us

ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie) (08/20/90)

Category 1,  Topic 12
Message 71        Sun Aug 19, 1990
F.SERGEANT [Frank]           at 13:26 CDT
 
     Rick, thanks for the extra info on how CM uses the 3 key keyboard.  That
really helps.  I'd love to see him in action with it some day.  It's "cute"
but is it "better" is still unanswered in my mind.  When I  get around to it,
I'll try it out.

     Meanwhile, I am doing something that is vaguely related:  I'm  typing on
a Dvorak keyboard layout.  (Well, it is not classic Dvorak,  especially in
that I've left the numbers where they would be on  QWERTY).  This has been a
very interesting experiment.  I think it is a  better layout.  What is not
clear is whether it is enough better to pay  for (a) the re-learning and (b)
the loss of facility on QWERTY.   Probably not!  Also, I have failed to take
the final step of  eliminating all "far" motion (such as reaching for the
Enter, Home,  End, Esc, arrow, & function keys).  I'm going to do that too,
one of  these days.

     I'd be interested in how CM's Sh-boom relates to Harris & the RTX.   Is
it a uP that Harris will add to its line?  Do they serve different  niches,
etc?  Naturally, I am extremely happy with Harris!  Their  discernment and
judgement is beyond compare.

  -- Frank
-----
This message came from GEnie via willett through a semi-automated process.
Report problems to: uunet!willett!dwp or dwp@willett.pgh.pa.us

rvn@forth.mlb.semi.harris.com (Rick VanNorman) (08/22/90)

Frank,

Glad to be of help.

RE ShBoom -- Harris does not currently have any plans regarding Chuck's newest
chip.  We can't afford to spread ourselves too thin, lest we loose focus on 
the RTX product.  In the future, who knows?

Thanks for the nice words, but you are prejudiced!!!!!

Cheerio,
Rick VanNorman
Harris Semiconductor
Standard Disclaimers (the only standard I believe in!)