private/experiment.rkt
#lang racket

(require compiler/decompile
         compiler/zo-parse
         setup/dirs)

(require scheme/pretty)
(define (try e)
  (pretty-print
   (zo-parse (let-values ([(in out) (make-pipe)])
               (write (parameterize ([current-namespace (make-base-namespace)])
                        (compile e))
                      out)
               (close-output-port out)
               in))))

(define more-scheme-decompiled 
  (zo-parse (open-input-file
             (build-path (find-collects-dir)
                         "scheme/private/compiled/more-scheme_ss.zo"))))


#;(try '(lambda (q . more)
        (letrec ([f (lambda (x) f)])
          (lambda (g) f))))


(try  '(begin
         (define (thunk x)
           (lambda ()
             x))
         
         
         (define (f x)
           (* x x))
         
         (f (f ((thunk 42))))))