
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 tools. " 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