;; samples.scm

	;;	number
	30
	500
	10000000000000000000000000000000000000000193
	3.14159265358979
	7/31

	;;	arithmentcs
	(+ 20 30)
	(* 40 (+ 50 60) 70)
	(+ 1/3 2/7 5/17)
	(* 3+2i 7-3i)

	;;	variable
	(define n 900)
	(+ n 300)

	;;	character string
	"This is a pen."

	;;	reverse the argument-string
	(define	reverse-input-string
		(lambda	(in-string)
			(write
				(list->string
					(reverse
						(string->list
							in-string))))))

	(reverse-input-string "I Love The Scheme Programming Language!")

	;;	factorial
	(define	!
		(lambda	(n)
			(if (= n 0)
				1
				(* n (! (- n 1))))))

	(! 20)

	;;	factorial (Tail-Recursive version)
	(define	!-tail-recursive
		(lambda	(n result)
			(if (= n 0)
				result
				(!-tail-recursive
					(- n 1) (* n result)))))

	(!-tail-recursive 20 1)

;; end of file

