diff options
| author | dos-reis <gdr@axiomatics.org> | 2011-02-10 21:06:02 +0000 | 
|---|---|---|
| committer | dos-reis <gdr@axiomatics.org> | 2011-02-10 21:06:02 +0000 | 
| commit | 81f1eb5784645fffc263bae02d4d12020c1e694c (patch) | |
| tree | d0f93eba6aacab8bcb63d4793dcf1f56367579d2 /src/interp | |
| parent | 23d51a95663fe0587a1252193f9a976495ddc146 (diff) | |
| download | open-axiom-81f1eb5784645fffc263bae02d4d12020c1e694c.tar.gz | |
	* interp/vmlisp.lisp (VEC-SETELT): Remove.
	* interp/scan.boot (scanInserts): Use vectorRef.
	* interp/functor.boot (DescendCode): Don't check for SETELT or
	QSETREFV forms.
	* interp/nrunfast.boot (evalSlotDomain): Likewise.
Diffstat (limited to 'src/interp')
| -rw-r--r-- | src/interp/functor.boot | 2 | ||||
| -rw-r--r-- | src/interp/modemap.boot | 4 | ||||
| -rw-r--r-- | src/interp/nrunfast.boot | 1 | ||||
| -rw-r--r-- | src/interp/scan.boot | 14 | ||||
| -rw-r--r-- | src/interp/vmlisp.lisp | 3 | 
5 files changed, 10 insertions, 14 deletions
diff --git a/src/interp/functor.boot b/src/interp/functor.boot index 4e066e9a..c909d55d 100644 --- a/src/interp/functor.boot +++ b/src/interp/functor.boot @@ -565,8 +565,6 @@ DescendCode(code,flag,viewAssoc,EnvToPass) ==    code is ['MDEF,:.] => nil    code is ['%call,:.] => code    code is ["setShellEntry",:.] => code -- can be generated by doItIf -  code is ['SETELT,:.] => systemErrorHere ["DescendCode",code] -  code is ['QSETREFV,:.] => systemErrorHere ["DescendCode",code]    stackWarning('"unknown Functor code: %1 ",[code])    code diff --git a/src/interp/modemap.boot b/src/interp/modemap.boot index 375ea972..d058a937 100644 --- a/src/interp/modemap.boot +++ b/src/interp/modemap.boot @@ -361,7 +361,9 @@ addConstructorModemaps(name,form is [functorName,:.],e) ==  --The way XLAMs work: ---  ((XLAM ($1 $2 $3) (SETELT $1 0 $3)) X "c" V) ==> (SETELT X 0 V) +--  ((XLAM ($1 $2 $3) (%store (%vref $1 0) $3)) X "c" V) ==> +--               (%store (%vref X 0) V) +--  getDomainsInScope e ==    $insideCapsuleFunctionIfTrue=true => $CapsuleDomainsInScope diff --git a/src/interp/nrunfast.boot b/src/interp/nrunfast.boot index 2a524414..f0532e58 100644 --- a/src/interp/nrunfast.boot +++ b/src/interp/nrunfast.boot @@ -98,7 +98,6 @@ evalSlotDomain(u,dollar) ==      vector? y => y      y is ["setShellEntry",:.] => eval y               --lazy domains need to marked; this is dangerous? -    y is ['SETELT,:.] => systemErrorHere "evalSlotDomain"      y is [v,:.] =>        vector? v => lazyDomainSet(y,dollar,u)   --old style has [$,code,:lazyt]        IDENTP v and constructor? v  diff --git a/src/interp/scan.boot b/src/interp/scan.boot index 18a858a5..7973d579 100644 --- a/src/interp/scan.boot +++ b/src/interp/scan.boot @@ -1,6 +1,6 @@  -- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd.  -- All rights reserved. --- Copyright (C) 2007-2010, Gabriel Dos Reis. +-- Copyright (C) 2007-2011, Gabriel Dos Reis.  -- All rights reserved.  --  -- Redistribution and use in source and binary forms, with or without @@ -168,11 +168,11 @@ scanInsert(s,d) ==      k := k+1    v := newVector(n+1)    for i in 0..k-1 repeat -    VEC_-SETELT(v,i,u.i) -  VEC_-SETELT(v,k,s) +    vectorRef(v,i) := u.i +  vectorRef(v,k) := s    for i in k..n-1 repeat -    VEC_-SETELT(v,i+1,u.i) -  VEC_-SETELT(d,h,v) +    vectorRef(v,i+1) := u.i +  vectorRef(d,h) := v    s  scanDictCons()== @@ -180,9 +180,9 @@ scanDictCons()==    d :=      a := newVector 256      b := newVector 1 -    VEC_-SETELT(b,0,MAKE_-CVEC 0) +    vectorRef(b,0) := MAKE_-CVEC 0      for i in 0..255 repeat -      VEC_-SETELT(a,i,b) +      vectorRef(a,i) := b      a    for s in l repeat      scanInsert(s,d) diff --git a/src/interp/vmlisp.lisp b/src/interp/vmlisp.lisp index b4cbf6d2..af7021cd 100644 --- a/src/interp/vmlisp.lisp +++ b/src/interp/vmlisp.lisp @@ -428,9 +428,6 @@  (defmacro times (&rest args)   `(* ,@args)) -(defmacro vec-setelt (vec ind val) - `(setf (svref ,vec ,ind) ,val)) -  (defmacro zero? (x)    `(and (typep ,x 'fixnum) (zerop (the fixnum ,x))))  | 
