core: Cleanup cells.
[mes.git] / tests / gc-0.test
1 #! /bin/sh
2 # -*-scheme-*-
3 echo ' ()' | cat $($(dirname $0)/../scripts/include.mes $0) $0 /dev/stdin | $(dirname $0)/..//mes "$@"
4 #paredit:||
5 exit $?
6 !#
7
8 ;;; -*-scheme-*-
9
10 ;;; Mes --- Maxwell Equations of Software
11 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
12 ;;;
13 ;;; This file is part of Mes.
14 ;;;
15 ;;; Mes is free software; you can redistribute it and/or modify it
16 ;;; under the terms of the GNU General Public License as published by
17 ;;; the Free Software Foundation; either version 3 of the License, or (at
18 ;;; your option) any later version.
19 ;;;
20 ;;; Mes is distributed in the hope that it will be useful, but
21 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
22 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23 ;;; GNU General Public License for more details.
24 ;;;
25 ;;; You should have received a copy of the GNU General Public License
26 ;;; along with Mes.  If not, see <http://www.gnu.org/licenses/>.
27
28 (define zero (make-cell 2 0 0))
29 (define one (make-cell 2 0 1))
30 (define pair (make-cell 3 zero one)) 
31 (define zero-list (make-cell 3 zero '()))
32 (define v (make-vector 1))
33 (display v) (newline)
34 (vector-set! v 0 88)
35 (define zero-v-list (make-cell 3 v zero-list))
36 (define list (make-cell 3 (make-cell 3 zero one) zero-v-list))
37 (display "list: ") (display list) (newline)
38 (display "v: ") (display v) (newline)
39 (gc)
40 (display "list: ") (display list) (newline)
41 (display "v: ") (display v) (newline)
42 (gc)
43 (display "list: ") (display list) (newline)
44 (display "v: ") (display v) (newline)
45 (gc)
46 (display "list: ") (display list) (newline)
47 (display "v: ") (display v) (newline)
48 (gc)
49 (display "list: ") (display list) (newline)
50 (display "v: ") (display v) (newline)
51 (gc)
52 (display "list: ") (display list) (newline)
53 (display "v: ") (display v) (newline)
54 (gc)
55 (display "list: ") (display list) (newline)
56 (display "v: ") (display v) (newline)
57 (gc)
58 (display "list: ") (display list) (newline)
59 (display "v: ") (display v) (newline)
60 (gc)
61 (display "list: ") (display list) (newline)
62 (display "v: ") (display v) (newline)
63 (gc)
64 (display "list: ") (display list) (newline)
65 (display "v: ") (display v) (newline)
66 (gc)
67 (display "list: ") (display list) (newline)
68 (display "v: ") (display v) (newline)
69 (gc)
70 (display "list: ") (display list) (newline)
71 (display "v: ") (display v) (newline)
72 (gc)
73 (display "list: ") (display list) (newline)
74 (display "v: ") (display v) (newline)
75 (gc)
76 (display "list: ") (display list) (newline)
77 (display "v: ") (display v) (newline)
78 (gc)
79 (display "list: ") (display list) (newline)
80 (display "v: ") (display v) (newline)
81 (gc)
82 (display "list: ") (display list) (newline)
83 (display "v: ") (display v) (newline)
84 (gc)
85 (display "list: ") (display list) (newline)
86 (display "v: ") (display v) (newline)
87 (gc)
88 (display "list: ") (display list) (newline)
89 (display "v: ") (display v) (newline)
90 ;; (display "list: ") (display list) (newline)
91 ;; (display "v: ") (display v) (newline)
92 ;;(gc-show)
93 ;;(display "cells:") (display %the-cells) (newline)
94 ;;(gc list)
95 ;; (display "gc done\n")
96 ;; (display "scm old:") (display %new-cells) (newline)
97 ;; (display "scm cells:") (display %the-cells) (newline)