[racket] Help On User Libraries - The Basics

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Sun Aug 21 14:16:46 EDT 2011

At Sun, 21 Aug 2011 14:03:14 -0400, Ray Racine wrote:
> Can I assume that when you say everyone uses racket setup that the arching
> strategy here is for a local library/collection to be established as as a
> planet lib associated with a development link and use raco as the make-build
> system for the local collection?

Yes.

> > > Second, how do I tell racket to give a full
> > > stack trace?
> >
> > [...]
> >
> 
> So using my example all I see is the following.
> 
> [ray at ray rktlib]$ rlwrap /usr/local/racket/bin/racket -i  -S /code/rktlib
> Welcome to Racket v5.1.3.3.
> > (require compiler/compiler)
> > (compile-collection-zos "c1")
> for-each: expects type <proper list> as 2nd argument, given: #<void>; other
> arguments were: #<procedure:.../compiler/cm.rkt:594:4>
> 
>  === context ===
> /usr/local/racket/collects/compiler/compiler-unit.rkt:199:13: for-loop
> /usr/local/racket/collects/racket/private/misc.rkt:87:7

In that case, I think you're seeing all the stack trace that's
available. (The frame for `for-each' got replaced by a tail call to
`error', and other intermediate functions similarly used tail calls or
were inlined. The "misc.rkt" frame is the REPL.)

You're probably already familiar with "errortrace", in which case you
know that its output is better defined, but it only works when you add
errortrace instrumentation before compiling to bytecode.



Posted on the users mailing list.