comp.lang.ada
 help / color / mirror / Atom feed
From: "Peter C. Chapin" <PChapin@vtc.vsc.edu>
Subject: Re: Augusta: An open source Ada 2012 compiler (someday?)
Date: Fri, 28 Mar 2014 07:31:36 -0400
Date: 2014-03-28T07:31:36-04:00	[thread overview]
Message-ID: <lPmdnasFfvkFwKjO4p2dnAA@giganews.com> (raw)
In-Reply-To: <bpjkqqF9n4fU1@mid.individual.net>


On 03/27/2014 05:51 PM, Niklas Holsti wrote:

> More interesting to me would be work towards making Ada compiler
> implementation easier. It seems to me that progress in formal methods,
> functional and declarative languages, and computer power, since the
> 80's, should make it possible...

One reason why I choose Scala as an implementation language for Augusta 
is because I wanted to see if I could productively take advantage of 
Scala's functional features when writing a serious compiler. As much as 
I like Ada, I don't think Ada is the most wonderful compiler 
implementation language imaginable.

For example Scala's algebraic data types and pattern matching make 
processing trees quite enjoyable and compilers tend to use a lot of 
trees. Also Scala has good support for creating what the community calls 
"internal domain specific languages." See for example Graph for Scala 
(http://www.scala-graph.org/), a library for manipulating graphs 
(perhaps control flow graphs?) in a arguably elegant way. Finally, of 
course, there might be interesting ways to use higher order functions. I 
won't know until I try.

My intention has also been to use LLVM or something similar (C, the JVM, 
etc) as a back end to reduce the amount of work involved in actually 
getting executable code generated. I understand it is still necessary to 
generate code for whatever target I use, but the targets above are all 
higher level than machine language and so (I anticipate) easier to manage.

Peter


  parent reply	other threads:[~2014-03-28 11:31 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-19 13:24 Augusta: An open source Ada 2012 compiler (someday?) Peter Chapin
2014-03-19 18:56 ` Tero Koskinen
2014-03-19 23:02   ` Peter Chapin
2014-03-20 18:13   ` Shark8
2014-03-20 22:41     ` Augusta: An open source Ada 2012 compiler (someday?) (Off topic) erlo
2014-03-20 23:21       ` Randy Brukardt
2014-03-19 23:04 ` Augusta: An open source Ada 2012 compiler (someday?) Brian Drummond
2014-03-19 23:24   ` Peter Chapin
2014-03-20  0:00     ` Brian Drummond
2014-03-20 18:35   ` Shark8
2014-03-22 14:30     ` Brian Drummond
2014-03-20 10:23 ` Lucretia
2014-03-20 10:49   ` J-P. Rosen
2014-03-20 23:15     ` Randy Brukardt
2014-03-24  8:18       ` J Kimball
2014-03-24  9:17         ` Thomas Løcke
2014-03-24 10:00           ` Brian Drummond
2014-03-24 14:16           ` Luke A. Guest
2014-03-24 12:51         ` Peter Chapin
2014-03-24 21:21         ` Randy Brukardt
2014-03-24 23:18           ` Dennis Lee Bieber
2014-03-24 23:50             ` J Kimball
2014-03-25  9:37           ` Stefan.Lucks
2014-03-25 20:47             ` Randy Brukardt
2014-03-25 19:41         ` Michael B.
2014-03-26  1:50           ` Shark8
2014-03-26 20:39             ` Simon Clubley
2014-03-27  9:32               ` Shark8
2014-03-27 20:02                 ` Simon Clubley
2014-03-27 20:38                   ` Lucretia
2014-03-27 21:51                     ` Niklas Holsti
2014-03-27 22:32                       ` Luke A. Guest
2014-03-28  5:12                         ` Shark8
2014-03-28  5:11                           ` J Kimball
2014-03-28  8:06                         ` Georg Bauhaus
2014-03-28 11:31                       ` Peter C. Chapin [this message]
2014-03-31 23:43                         ` Randy Brukardt
2014-03-28  8:56                     ` Dmitry A. Kazakov
2014-03-28 19:20                   ` Dan'l Miller
2014-03-28 20:40                     ` Dmitry A. Kazakov
2014-03-29 12:34                       ` Dan'l Miller
2014-03-29 13:36                         ` Dmitry A. Kazakov
2014-03-29 12:42                       ` Dan'l Miller
2014-03-29  0:15                     ` Peter Chapin
2014-03-29  3:39                       ` Shark8
2014-03-29  8:46                       ` Georg Bauhaus
2014-03-29 16:35                         ` Peter Chapin
2014-03-29  9:51                       ` Georg Bauhaus
2014-03-20 19:03   ` Shark8
2014-03-20 18:10 ` Shark8
2014-03-20 18:20   ` Qun-Ying
replies disabled

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