racket/collects/ffi/examples/tcl.ss
Eli Barzilay 74f543f7ae v4-ified
svn: r8829
2008-02-29 15:39:18 +00:00

26 lines
786 B
Scheme
Executable File

#! /usr/bin/env mzscheme
#lang scheme/base
(require ffi/tcl)
(define (tcldemo . strs)
(for-each (lambda (s)
(printf "> ~a\n" s)
(with-handlers ([void (lambda (e)
(display (if (exn? e) (exn-message e) e)
(current-error-port))
(newline (current-error-port)))])
(printf "~a\n" (eval-tcl s))))
strs))
(tcldemo "puts 123"
"puts $a"
"set a {this is some stupid string}"
"set b [list a a]"
"set c {[list $a $a]}"
"puts \"a = \\\"$a\\\"\""
"puts \"b = \\\"$b\\\"\""
"puts \"c = \\\"$c\\\"\""
"puts \"even better... \\\"[expr $c]\\\"\"")