Re: APL Compilation (WAS: VM-friendly GC)

ressler@cs.cornell.edu (Gene Ressler)
Wed, 19 Feb 1992 00:13:11 GMT

          From comp.compilers

Related articles
VM-friendly GC whatis@ucsd.edu (1992-02-08)
APL Compilation (WAS: VM-friendly GC) pardo@cs.washington.edu (1992-02-14)
Re: APL Compilation (WAS: VM-friendly GC) zmola@bert.eecs.uic.edu (1992-02-17)
Re: APL Compilation (WAS: VM-friendly GC) hoyt@isus.org (1992-02-17)
Re: APL Compilation (WAS: VM-friendly GC) ressler@cs.cornell.edu (1992-02-19)
Re: APL Compilation (WAS: VM-friendly GC) rbe@yrloc.ipsa.reuter.COM (1992-02-21)
| List of all articles for this month |

Newsgroups: comp.compilers
From: ressler@cs.cornell.edu (Gene Ressler)
Keywords: storage, APL
Organization: Cornell Univ. CS Dept, Ithaca NY 14853
References: 92-02-039 92-02-070 92-02-082
Date: Wed, 19 Feb 1992 00:13:11 GMT

zmola@bert.eecs.uic.edu (Carl Zmola) writes:


>In 92-02-067 the moderator (John Levine) writes:
>>[It surprises me that IBM does more APL interpreters, no compilers.]


>[HP did a compiled commercial APL nearly 15 years ago, it's not like it's
>a big secret how to do it. You do need to be prepared to recompile when
>shapes and types of data change, but in real code, they don't very often
>and compilation can be a big win. Also, back when I was writing APL I
>often had expressions that used outer products to create enormous
>intermediate results that were squashed down by various sorts of reduction
>functions. The interpreter choked on them, because they exceeded the
>address space of the PDP-10 they were running on. Compiled code doesn't
>need to materialize the intermediate arrays all at once and can handle
>such expressions easily. I suppose IBM would explain that they've solved
>this problem by increasing the size of the address space. -John]


For the interested, the following talks about an APL compiler that
compares favorably to IBM's VS FORTRAN compiler in generating 3090 vector
code. Ching is from IBM Watson, so perhaps they're doing something after
all...


@article{ Wai87:apl,
      author = "Wai-Mee Ching and Andrew Xu",
      title = "A Vector Code Back End of the {APL}370 Compiler on
       {IBM} 3090",
      journal = "{ACM} {APL} {Q}uote {Q}uad",
      pages = {69-76},
      month = dec,
      year = 1987,
      volume = 18,
      number = 2,
}


Also, Timothy Budd has a short and fun-to-read book that discusses some of
the points made by the moderator in detail. The compiler discussed
therein is apparently available for experimentation.


@book{ Bud88:apl,
      author = "Timothy Budd",
      title = "An APL Compiler",
      publisher = S-Vpub, % That's Springer-Verlag
      address = "New York",
      year = 1988,
      keywords = "APL compiler, code generation",
      owned = FALSE,
}


Budd has lately done more work on generating vector code from APL, but
the compiler above generates vanilla (albeit clever) C code.


Gene
[Budd's book is good, I reviewed it for Computing Reviews. Make sure to
get a 2nd printing copy that has legible APL in the examples. -John]
--


Post a followup to this message

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