Anonymous user
Modulinos: Difference between revisions
Added Chicken Scheme
No edit summary |
(Added Chicken Scheme) |
||
Line 60:
return 0;
}</lang>
=={{header|Chicken Scheme}}==
Chicken Scheme has the {{{ -ss }}} flag for the interpreter, but compiled Chicken Scheme programs do not have scripted main unless the behavior is added manually to the code.
<lang scheme>#!/bin/bash
#|
exec csi -ss $0 ${1+"$@"}
exit
|#
(use posix)
(require-extension srfi-1) ; lists
(require-extension srfi-13) ; strings
(define (main args)
(display (format "Directory: ~a\n" (current-directory)))
(display (format "Program: ~a\n" (cdr (program))))
(display (format "Number of Args: ~a\n" (length args)))
(map (lambda (x) (display (format "Arg: ~a\n" x))) args)
(exit))
(define (program)
(if (string=? (car (argv)) "csi")
(let ((s-index (list-index (lambda (x) (string-contains x "-s")) (argv))))
(if (number? s-index)
(cons 'interpreted (list-ref (argv) (+ 1 s-index)))
(cons 'unknown "")))
(cons 'compiled (car (argv)))))
(if (equal? (car (program)) 'compiled)
(main (cdr (argv))))</lang>
=={{header|Common Lisp}}==
|