コード例 #1
0
ファイル: E.py プロジェクト: myzsyweb/Casuistry
    return f()

##    def loadMacro(filename):#move to eval but limit
##        with open(filename) as f:
##            code = f.read()
##            start = 0
##            while 1:
##                t,end = peekSexp(code,start)
##                if end==-1:
##                    break
##                defmacro(code[start:end])
##                start = end 
##    loadMacro("initsyx.scm")

eval9(peekSexp('1')[0])
eval9(peekSexp('(::define a 1)')[0])
buildExp10(peekSexp('(::define a 1)')[0],Env())
defmacro(T.peekSexp("""(defmarco begin lst (cons '::begin lst))""")[0])
@block
def initMacro():
    Scm.load("initsyx.scm",topenvrn)
    Scm.load("quasiquote.scm",topenvrn)
    Scm.load("do.scm",topenvrn)
    Scm.load("initsyn2.scm",topenvrn)

###################################################################
topenvrn.define(Sym("apply"),BlkApp9())##
#define("apply",BlkApp9())
import P
P.makePrim(lambda k,v:topenvrn.define(k,v),topenvrn,Scm)