liberte@m.cs.uiuc.edu (07/18/88)
I've been reading this group for a couple years now and havent noticed any discussion of APL features in other languages. So what have people found? I would be interested in learning about APL-like libraries for object-oriented languages. The APL syntax and operator overloading are interesting by themselves. But the general array processing capability is what makes APL uniquely special. Also, the interactive environment speeds debugging. I learned APL (as my first language) 15 years ago and since then have only seen a couple languages with similar interactive capability. I dabbled in Forth partly for its interactive environment. Most interpreted language environments provide this, but compiled implementations could too. Lightspeed Pascal for the Macintosh allows arbitrary expression evaluation while debugging. I guess I was spoiled by APL in some ways. I expected the good features of APL to be found in more programming languages/environments. Dan LaLiberte uiucdcs!liberte liberte@cs.uiuc.edu liberte%a.cs.uiuc.edu@uiucvmd.bitnet
ljdickey@water.waterloo.edu (Lee Dickey) (07/18/88)
In article <4600002@m.cs.uiuc.edu> liberte@m.cs.uiuc.edu writes: > >I've been reading this group for a couple years now and havent noticed >any discussion of APL features in other languages. So what have >people found? > One language comes to mind: NIAL It is very much like APL, but includes structured programming concepts. Pascal programmers feel at home here, and APL programmers can write APL like code with most primitives done via keywords. -- L. J. Dickey, Faculty of Mathematics, University of Waterloo. ljdickey@WATDCS.UWaterloo.ca ljdickey@water.BITNET ljdickey@water.UUCP ..!uunet!watmath!water!ljdickey ljdickey@water.waterloo.edu
amit@umn-cs.cs.umn.edu (Neta Amit) (07/18/88)
Nothing to compare, but if you're interested in powerful, expressive languages that have either interesting control structures or interesting data structures, I suggest that you take a close look at Scheme (for the former) and Icon (for the latter). In particular, notice how dynamic and flexible arrays/lists/tables can be in Icon (interchangeably); and how you can tailor the evaluator to your needs in Scheme (lexical/dynamic scoping, lazy evaluation, multiple environments); Icon's co-expressions; and its controlled backtracking; And functions (of any order) in Scheme, which are truly first class citizens, which can be passed, returned, be built/modified/destroyed, be named or anonymous. (You may find the recent book by Ralph Griswald, on the Implementation of the Icon Programming Language, very interesting.) Will some netlanders closely familiar with Miranda please comment? Other particularly interesting languages? -- Neta Amit U of Minnesota CSci Arpanet: amit@umn-cs.cs.umn.edu