[Date Prev] [Date Next] [Thread Prev] [Thread Next] Date Index Thread Index Search archive:
Date:Mon Jan 1 17:23:26 1993 
Subject:Re: List and Vector Syntax (long) 
From:Steve Knight 
Volume-ID:930101.02 

To answer a couple of specific points made about quotation in POP-11
and Pepper, here's a short note.

In the context of the POP-11 syntax "'any chars'", Aaron Sloman writes:
> I've just realised that this facility could be screwed up by the
> suggestion from Steve Knight and Chris Dollin to allow multiple
> quoted words by using
>     "the cat on the mat"
> to put five words on the stack.

Yes, this is an issue.  However, it is dealt with via the obligatory
force-quotation mechanism '\'.  So where you would write
    "'f(x)'"  in POP-11
you write
    "\'f(x)'" in Pepper

This is rather neater than the POP-11 syntax because it works in
any context.  For example one has to write
    [A funny atom % "'f(x)'" %] in POP-11
to get the same effect as
    "[A funny atom \'f(x)']"    in Pepper


> Taking account of all requirements when designing a general purpose
> language is HARD!

I couldn't agree more.  Illustrating this, the recent evolution of 
POP-11 has left a number of awkward features.  One of the aims in 
designing Pepper was to explore the possibility of a rational 
reconstruction of some parts of POP-11.  In the case of quotation, 
list and vector syntax I am satisfied that Pepper is a clean and 
thorough solution.

And we certainly found designing the details of the solution exceedingly
tricky!  POP-11 is one of the best designed languages in existence
and even its weak points are hard to definitely improve on.  Although
we had a strong vision of the core of the solution, designing a system
that coped with all the corner cases was difficult.

Steve