From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,b87849933931bc93 X-Google-Attributes: gidfac41,public X-Google-Thread: 109fba,b87849933931bc93 X-Google-Attributes: gid109fba,public X-Google-Thread: 1108a1,b87849933931bc93 X-Google-Attributes: gid1108a1,public X-Google-Thread: 103376,b87849933931bc93 X-Google-Attributes: gid103376,public X-Google-Thread: 114809,b87849933931bc93 X-Google-Attributes: gid114809,public From: cr@informatik.uni-kiel.de (Claus Reinke) Subject: Re: OO, C++, and something much better! Date: 1997/01/28 Message-ID: <5cl1cv$e3o@sphinx.informatik.uni-kiel.de>#1/1 X-Deja-AN: 212774251 references: <5c6468$2rv$1@A-abe.resnet.ucsb.edu> <32E712B2.5060@parcplace.com> <5c7ja6$krj@sphinx.informatik.uni-kiel.de> <32E99D64.DB6@parcplace.com> organization: Institute of Computer Science, University of Kiel, Germany newsgroups: comp.lang.c++,comp.lang.smalltalk,comp.lang.eiffel,comp.lang.ada,comp.object Date: 1997-01-28T00:00:00+00:00 List-Id: In <32E99D64.DB6@parcplace.com> Eric Clayberg writes (citing me): >> Sorry, but you should definitely *not* base your conclusions about >> statically typed languages on C,C++,Fortran, etc. >Fair enough. I will base my conclusions about C++ based on C++. ;-) >> Try something like Standard ML or Haskell >When I get the time, I would like to. Are either commercially available? >If so, where? What about free versions? Thanks. Both are freely available in various implementations. Both have a standard. For Standard ML, there are also some commercial versions. In view of the newsgroups line of this thread, I will only provide some basic links here (the first two should suffice to get information on implementations of these particular languages): Information on Haskell http://haskell.cs.yale.edu/haskell-report/haskell-report.html The ML FAQ http://www.cis.ohio-state.edu/hypertext/faq/usenet/meta-lang-faq/faq.html My own collection of FP links http://www.informatik.uni-kiel.de/~cr/FP.html By the way, I (thought I) was completely against static type checking (which I equated with typed languages in general) until I noticed that it was only the all-or-nothing approach (restrict the language until it can be statically typed) that caused my disapproval. Of course, there are other issues, such as explicit type declarations vs. type inference, or the problems of typing more advanced language features (including some of object-oriented languages). The latter seems to be one of the reasons why programming languages haven't improved so much over the last decade, but it has also been a major motivation to improve the theory and practice of type systems over the same period of time. Personally, I hope this research will lead to languages that are at least as expressive as those early languages that had to rely completely on either dynamic typing or explicit type declarations, but combined with the virtues of mostly static and mostly implicit type systems (and certainly with improved language designs). Until this happens (if it does;-), it seems important to spread the message that none of the current languages is perfect. Programmers (and language designers) need to keep an open mind for those other languages (and paradigms) they are not using daily. Having said this, I tend to find experience reports of practioners in various languages very valuable, and even more so without the occasional attempt to compare `my language which I know very well' with `your language which I haven't read about, too'. Only the reports provide real information, based on experience which is hard to collect personally in many different languages. Everybody can then make his/her own decisions based on the facts provided. However, it would be nice if these reports would also include `the experienced programmer's wishlist', i.e., what do I miss most in the language I know so well (NOT: what those other languages don't have). This way, it might also be easier to overcome the problems of different programming culture, e.g., `I don't want static type systems, but I could not work without all those tools that help me to analyze my programs'. Hope this helps, -- Claus Reinke University of Kiel email: cr@informatik.uni-kiel.de Department of Computer Science http://www.informatik.uni-kiel.de/~cr/ Preusserstr. 1-9, 24105 Kiel