[Haskell-cafe] can Haskell do everyting as we want?

Jeremy Shaw jeremy at n-heptane.com
Tue Aug 3 20:31:10 EDT 2010

I use Haskell for everything. In fact, I will be approaching my 10
year anniversary of using Haskell as my primary development language

 The only area I have had any trouble with Haskell is doing realtime
music synthesis. And only because the garbage collector is not
realtime friendly. That is not unfixable though. However, I am
thinking that the best way to do realtime synthesis with Haskell is to
use it to create a DSL that uses LLVM to create code at runtime so
that the realtime code is outside the scope of the normal RTS and
garbage collector. Aside from being a 'hack' to get around the garbage
collector, this could actually provide better performance than
low-level C/ASM by allowing very specialized code to be generated at
runtime in response to configuration changes. This concept was
explored with some success in Synthesis OS:
http://c2.com/cgi/wiki?SynthesisOs  (a general purpose unix-like OS,
the synthesis in the name is referring to the runtime code generation
for OS services, not music).

The other area I have found Haskell to sometimes fall short is when I
want even stronger guarantees from the type system. For those
instances, I want something more like Agda or Epigram, not something
weaker like Java/C++.

- jeremy

On Tue, Aug 3, 2010 at 6:12 PM, Qi Qi <qiqi789 at gmail.com> wrote:
> As more I learn haskell, I am more interested in this function
> programming language. I am intended to more focus on haskell than other
> languages like python, Java, or C++. But I am still wonder whether haskell can do everyting
> as other languages do, such as python, perl, Java and C++.
> Is there anyone happen to come into any tasks that haskell is not able
> to achieve?
> Thanks.
> --
> Qi Qi
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe

More information about the Haskell-Cafe mailing list