comp.lang.ada
 help / color / mirror / Atom feed
From: IVANOVIC%VAXR@CIRCUS.LLNL.GOV ("Vladimir Ivanovic 415.423.7786")
Subject: Re: Ada - Lisp Wars
Date: 13 Mar 89 18:07:00 GMT	[thread overview]
Message-ID: <8903141815.AA03054@ajpo.sei.cmu.edu> (raw)


    Several persons have recently said things like "Ada can do everything
    Lisp can" or "Ada can't do everything Lisp can."  I'm not sure if it's
    useful to know the answer to such questions. 
    
    Some languages are better suited to certain problem domains than
    others. One can be more effective using those languages on those
    problems, rather than forcing the use of an unsuitable language.
    That's why I prefer programming in an environment where *every*
    language is callable from another. 
    
    One of the things DEC did right when they introduced the VAX/VMS series
    in 1978 was to define the VAX/VMS Calling Standard.  All DEC's (except
    TPU - c'mon DEC - what's the problem here?) languages are callable from
    one another.  It is possible to write an Ada routine which calls a Lisp
    routine which calls a BASIC routine which calls a C routine which calls
    an OPS5 routine.... (provided the called langugage knows about the
    caller's data types). 
    
    In any case, I'd like to offer a proof that Ada and Lisp can both do
    anything the other can do. 
    
    (1) It is possible to write a Lisp interpreter in Ada.  Hence Ada
    can do anything Lisp can do.
    
    (2) It is possible to write an Ada compiler in Lisp.  Hence Lisp
    can do anything Ada can do.
    
    Voila!  The argument is over.  Everyone wins.  No one loses.
    
    The really tough question is "When is it appropriate to use Ada?
    or Lisp? or Scan? or C? or <insert favorite language here>?"

             reply	other threads:[~1989-03-13 18:07 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1989-03-13 18:07 "Vladimir Ivanovic 415.423.7786" [this message]
1989-03-15 18:05 ` Ada - Lisp Wars John Gateley
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox