;;; -*- coding: euc-jp -*- ;;; This is just a joke. ;;; You need to compile Gauche in EUC-JP code. ;;; ;; $Id: japanize-euc.scm,v 1.2 2007-03-02 07:20:41 shirok Exp $ (define-syntax ¦Ë (syntax-rules () ((_ args body ...) (lambda args body ...)))) (define-syntax ÄêµÁ (syntax-rules (¤Ï) ((_ (f . args) body ...) (define (f . args) body ...)) ((_ var val) (define var val)) ((_ var ¤Ï val) (define var val)))) (define-syntax ¤â¤· (syntax-rules (¤Ê¤é¤Ð ¤Ç¤Ê¤±¤ì¤Ð) ((_ test ¤Ê¤é¤Ð then) (if test then)) ((_ test ¤Ê¤é¤Ð then ¤Ç¤Ê¤±¤ì¤Ð else) (if test then else)) ((_ test ¤Ç¤Ê¤±¤ì¤Ð else) (unless test else)) ((_ test then) (if test then)) ((_ test then else) (if test then else)))) (define-syntax ÂåÆþ (syntax-rules (¤Ø) ((_ var ¤Ø val) (set! var val)) ((_ var val) (set! var val)))) (define-syntax ¶É½êÄêµÁ (syntax-rules (¤Ï) ((_ ((var ¤Ï val) ...) body ...) (let ((var val) ...) body ...)) ((_ ((var val) ...) body ...) (let ((var val) ...) body ...)) )) (define-syntax ½ç¼¡¶É½êÄêµÁ (syntax-rules (¤Ï) ((_ ((var ¤Ï val) ...) body ...) (let* ((var val) ...) body ...)) ((_ ((var val) ...) body ...) (let* ((var val) ...) body ...)) )) (define-syntax ºÆµ¢¶É½êÄêµÁ (syntax-rules (¤Ï) ((_ ((var ¤Ï val) ...) body ...) (letrec ((var val) ...) body ...)) ((_ ((var val) ...) body ...) (letrec ((var val) ...) body ...)) )) (define ¡ã <) (define ¡å <=) (define ¡á =) (define ¡ä >) (define ¡æ >=) (define ¡Ü +) (define ¡Ý -) (define ¡ß *) (define ¡à /) (define ʸ»úÎ󢪥ꥹ¥È string->list) (define µÕ¥ê¥¹¥È reverse) ;;----------------------------------------------- ;; examples (ÄêµÁ ³¬¾è ¤Ï (¦Ë (n) (¤â¤· (¡å n 2) ¤Ê¤é¤Ð n ¤Ç¤Ê¤±¤ì¤Ð (¡ß n (³¬¾è (¡Ý n 1)))))) (ÄêµÁ ²óʸ¤«? ¤Ï (¦Ë (ʸ»úÎó) (½ç¼¡¶É½êÄêµÁ ((ʸ»ú¥ê¥¹¥È ¤Ï (ʸ»úÎ󢪥ꥹ¥È ʸ»úÎó)) (µÕʸ»ú¥ê¥¹¥È ¤Ï (µÕ¥ê¥¹¥È ʸ»ú¥ê¥¹¥È))) (equal? µÕʸ»ú¥ê¥¹¥È ʸ»ú¥ê¥¹¥È))))