script4.stx
author Claus Gittinger <cg@exept.de>
Wed, 14 Jun 2017 15:12:40 +0200
changeset 1510 328cf54d3850
permissions -rwxr-xr-x
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1510
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
#!stx --script
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
"/
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"/ on any system:
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
"/      "stx --script script1.stx
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
"/ or:
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
"/      "stx --f script.stx"
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
"/ or:
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
"/      "stx script1.stx"
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
"/
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
"/ on Unix:
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"/      make this file executable,
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"/      ensure that stx is in your path,
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
"/      then type ./script1.stx
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
"/
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
"/ will just print some numbers
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
"/
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
"/ Stderr showCR:Workspace workspaceVariableNames.
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
"/ Stderr showCR:Workspace workspaceVariables.
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
_$n == 1 ifFalse:[
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
    Stderr showCR:('usage: ',_$0,' <n>').
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
    Smalltalk exit:1.
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
].
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
1 to:(_$1 asInteger) do:[:i |
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
   ('the factorial of %1 is %2'
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
	bindWith:i with:i factorial) printCR
328cf54d3850 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
].