[Haskell-cafe] New slogan for haskell.org

Thomas Schilling nominolo at googlemail.com
Mon Nov 26 14:38:26 EST 2007

On Thu, 2007-10-04 at 10:36 -0700, Don Stewart wrote:
> It was raised at CUFP today that while Python has:
>     Python is a dynamic object-oriented programming language that can be
>     used for many kinds of software development. It offers strong
>     support for integration with other languages and tools, comes with
>     extensive standard libraries, and can be learned in a few days. Many
>     Python programmers report substantial productivity gains and feel
>     the language encourages the development of higher quality, more
>     maintainable code.
> With the links from the start about using Python for various purposes,
> along with reassuring text about licenses and so on. 
> Note its all about how it can help you.
> The Haskell website has the rather strange motivational text:
>     Haskell is a general purpose, purely functional programming language
>     featuring static typing, higher order functions, polymorphism, type
>     classes, and monadic effects. Haskell compilers are freely available
>     for almost any computer.
> Which doesn't say why these help you.
> Any suggestions on a 2 or 3 sentence spiel about what's available?
> Here's some quick points:
>     General purpose: applications from OS kernels to compilers to web dev to ...
>     Strong integration with other languages: FFI, and FFI binding tools
>     Many developer tools: debugger, profiler, code coverage, QuickCheck
>     Extensive libraries: central library repository, central repo hosting 
>     Productivity, robustness, maintainability: purity, type system, etc
>     Parallelism!

Haskell is a general-purpose, pure functional programming languages
that puts many interesting results from research into a practical
programming language.  It's features include:

 * Static typing with type inference: enables writing robust and fast
   programs quickly and makes large code bases maintainable.

 * Higher-order functions, polymorphism, and laziness: enables higher
   levels of abstraction, more composable, thus reusable code.

 * Purity: helps keeping your code maintainable and testable.

Haskell comes with many libraries, freely available compilers for
almost any computer, debuggers, profilers, code coverage and testing

That seems short enough to me.  Things that could find their way in are:

  monads: for the embedded DSL angle
  paralellism: mention STM and high-level combinators

More information about the Haskell-Cafe mailing list