Code Select
(define (initial-clauses str)
(set 'start (array rows columns (map int (explode str))))
(for (row 0 (sub1 rows))
(for (col 0 (sub1 columns))
(when (> (start row col) 0)
(push (string (to-var row col (sub1 (start row col))) " 0")
problem)))))
And below if run through sublisp:
Code Select
(define (initial-clauses str)
(set 'start (array rows columns (map int (explode str)₄
(for (row 0 (sub1 rows)₂
(for (col 0 (sub1 columns)₂
(when (> (start row col) 0)
(push (string (to-var row col (sub1 (start row col)₃ " 0")
problem)₅
And the code run through itself
Code Select
(define (sublisp txt)
(set 'offset 0x2080)
(for (x 9 2 -1)
(replace (dup ")" x)
txt
(string ")" (char (+ offset x)₅
(print (string txt)₂
nil)
Now if someone hacks into newlisp to change this back before it gets translated you could even execute it! ;-)