LispStat, R and ViSta [was: Re: Status?]
<[email protected]> Sun, 18 Aug 2002 17:28:10 -0400
| Newsgroups | gmane.lisp.statistics |
|---|---|
| Message-ID | <[email protected]> |
I have been taking a break for the last month or so, and am only just now catching up on my email. Otherwise, I would have joined this discussion earlier. And... I apologize for the length of this, but I don't think it is overly long. >From the amount of activity in the LispStat news group (none), it seems that LispStat is dead. We all know that Luke is working on R and not on LispStat, and that Jan has switched UCLA over from LispStat to R. And we have not heard from users of LispStat for some time. So, it seems no one is using LispStat. For me, at least, this is not the case. As the developer of ViSta, I have and still am using LispStat a great deal. In fact, I cannot conceive of doing what I do with any other system. Of course, since I use it so much, I am very aware of LispStat's strengths and weaknesses, and want to add my views to the discussion. However, I spend all my time using only LispStat, so I can't make any comparisons to R or to any other systems. To me, the strengths of LispStat are: 1) The dynamic, highly interactive graphics 2) The object system 3) Lisp language and byte compiler These strengths make LispStat an ideal system for implementing statistical systems. It is less suited for doing statistical analysis. As a result, the most significant uses of LispStat have been statistical systems such as Arc and ViSta. In the work I've done with LispStat, ViSta's spreadplot architecture is the best example of LispStat being used to implement a statistical (sub)system (described in a forthcoming JCGS paper by myself, Pedro Valero, Richard Faldowski and Carla Bann). The weaknesses of LispStat are: 1) No high-level analysis modules 2) No standards for data sets, models, etc. 3) No user-oriented data manipulation language 4) Totally inadequate documentation 5) Poor or non-existant printing 6) No static graphic manipulation facilities 7) The underlying operating system interfaces are old. ViSta attempts to take care of these weaknesses, with varying degrees of success. Specifically: 1) ViSta has high-level analysis plugins. The method for writing these plugins is documented. I believe this very well solves the first weakness. 2) ViSta's statistical object architecture -- a hierarchy of objects that include datasets, datasheets, data editors, transformations, analysis methods, models and plugins --- solves the lack of standards for such things. The implementation is slow for data objects and needs to be re-architected. The implementation for the others is more than adequate. 3) At the suggestion of Sandy Weisberg, I have incorporated PARCIL, a C-to-Lisp Parser. This allows users to type a=2*(b+c)^2 rather than the awkward lisp equivalent: (setf a (^ (* 2 (+ b c)) 2)) (I'm sorry I can't give a proper reference to PARCIL, I'm not at home). 4) Pedro Valero, Gabriel Molina, Michael Friendly and I, in various combinations, are working on the documentation problem. 5) Printing, while better than LispStat, is still not adequate. 6) Static graphics manipulation, as in SAS (and, apparently R), is totally lacking. 7) Nothing has been done about this. (Note that the newest version of ViSta use a modified version of LispStat that only works under Windows, so that Mac/Unix users don't have all the new features. This problem can be fixed by someone familiar with LispStat and Unix.) I am very interested in an effort to combine the strengths of LispStat and R, but have no clue how it would be done. From my viewpoint, though, it would need to add the three strengths of LispStat (Lisp, Objects and Dynamic Graphics) to the existing R environment, and it would need to work in all three supported environments -- Windows, Mac, and Linux/Unix Anyone know how to do that? Forrest