Stop array from creating global symbol
This commit is contained in:
		
							parent
							
								
									76b1f987a2
								
							
						
					
					
						commit
						737502c4de
					
				@ -14,9 +14,10 @@
 | 
				
			|||||||
    (let* ((this (gensym))
 | 
					    (let* ((this (gensym))
 | 
				
			||||||
           (index-prefix (fuse this 'index))
 | 
					           (index-prefix (fuse this 'index))
 | 
				
			||||||
           (indices (call static :create-indices length))
 | 
					           (indices (call static :create-indices length))
 | 
				
			||||||
           (index-bindings (map (lambda (i) (list (fuse index-prefix i))) indices)))
 | 
					           (index-bindings (map (lambda (i) `(,(fuse index-prefix i))) indices))
 | 
				
			||||||
 | 
					           (scope `((,this) ,@index-bindings)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      `(let ,index-bindings
 | 
					      `(let ,scope
 | 
				
			||||||
        (setq ,this
 | 
					        (setq ,this
 | 
				
			||||||
          (dlambda
 | 
					          (dlambda
 | 
				
			||||||
            (:get (i)
 | 
					            (:get (i)
 | 
				
			||||||
@ -31,13 +32,10 @@
 | 
				
			|||||||
              ,length)
 | 
					              ,length)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            (t ()
 | 
					            (t ()
 | 
				
			||||||
              ((lambda (indices accumulator)
 | 
					              ((lambda (length accumulator)
 | 
				
			||||||
                 (if (null? indices)
 | 
					                 (if (< length 1)
 | 
				
			||||||
                   accumulator
 | 
					                   accumulator
 | 
				
			||||||
                   (recur
 | 
					                   (recur
 | 
				
			||||||
                     (rest indices)
 | 
					                     (- length 1)
 | 
				
			||||||
                     (cons
 | 
					                     (cons (call ,this :get (- length 1)) accumulator))))
 | 
				
			||||||
                       (call ,this :get (first indices))
 | 
					               ,length nil))))))))
 | 
				
			||||||
                       accumulator))))
 | 
					 | 
				
			||||||
               (reverse ',indices)
 | 
					 | 
				
			||||||
               nil))))))))
 | 
					 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user