From Newsgroup: comp.lang.lisp
Pascal J. Bourguignon wrote:
cl-user> (defun tr (n p)
(unless (zerop p)
(tr (1+ n) (1- p))
(format t "~V@{ ~}~*~V@{*~}~%" n '() (1- (* 2 p)) '())))
tr
cl-user> (tr 0 4)
*
***
*****
*******
Shorter.
Gauche Scheme
(define (tr n p)
(unless (zero? p)
(tr (+ n 1) (- p 1))
(format #t "~va~v,,,'*a\n" n "" (- (* 2 p) 1) "")))
(tr 0 5)
*
***
*****
*******
*********
--- Synchronet 3.21a-Linux NewsLink 1.2