[plt-scheme] Re: Simple procedure building question

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Mon Oct 20 16:36:10 EDT 2008

Quote in Scheme is just like apostrophe in English. I tell my sons,  
if you have trouble with its vs it's, don't use the latter. Expand  
it. Same here.

-- Matthias



On Oct 20, 2008, at 4:19 PM, blockstack wrote:

> doesn't the quote prevent the inner procedures in the else-expr from
> being evaluated?
>
> On Oct 20, 3:02 pm, "Andre Mayers" <andre.may... at usherbrooke.ca>
> wrote:
>> (define (B lst x y)
>>   (if (null? lst)
>>       y
>>       `(,(car lst) ,x ,(B (cdr lst) x y))))
>>
>> -----Message d'origine-----
>> De : plt-scheme-boun... at list.cs.brown.edu
>> [mailto:plt-scheme-boun... at list.cs.brown.edu] De la part de  
>> blockstack
>> Envoyé : October-20-08 3:56 PM
>> À : plt-sch... at list.cs.brown.edu
>> Objet : [plt-scheme] Re: Simple procedure building question
>>
>> correction: i meant to have y for the then-expr
>>
>> (define (B lst x y)
>>     (if (null? lst)
>>         y
>>     ((car lst) x (B (cdr lst) x y))))
>>
>> On Oct 20, 2:51 pm, blockstack <blockst... at gmail.com> wrote:
>>
>>> I want to be able to pass a list of function names and create a
>>> procedure
>>> lst would be something like (f g m n) where f, g, m, and n are names
>>> of functions
>>
>>> (define (B lst x y)
>>>    (if (null? lst)
>>>        x
>>>    ((car lst) x (B (cdr lst) x y))))
>>
>>> I want to end up with a list like
>>> (f x (g x (m x (n x y))))
>>
>>> I know that my current procedure won't return a list, but I know  
>>> that
>>> it must be really simple to make it do so.
>>
>>> I've tried different ways of using 'list' and cons, but I just can't
>>> get it.
>>> any help?
>>
>>> _________________________________________________
>>>   For list-related administrative tasks:
>>>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>
>> _________________________________________________
>>   For list-related administrative tasks:
>>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>
>> _________________________________________________
>>   For list-related administrative tasks:
>>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
> _________________________________________________
>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme



Posted on the users mailing list.