Re: simple vs complex languages

nmm1@cus.cam.ac.uk (Nick Maclaren)
29 May 2003 03:03:04 -0400

          From comp.compilers

Related articles
[21 earlier articles]
Re: simple vs complex languages tenger@iSeries-guru.com (Terrence Enger) (2003-05-16)
Re: simple vs complex languages alexc@std.com (Alex Colvin) (2003-05-16)
Re: simple vs complex languages eas-lab@absamail.co.za (2003-05-18)
Re: simple vs complex languages jcrens@earthlink.net (Jack Crenshaw) (2003-05-24)
Re: simple vs complex languages jcrens@earthlink.net (Jack Crenshaw) (2003-05-24)
Re: simple vs complex languages jcrens@earthlink.net (Jack Crenshaw) (2003-05-24)
Re: simple vs complex languages nmm1@cus.cam.ac.uk (2003-05-29)
Re: simple vs complex languages nmm1@cus.cam.ac.uk (2003-05-29)
Re: simple vs complex languages hat@se-46.wpa.wtb.tue.nl (Albert Hofkamp) (2003-05-29)
Re: simple vs complex languages zivca@netvision.net.il (2003-05-29)
Re: simple vs complex languages vbdis@aol.com (2003-06-03)
Re: simple vs complex languages vbdis@aol.com (2003-06-03)
Re: simple vs complex languages bear@sonic.net (2003-06-03)
[11 later articles]
| List of all articles for this month |

From: nmm1@cus.cam.ac.uk (Nick Maclaren)
Newsgroups: comp.compilers
Date: 29 May 2003 03:03:04 -0400
Organization: University of Cambridge, England
References: 03-04-095 03-05-013 03-05-184
Keywords: parse, design
Posted-Date: 29 May 2003 03:03:04 EDT

Jack Crenshaw <jcrens@earthlink.net> wrote:
>Albert Hofkamp wrote:
>
>> There is a big didactic problem with Pscal imho. The language pushes
>> the top-down design approach, yet I have to write my program
>> bottom-up. I think that is a very big compromise for ease of parsing.
>
>With respect, that dog won't hunt. I've been hearing this complaint
>for decades, but I still don't buy it.
>
>I presume you're talking about the requirement in classical Pascal
>that requires a function to be declared before it's referenced. Duh!
>What else would anyone expect?


Run-time checking? It is a well-understood technology.


>Good luck, however, trying to execute the main program before you've
>defined its subroutines.
>
>[In the versions of Lisp that I know, a function doesn't have to be
>declared or defined until its called. That can make development a lot
>easier. -John]


And, as with all methods that provide you with rope, it can also allow
you to tie yourself in knots and/or hang yourself.


There are a fair number of languages around where a function doesn't
have to exist even when it is called, and a missing function will be
automatically converted into some other construction (e.g. a call to
an external program). This can be useful, as any shell programmer can
witness :-)


I have also had trouble, on occasion, when wanting to write seriously
polymorphic code - i.e. not just argument types, but number of them,
result value of function and so on. Fortran used to sort of allow
this, entirely by accident, but most compilers didn't. There is no
reason that such a facility should not be permitted in a language,
beyond the detail that it is yet more rope ....




Regards,
Nick Maclaren.


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.