guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Strange memoizing behavior


From: Michael Livshin
Subject: Re: Strange memoizing behavior
Date: 24 Jan 2002 19:53:11 +0200
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Copyleft)

Matthias Koeppe <address@hidden> writes:

> Michael Livshin <address@hidden> writes:
> 
> > Matthias Koeppe <address@hidden> writes:
> >> 
> >> Indeed, we cannot disallow passing macros to functions because that
> >> would effectively destroy their first-class status.
> >
> > yes.  it also would allow Guile not to be stuck in interpreter-land
> > forever.  I fail to see how that would be a bad thing.
> 
> Care to explain what you mean?  
> 
> I was suggesting (in the paragraph that you have cut away) to add
> extra error checking to the macro-memoizing evaluator, because passing
> macros to a procedure that expects a procedure-argument can cause
> wrong, destructive memoizing when the passed argument is used in an
> operator position.  (I gave an example where this has bitten me and
> suggested that an error should be signalled in certain situations.)

in the paragraph I've cut away you (as I understand) have suggested a
way to avoid *calling* macros that are passed as values.  right?

I simply fail to see what the ability to pass macros as values buys
you, so what I'm suggesting is that this ability is taken out from
Guile altogether.  macros shouldn't be first class.  whether that is
feasible with the current evaluator, I don't know -- it's been a while
since I last looked at it.

sorry for wasting your time in case I'm hopelessly confused,
--mike

[ oh, and your mail setup bounces my mail.  doesn't like the
  '@yahoo.com' thingie, I guess. ]

-- 
In many cases, writing a program which depends on supernatural insight
to solve a problem is easier than writing one which doesn't.
                                                        -- Paul Graham




reply via email to

[Prev in Thread] Current Thread [Next in Thread]