[Top][All Lists]

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

Re: Lisp refactoring puzzle

From: William Clifford
Subject: Re: Lisp refactoring puzzle
Date: Wed, 28 Mar 2012 19:18:49 -0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

Neil Cerutti <address@hidden> writes:

> On 2011-07-12, Petter Gustad <address@hidden> wrote:
>> Xah Lee <address@hidden> writes:
>>> it's funny, in all these supposedly modern high-level langs, they
>>> don't provide even simple list manipulation functions such as union,
>>> intersection, and the like. Not in perl, not in python, not in lisps.
>> In Common Lisp you have:
>> CL-USER> (union '(a b c) '(b c d))
>> (A B C D)
>> CL-USER> (intersection '(a b c) '(b c d))
>> (C B)
> What's the rationale for providing them? Are the definitions
> obvious for collections that a not sets?

This seems like a good general question to me, although, I feel like the
answer to this question specifically is "yes, obvious enough." A general
purpose programming language ought to be general enough to allow
expansion, but have enough "obvious" features, that one doesn't have to
reinvent the wheel.

I recently read somewhere that human languages "differ less in what they
allow, and more in what they require" (paraphrase). I have little-to-no
computer science expertise, but I sense that in computer languages with
Turing equivalency this is exactly true.

William Clifford

reply via email to

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