[plt-dev] logging: strings vs. sexps

From: Dave Herman (dherman at ccs.neu.edu)
Date: Thu Feb 19 16:41:38 EST 2009

+1

Matthew Flatt wrote:
> At Thu, 19 Feb 2009 14:51:47 -0600, Robby Findler wrote:
>> On Thu, Feb 19, 2009 at 2:50 PM, Grant Rettke <grettke at acm.org> wrote:
>>> On Thu, Feb 19, 2009 at 12:12 PM, Eli Barzilay <eli at barzilay.org> wrote:
>>>> On Feb 19, Robby Findler wrote:
>>>>> I think Eli's asking 'why not do (log-info (format "~s"
>>>>> my-sexp))?'. Right?
>>>> [Uh, yeah, but that looks so much boring...]
>>> Is (log-info-sexpr ...) less boring?
>>>
>> It is such a short macro; do we really need to add 3 more exports to
>> scheme/base for that?
> 
> Maybe it's not that `log-message' needs to change, but that the
> `log-error', etc. forms make the wrong thing easy.
> 
> Currently,
> 
>   (log-error expr)
> 
> expands to
> 
>   (let ([l (current-logger)])
>     (when (log-level? l 'error)
>       (log-message l 'error expr (current-continuation-marks))))
> 
> 
> What if we change it to
> 
>   (let ([l (current-logger)])
>     (when (log-level? l 'error)
>       (let ([v expr])
>         (log-message l 'error (format "~s" v) v))))
> 
> ?
> 
> This changes both the formatting and the value supplied to log
> receivers by `log-error'. Programmers who want more control over the
> message and data can still use `log-message'.
> 
> _________________________________________________
>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-dev



Posted on the dev mailing list.