Work on file usr/contrib/icon/book/04/icwrite.icn
Work on file usr/contrib/icon/book/04/balop.icn
Work on file usr/contrib/icon/book/04/section.icn
Work on file usr/contrib/icon/book/04/inset2.icn
Work on file usr/contrib/icon/book/04/word1.icn
Work on file usr/contrib/icon/book/04/vbars.icn
Work on file usr/contrib/icon/book/04/inset1.icn
Work on file usr/contrib/icon/book/04/lmark.icn
Work on file usr/contrib/icon/book/04/minmax1.icn
Work on file usr/contrib/icon/book/04/minmax2.icn
Work on file usr/contrib/icon/book/04/powers.icn
Work on file usr/contrib/icon/book/04/word2.icn
Work on file usr/contrib/icon/book/04/wordlist1.icn
Work on file usr/contrib/icon/book/04/words1.icn
Synthesized-from: CSRG/cd1/4.3
14 files changed:
--- /dev/null
+procedure main()
+ while line := read() do {
+ write(line)
+ write(repl(" ",bal('+-*/',,,line) - 1),"|")
+ }
+end
--- /dev/null
+procedure icwrite(c)
+ while line := read() do
+ if any(c,line) then write(line)
+ return
+end
--- /dev/null
+procedure inset()
+ chars := ''
+ while line := read() do
+ chars := chars ++ line
+ return chars
+end
--- /dev/null
+procedure inset()
+ chars := ''
+ while chars ++:= read()
+ return chars
+end
--- /dev/null
+procedure lmark(s)
+ while line := read() do {
+ write(line)
+ write(repl(" ",find(s,line) - 1),"|")
+ }
+ return
+end
--- /dev/null
+procedure main()
+ min := max := read() # initial min and max
+ while line := read() do
+ if line >> max then max := line
+ else if line << min then min := line
+ write("lexically largest line is: ",max)
+ write("lexically smallest line is: ",min)
+end
--- /dev/null
+procedure main()
+ min := max := read() # initial min and max
+ while line := read() do
+ if max <<:= line then next
+ else min >>:= line
+ write("lexically largest line is: ",max)
+ write("lexically smallest line is: ",min)
+end
--- /dev/null
+procedure main()
+ i := 0
+ while i < 10 do {
+ i +:= 1
+ write(right(i,5),right(i ^ 2,8),right(i ^ 3,8),
+ right(i ^ 4,8))
+ }
+end
--- /dev/null
+procedure main()
+ while line := read() do {
+ line := line[1:61] # truncate
+ write(line)
+ }
+end
--- /dev/null
+procedure main()
+ s2 := &cset || "AEIOUaeiou"
+ s3 := repl(" ",*&cset) || "||||||||||"
+ while line := read() do {
+ write(line)
+ write(map(line,s2,s3))
+ }
+end
--- /dev/null
+procedure main()
+ wchar := &lcase ++ &ucase
+ pchar := '.,:;?! '
+ while line := read() do
+ # get to first letter
+ if line := line[upto(wchar,line):0]
+ then write(line[1:upto(pchar,line)])
+end
--- /dev/null
+procedure main()
+ wchar := &lcase ++ &ucase
+ while line := read() do
+ if line := line[upto(wchar,line):0]
+ then write(line[1:many(wchar,line)])
+end
--- /dev/null
+procedure wordlist()
+ wlist := "" # initialize wlist
+ while word := read() do
+ wlist := wlist || word || ","
+ return wlist
+end
--- /dev/null
+procedure main()
+ wchar := &lcase ++ &ucase ++ '\'-'
+ while line := read() do {
+ i := 1
+ while j := upto(wchar,line,i) do {
+ i := many(wchar,line,j)
+ write(line[i:j])
+ }
+ }
+end