- Timestamp:
- 05/25/08 23:37:08 (6 months ago)
- Location:
- lang/c/misc/mlisp
- Files:
-
- 3 modified
-
core/c_compiler.cpp (modified) (2 diffs)
-
core/v_vm.h (modified) (1 diff)
-
proto/stackbased.scm (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/c/misc/mlisp/core/c_compiler.cpp
r12358 r12366 193 193 static SExp find_free(SExp x, SExp b); 194 194 195 static SExp find_free_compound(SExp body, SExp free) { 196 for (SExp p = body; !nilp(p); p = cdr(p)) { 195 static SExp find_free_compound(SExp xs, SExp b) { 196 SExp r = nil; 197 for (SExp p = xs; !nilp(p); p = cdr(p)) { 197 198 SExp x = car(p); 198 free = find_free(x, free);199 } 200 return free;199 r = set_union(find_free(x, b), r); 200 } 201 return r; 201 202 } 202 203 … … 241 242 return find_free_compound(body, b); 242 243 } else { 243 SExp r = nil; 244 for (;; x = cdr(x)) { 245 if (nilp(x)) break; 246 r = set_union(find_free(car(x), b), r); 247 } 248 return r; 244 return find_free_compound(x, b); 249 245 } 250 246 } else { -
lang/c/misc/mlisp/core/v_vm.h
r11756 r12366 1 //=============================================================================2 1 /// �o�[�`�����}�V�� 3 2 //============================================================================= -
lang/c/misc/mlisp/proto/stackbased.scm
r12358 r12366 295 295 (lambda (x b) 296 296 (define (find-free-compound xs b) 297 (fold (lambda (x r) ( find-free xr))298 b297 (fold (lambda (x r) (set-union (find-free x b) r)) 298 '() 299 299 xs)) 300 300 (cond … … 319 319 (find-free-compound body b))) 320 320 (else 321 (recur next ((x x)) 322 (if (null? x) 323 '() 324 (set-union (find-free (car x) b) 325 (next (cdr x)))))))) 321 (find-free-compound x b)))) 326 322 (else '())))) 327 323
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)