🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.functional
Article #4

Re: Reflective extensions (was Re: Why functional languages?)

#4
From: Richard Brooksby
Date: Tue, 27 Oct 1992 12:54
39 lines
2584 bytes
tmb@arolla.idiap.ch (Thomas M. Breuel) wrote:

> In article <RICHARD.92Oct21123440@ml.harlqn.co.uk>
> richard@harlqn.co.uk (Richard Brooksby) writes:
> 
>    tmb@arolla.idiap.ch (Thomas M. Breuel) wrote some stuff about
>    LISP syntax for ML and how it would make syntactic extensions easier.
> 
>    You want to extend the language and make the parser extensible in
>    order to add new derived forms.  Lisp-like syntax doesn't really
>    make this easier to do if one is to maintain a strong phase
>    distinction.
> 
> I don't want to have to make the parser extensible in order to add
> "new derived forms". That's precisely my point.

*Flash* I see!  (Probably.)

We're talking about different things, I think.  You are advocating
LISP _syntax_ because it means that language extensions don't have to
modify the parser _algorithm_ because all such extensions conform to a
simple format.  I'm talking about using LISP _data_structures_ to
represent the abstract syntax for the purposes of writing functions
_in_ML_ which manipulate that syntax in the manner of LISP macros.

In which case, I agree with your point.  A simple and regular
meta-syntax such as that of LISP S-expressions makes writing what
amounts to an extensible parser trivial.  This is a Good Thing.  I'm
not sure how regular a meta-syntax of Standard ML would be for the
purposes of such extensions.  Any ideas?  I have seen some work in
this area in a Calculus of Constructions language somewhere.  Can
anyone come up with a reference of brief details?

Are you advocating the exposure of the underlying data structure to
the programmer?  If so, all my objections still apply.
---
Richard Brooksby <richard@harlqn.co.uk>
ML Project / Symbolic Processing Division / Harlequin
+44 223 872522 ext 50
Technical Details
Message-ID: <RICHARD.92Oct27125430@ml.harlqn.co.uk>
Path: arc1-ca.pugleaf.net!sparky!uunet!pipex!harlqn.co.uk!harlqn!richard
References: <1992Sep26.212935.26809@eng.umd.edu> <1992Sep28.120225.9524@odin.diku.dk> <TMB.92Sep28144424@arolla.idiap.ch> <RICHARD.92Oct16184638@freud.harlqn.co.uk> <TMB.92Oct17172954@arolla.idiap.ch> <RICHARD.92Oct21123440@ml.harlqn.co.uk> <TMB.92Oct21172225@arolla.idiap.ch>

Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.functional
Path: arc1-ca.pugleaf.net!sparky!uunet!pipex!harlqn.co.uk!harlqn!richard
From: richard@harlqn.co.uk (Richard Brooksby)
Subject: Re: Reflective extensions (was Re: Why functional languages?)
In-Reply-To: tmb@arolla.idiap.ch's message of 21 Oct 92 21:22:25 GMT
Message-ID: <RICHARD.92Oct27125430@ml.harlqn.co.uk>
Lines: 39
Sender: news@harlqn.co.uk (Usenet News Account)
Organization: Harlequin Limited, Cambridge, England
References: <1992Sep26.212935.26809@eng.umd.edu> <1992Sep28.120225.9524@odin.diku.dk>
 <TMB.92Sep28144424@arolla.idiap.ch>
 <RICHARD.92Oct16184638@freud.harlqn.co.uk>
 <TMB.92Oct17172954@arolla.idiap.ch>
 <RICHARD.92Oct21123440@ml.harlqn.co.uk>
 <TMB.92Oct21172225@arolla.idiap.ch>
Date: Tue, 27 Oct 1992 12:54:30 GMT