THIS MAN (程式藝術)










\ This is a man's LOVE & HATE, I name this program "this man".

            \ 08/25/'93 Author : Luke Lee

\ Originally, I intend not to add any comments but I doubt any one
\ would REALLY REALLY understand "this man".
\ With those comments, you should be able to understand some of "this man".

FORTH DEFINITIONS

VOCABULARY THISMAN
\ After you let "this man" enters your system ( FLOAD THISMAN.4TH ),
\ you could FORGET THISMAN if you want to, since THISMAN belongs to
\ FORTH vocabulary; and "this man" will leave your system. But next time
\ when you let this man enters again, he is still the same. The only way
\ should be OUTSIDE-INFLUENCE, or to change HUMAN if you think it's possible.

DEFER OUTSIDE-INFLUENCE \ defined in FORTH vocabulary.

: SPOKE ' EXECUTE DEFINITIONS ;

ALSO SPOKE THISMAN

0 CONSTANT DEAD
7 CONSTANT HUMAN-LIMIT

VARIABLE YEARS
VARIABLE BALANCE
0 VALUE EMOTION

DEFER HUMAN
-1 CONSTANT INSIDE-INFLUENCE \ "this man"'s character

' NOOP IS OUTSIDE-INFLUENCE

: HUMAN_IS_EMOTIONAL
 \ It is difficult to change HUMAN unless you understand this system,
 \ and "this man".
 \ But, if you know how, it is easy. Look :
  EMOTION CELL+ IS EMOTION
  EMOTION @ IS HUMAN ; \ HUMAN IS not rational

: .LOVE  BALANCE @ 0 DO ." LOVE" LOOP CR ;
: .NUMB             ." NUMB"    CR ;
: .HATE  BALANCE @ ABS
      DUP HUMAN-LIMIT >= IF HUMAN_IS_EMOTIONAL
          ." Too much"          ENDIF
      0 DO       ." HATE" LOOP CR ;

HERE IS EMOTION

' .LOVE ,
' .LOVE ,
' .NUMB ,
' .HATE ,
DEAD , \ or you might name this constant BRAIN-DAMAGED

EMOTION @ IS HUMAN

: LOVE ( -- ) \ initially, every human needs love, and they are willing
      \ to give it, "this man" is no exception.
      \ No one can have two birth, so the initialization takes
      \ place only once.
  [ HERE ] HUMAN-LIMIT BALANCE !
  $C3 LITERAL ! ;

: DRYS-UP? ( addr -- )
  @ ABS 1 <= IF
    HUMAN_IS_EMOTIONAL
  ENDIF ;

: BEAR ( addr -- ) \ inside influence
  INSIDE-INFLUENCE BALANCE +! ;

: WAITING ( -- )
  CR
  YEARS @ 0 DO
    BALANCE DRYS-UP?
    OUTSIDE-INFLUENCE HUMAN BEAR
  LOOP ;

: LOVE&HATE
  10 YEARS !
  LOVE WAITING ;

\ Dont' let "this man" WAIT-TOO-LONG, or this system will restart again;
\ every thing will remain un-changed but HUMAN IS DEAD. Of course you
\ won't be able to see it ( screen clearred ) because "this man" have
\ already shows you but you ignored; or, you just don't understand
\ "this man".
\
\ Note : After "LOVE&HATE" you can let this man "WAIT-TOO-LONG", or keep
\ "LOVE&HATE" again, but you can't let this man "WAIT-TOO-LONG"
\ and hoping this man could still "LOVE&HATE".

: WAIT-TOO-LONG
  HUMAN-LIMIT 1+ 2 * YEARS !
  LOVE WAITING ;

ONLY THISMAN ( 's ) LOVE&HATE SPOKE FORTH

ALSO SPOKE FORTH

\ Of course it is possible to modify "this man" into some other man,
\ but "this man" won't be himself anymore. You should not try to modify
\ "this man" according to your incomplete understanding.
\ "This man" would like to keep just the way he is, another thing you
\ can do is to try understanding "this man" and do your OUTSIDE-INFLUENCE
\ ; still another thing is to let "this man" enters your system and then
\ FORGET THISMAN completely.



路客

Email: comforth@ms2.hinet.net