RE: Will Haskell be commercialized in the future?

-----Original Message----- From: Benjamin L. Russell [mailto:russell@brainlink.com] Sent: Sunday, November 26, 2000 11:50 PM To: Doug Ransom; haskell-cafe@haskell.org Subject: Re: Will Haskell be commercialized in the future?
On Fri, 24 Nov 2000 09:15:52 -0800 Doug Ransom
wrote: [stuff deleted]
A lot of the things Haskell excells at (IMO) inferior tools are being used in place. For example, microsoft has build good XSLT translators and two new compilers (C#, VB7) in the last couple years. Unfortunately, C#, not Haskell, will probably be "the" language for the next decade. [stuff deleted]
Just out of curiosity: what makes you so sure about C#? C# has some potential big problems, too: in particular, the ability to declare a portion of the code "unsafe," which can encourage unsafe programming among entrenched C/C++ programmers.
Well, first of all, most C++ programmers really hate C++ and will be happy to stay in safe mode and move to C#. There were cheers at the Microsoft Profesional Developers Conference when MS announced garbage collection for the COM replacement and the safety available with C# and managed C++ code. C# is a huge improvement over C++. Why would a C++ programmer want to go into unsafe mode? I guess when they are writing interfaces to device drives, operating system calls, and legacy interfaces.
I myself am in no big hurry to master C#. I'd rather use a set of domain-specific languages with interlinked code, rather than a single language that purports to be as general-purpose as C# does.
Well, I would prefer to master Haskell and use that as my general purpose language. Fat chance since the object models available in the microsoft common language runtime are designed for impertive programming.
Benjamin L. Russell russell@brainlink.com "Furuike ya! Kawazu tobikomu mizu no oto." --Matsuo Basho

On Mon, 27 Nov 2000, Doug Ransom wrote:
[stuff deleted] Well, I would prefer to master Haskell and use that as my general purpose language. Fat chance since the object models available in the microsoft common language runtime are designed for impertive programming.
I often use Haskell in imperative style(for example writting a toy interpreter for subset of Tcl language). I noticed that(at least for student projects) it's more convenient than, say C, in some respects. I can often abstract out of the irrelevant details, thanks to HOF and careful use of monads/monad transformers. And the need to explicitly name imperative state or behaviour may clean up the code and improve understanding of the problem. Am I the only one? Greetings Michal Gajda korek@charybda.icm.edu.pl PS I think that inefficiency of lazy evaluation may be the more important flaw of Haskell. I know that memory profiler may be used, but it's not so easy to understand, what it tells. At least for someone else than compiler-writer or at least hardcore computer-scientist.

Hello! [a somewhat older mail] On Mon, Nov 27, 2000 at 08:53:05PM +0100, Michal Gajda wrote:
[...]
I often use Haskell in imperative style(for example writting a toy [...]
I also do. Perhaps not super-often, but more than once. - A program to interface to BSD's /dev/tun* and/or /dev/bpf* to simulate network links with losses/delays (configurable). ~150 lines of C + ~ 1700 lines of Haskell with some GHC extensions. One efficiency optimization was that I used network buffers constructed out of MutableByteArray#s together with some administrative information (an offset into the MBA to designate the real packet start - necessary to leave room for in-place header prefixing / removal, the real packet length, the buffer length ...). Written single threaded with manual select calls (no conc Haskell). - HTTP testers (two of them with slightly different tasks). - file generators/translators (diverse, e.g. a generator for test scripts for one of the above-named HTTP tester) Of course, the latter often are something like foo <- readFile bar let baz = process_somehow foo writeFile blurb baz Kind regards, Hannah.
participants (3)
-
Doug Ransom
-
Hannah Schroeter
-
Michal Gajda