Haskell has a diverse range of use commercially, from aerospace and defense, to finance, to web startups, hardware design firms and a lawnmower manufacturer. This page collects resources on the industrial use of Haskell.

Haskell has a diverse range of use commercially, from aerospace and defense, to finance, to web startups, hardware design firms and a lawnmower manufacturer. This page collects resources on the industrial use of Haskell.

In February 2009 the [http://industry.haskell.org/ Industrial Haskell Group] was launched to support the needs of commercial users of the Haskell programming language. Phase 2 of the effort, expanding membership to research groups and startups with smaller budgets, was [http://www.haskell.org/pipermail/haskell/2009-November/021734.html launched in November 2009]

+

* [http://fpcomplete.com/ FP Complete] is dedicated to the widespread adoption of modern Functional Programming technology, with a focus on the Haskell system. See their collection of [https://www.fpcomplete.com/page/case-studies case studies] of successes in commercial use.

−

+

−

The main user conference for industrial Haskell use is CUFP - the [http://cufp.org/ Commercial Users of Functional Programming Workshop]. The annual conference is coming up in October 2010.

+

−

+

−

== Industrial Haskell: 2009 status report ==

+

−

+

−

===Industrial Haskell Group===

+

−

+

−

For the first time, in 2009, a consortium of companies came together to fund continued development of Haskell and its toolchain. The result is the [http://industry.haskell.org IHG], [http://www.haskell.org/pipermail/haskell/2009-March/021060.html launched] earlier in the year. The initial round of funding resulted in [http://industry.haskell.org/status several improvements to the ecosystem.] The group is seeking to [http://industry.haskell.org/join expand membership in 2010] to further consolidate the commercial strength Haskell. The [http://www.vimeo.com/6697688 Birth of the IHG] was presented at the &quot;[http://cufp.galois.com/ Commercial Users of Functional Programming]&quot; workshop.

+

−

+

−

===CUFP===

+

−

+

−

2009's [http://cufp.org Commercial Users of Functional Programming] workshop was held in Edinburgh, and included talks on:

+

−

+

−

* [http://www.vimeo.com/6703480 Real World Haskell];

+

−

* [http://www.vimeo.com/6701254 Teleconferencing on maps in Haskell];

+

−

* [http://www.vimeo.com/6699769 Functional Programming at Facebook].

+

−

+

−

Next year's CUFP will be held in Baltimore.

+

−

+

−

===Industrial reports===

+

−

+

−

A number of experience reports on the use of Haskell were presented in 2009:

+

−

+

−

* As part of [http://galois.com Galois]' 10th birthday, Don Stewart presented a talk at the [http://www.londonhug.net/ LondonHUG] on [http://www.galois.com/blog/2009/04/27/engineering-large-projects-in-haskell-a-decade-of-fp-at-galois/ Engineering Large Projects in Haskell], celebrating a decade of use of Haskell by Galois.

+

−

* [http://www.typlab.com/ TypLAB], a new startup [http://blog.typlab.com/2009/09/why-we-use-haskell/ talked about why they use Haskell].

+

−

* Facebook released its [http://github.com/facebook/lex-pass/tree/master lex-pass tool to automate changes to a PHP codebase, by writing abstract-syntax-tree transformers in Haskell]; and

+

−

* [http://www.starling-software.com/en/ Starling Software] described [http://www.starling-software.com/misc/icfp-2009-cjs.pdf building a real time financial trading system in Haskell] :: PDF.

+

−

* Tom Hawkin's [http://hackage.haskell.org/package/atom/ Atom EDSL] for control systems [http://www.haskell.org/pipermail/haskell-cafe/2009-July/064775.html went into production use] in trucks and buses, and is [http://www.haskell.org/pipermail/haskell-cafe/2009-December/070558.html starting to be used] on a NASA runtime monitoring project.

Aetion is a defense contractor whose applications use artificial intelligence.

+

Aetion was a defense contractor in operation from 1999 to 2011, whose applications use artificial intelligence. Rapidly changing priorities make it important to minimize the code impact of changes, which suits Haskell well. Aetion developed three main projects in

−

Rapidly changing priorities make it important to minimize the code impact of

+

−

changes, which suits Haskell well. Aetion has developed three main projects in

+

Haskell, all successful. Haskell's concise code was perhaps most important for

Haskell, all successful. Haskell's concise code was perhaps most important for

rewriting: it made it practicable to throw away old code occasionally. DSELs

rewriting: it made it practicable to throw away old code occasionally. DSELs

Headquartered in Chicago, Illinois, Allston Trading, LLC is a premier high frequency market maker in over 40 financial exchanges, in 20 countries, and in nearly every conceivable product class. Allston makes some use of Haskell for their trading infrastructure.

Headquartered in Chicago, Illinois, Allston Trading, LLC is a premier high frequency market maker in over 40 financial exchanges, in 20 countries, and in nearly every conceivable product class. Allston makes some use of Haskell for their trading infrastructure.

+

</blockquote>

+

+

* [http://www.alphaheavy.com/ Alpha Heavy Industries]

+

<blockquote>

+

Alpha Heavy Industries is an alternative asset manager dedicated to producing superior returns through quantitative methods. They use Haskell as their primary implementation language.

</blockquote>

</blockquote>

Line 99:

Line 78:

Haskell is being used in the Network Security division to automate processing of internet abuse complaints. Haskell has allowed us to easily meet very tight deadlines with reliable results.

Haskell is being used in the Network Security division to automate processing of internet abuse complaints. Haskell has allowed us to easily meet very tight deadlines with reliable results.

</blockquote>

</blockquote>

−

−

* [http://www.anygma.com/ Anygma] Antwerp, Belgium

−

<blockquote>

−

Anygma is a startup company focusing on generating easy-to-use tools for

−

creating audio-visual 2D/3D content, in the area of entertainment,

−

media, corporate communication and the internet. The company is closely

−

related to [http://www.nazooka.com/ Nazooka], a niche player in the

−

media industry, specialized in creating cross media concepts and

−

communication solutions. Anygma is using Haskell to quickly build a

−

prototype of its new content creation platform, targeted towards artists

−

and designers. </blockquote>

* [http://www.baml.com/ Bank of America Merril Lynch]

* [http://www.baml.com/ Bank of America Merril Lynch]

Line 125:

Line 93:

</blockquote>

</blockquote>

::[http://lambda-the-ultimate.org/node/3331 Simon Frankau et al's JFP paper on their use of Haskell]

::[http://lambda-the-ultimate.org/node/3331 Simon Frankau et al's JFP paper on their use of Haskell]

+

+

* [http://bazqux.com BazQux Reader]

+

<blockquote>

+

BazQux Reader is a commercial RSS reader. Its feeds and comments crawler and a part of web-server are implemented in Haskell.

+

</blockquote>

* [http://www.bcode.com/ bCODE Pty Ltd] Sydney Australia

* [http://www.bcode.com/ bCODE Pty Ltd] Sydney Australia

Line 156:

Line 129:

Bump use a Haskell-based server, [http://github.com/jamwt/Angel Angel], for process supervisor for all their backend systems, and [http://devblog.bu.mp/haskell-at-bump for other infrastructure tasks].

Bump use a Haskell-based server, [http://github.com/jamwt/Angel Angel], for process supervisor for all their backend systems, and [http://devblog.bu.mp/haskell-at-bump for other infrastructure tasks].

We develop software prototypes according to the Pareto principle: After spending only 20 percent of budget, we aim to provide already 80 percent of the software's functionality. We can realize this by constructing a 2080-software-prototype that we can further develop into a full-fledged solution...

+

Located in Hamburg, Germany, we are developing web-based productivity tools for invoicing, customer management, resource scheduling and time tracking. While using Javascript for building rich frontend application in the browser, we use Haskell to implement the REST backends. Additionally, we do occasional project/client work as well.

We develop software prototypes according to the Pareto principle: After spending only 20 percent of budget, we aim to provide already 80 percent of the software's functionality. We can realize this by constructing a 2080-software-prototype that we can further develop into a full-fledged solution...

Open web development company. Now merged with [http://happstack.com/ happstack]

+

Group Commerce uses Haskell to drive the main component of their advertising infrastructure: a Snap Framework based web server. Haskell enabled quicker development, higher reliability, and better maintainability than other languages, without having to sacrifice performance.

For our current customer, an Internet connectivity provider, we wrote a solution for monitoring multiple remote machines and analyzing gigabytes of traffic samples. Haskell proved an excellent tool for the job.

+

We were able to replace legacy systems in a granular, piece-by-piece manner, while delivering new features.</blockquote>

* [http://hustlerturf.com Hustler Turf Equipment] Hesston, Kansas

* [http://hustlerturf.com Hustler Turf Equipment] Hesston, Kansas

Line 347:

Line 326:

</blockquote>

</blockquote>

::[http://www.drdobbs.com/embedded/222400553 Read the Dr. Dobbs article on using Haskell and formal methods to verify a kernel]

::[http://www.drdobbs.com/embedded/222400553 Read the Dr. Dobbs article on using Haskell and formal methods to verify a kernel]

+

+

* [http://www.gb.nrao.edu NRAO]

+

<blockquote>

+

NRAO has used Haskell to implement the core science algorithms for the Robert C. Byrd Green Bank Telescope (GBT) Dynamic Scheduling System ([http://www.gb.nrao.edu/dss DSS]).

Samplecount develops mobile, location-aware sound and music applications. They are currently using Haskell for prototyping their server-side soundscape streaming components and as a cross-platform build tool for their mobile applications and frameworks.

+

</blockquote>

+

+

* [http://sankelsoftware.com Sankel Software] Albuquerque, New Mexico

+

+

<blockquote>

+

Sankel Software has been using Haskell since 2002 for both prototyping and deployment for technologies ranging from CAD/CAM to gaming and computer animation. We specialize in the development of user-friendly, large, long-term applications that solve difficult and conceptually intricate problems.

+

</blockquote>

+

+

* [https://scrive.com/gb/en Scrive]

+

+

<blockquote>

+

Scrive is a service for e-signing tenders, contracts, and other documents. We help our clients close deals faster, decrease their administrative burden, and improve their customers’ experience.

+

</blockquote>

* [http://www.signalicorp.com/index.htm Signali] Portland, Oregon

* [http://www.signalicorp.com/index.htm Signali] Portland, Oregon

Line 405:

Line 422:

<blockquote>

<blockquote>

−

Standard Chartered has a large group using Haskell in finance.

+

Standard Chartered has a large group using Haskell for all aspects of its wholesale banking business.

</blockquote>

</blockquote>

Line 460:

Line 477:

== Jobs and recruitment ==

== Jobs and recruitment ==

−

[[Jobs|Haskell jobs]].

+

[[Jobs|Haskell jobs]] on the HaskellWiki.

+

+

[http://www.haskellers.com/jobs Jobs at Haskellers.com].

== Consultants ==

== Consultants ==

Revision as of 08:20, 6 July 2013

Haskell has a diverse range of use commercially, from aerospace and defense, to finance, to web startups, hardware design firms and a lawnmower manufacturer. This page collects resources on the industrial use of Haskell.

FP Complete is dedicated to the widespread adoption of modern Functional Programming technology, with a focus on the Haskell system. See their collection of case studies of successes in commercial use.

Aetion was a defense contractor in operation from 1999 to 2011, whose applications use artificial intelligence. Rapidly changing priorities make it important to minimize the code impact of changes, which suits Haskell well. Aetion developed three main projects in
Haskell, all successful. Haskell's concise code was perhaps most important for
rewriting: it made it practicable to throw away old code occasionally. DSELs
allowed the AI to be specified very declaratively.

Headquartered in Chicago, Illinois, Allston Trading, LLC is a premier high frequency market maker in over 40 financial exchanges, in 20 countries, and in nearly every conceivable product class. Allston makes some use of Haskell for their trading infrastructure.

Amgen is a human therapeutics company in the biotechnology industry. Amgen pioneered the development of novel products based on advances in recombinant DNA and molecular biology and launched the biotechnology industry’s first blockbuster medicines.
Amgen uses Haskell;

Antiope Associates provides custom solutions for wireless communication
and networking problems. Our team has expertise in all aspects of
wireless system design, from the physical and protocol layers to complex
networked applications. Antiope Associates's relies on a number of
advanced techniques to ensure that the communication systems we design
are reliable and free from error. We use custom simulation tools
developed in Haskell, to model our hardware designs..

Barclays Capital's Quantitative Analytics group is using Haskell to
develop an embedded domain-specific functional language (called FPF)
which is used to specify exotic equity derivatives. These derivatives,
which are naturally best described in terms of mathematical functions,
and constructed compositionally, map well to being expressed in an
embedded functional language. This language is now regularly being used
by people who had no previous functional language experience.

Developing a modern integrated circuit (ASIC or FPGA) is an enormously
expensive process involving specification, modeling (to choose and fix the
architecture), design (to describe what will become silicon) and verification
(to ensure that it meets the specs), all before actually committing anything to
silicon (where the cost of a failure can be tens of millions of dollars).
Bluespec, Inc. is a three year-old company that provides language facilities,
methodologies, and tools for this purpose, within the framework of the IEEE
standard languages SystemVerilog and SystemC, but borrowing ideas heavily from
Term Rewriting Systems and functional programming languages like Haskell. In
this talk, after a brief technical overview to set the context, we will
describe our tactics and strategies, and the challenges we face, in introducing
declarative programming ideas into this field, both externally (convincing
customers about the value of these ideas) and internally (using Haskell for our
tool implementation).

Brand Karma provides services to brand owners to measure online sentiments towards their brands.
Haskell is used in building parts of the product, specifically for back-end job scheduling and brand matching.

GMAG, the quantitative modelling group at Credit Suisse, has been using Haskell
for various projects since the beginning of 2006, with the twin aims of
improving the productivity of modellers and making it easier for other people
within the bank to use GMAG models. Current projects include: Further work on
tools for checking, manipulating and transforming spreadsheets; a
domain-specific language embedded in Haskell for implementing reusable
components that can be compiled into various target forms (see the video presentation: Paradise, a DSEL for Derivatives Pricing).

Factis research, located in Freiburg, Germany, develops reliable and user-friendly mobile solutions. Our client software runs under J2ME, Symbian, iPhone OS, Android, and Blackberry. The server components are implemented in Python and Haskell. We are actively using Haskell for a number of projects, most of which are released under an open-source license.

Located in Hamburg, Germany, we are developing web-based productivity tools for invoicing, customer management, resource scheduling and time tracking. While using Javascript for building rich frontend application in the browser, we use Haskell to implement the REST backends. Additionally, we do occasional project/client work as well.

We develop software prototypes according to the Pareto principle: After spending only 20 percent of budget, we aim to provide already 80 percent of the software's functionality. We can realize this by constructing a 2080-software-prototype that we can further develop into a full-fledged solution...

Galois designs and develops high confidence software for critical applications.
Our innovative approach to software development provides high levels of
assurance, yet its scalability enables us to address the most complex problems.
We have successfully engineered projects under contract for corporations and
government clients in the demanding application areas of security, information
assurance and cryptography.

Group Commerce uses Haskell to drive the main component of their advertising infrastructure: a Snap Framework based web server. Haskell enabled quicker development, higher reliability, and better maintainability than other languages, without having to sacrifice performance.

We develop enterprise systems with de-coupled, asynchronous Haskell backends and Javascript UIs.
For our current customer, an Internet connectivity provider, we wrote a solution for monitoring multiple remote machines and analyzing gigabytes of traffic samples. Haskell proved an excellent tool for the job.
We were able to replace legacy systems in a granular, piece-by-piece manner, while delivering new features.

Designs, builds, and sells lawn mowers. We use quite a bit of Haskell, especially as a "glue language" for tying together data from different manufacturing-related systems. We also use it for some web apps that are deployed to our dealer network. There are also some uses for it doing sysadmin
automation, such as adding/removing people from LDAP servers and the like

ICS AG developed a simulation and testing tool which based on a DSL (Domain Specific Language). The DSL is used for the description of architecture and behavior of distributed system components (event/message based, reactive). The compiler was written in Haskell (with target language Ada). The test system is used in some industrial projects.

ipwn studios is a video game studio founded in 2009 and based in the greater Boston area. They're developing a game engine in Haskell, and a number of games built on that engine, including an action-rpg for touchscreen devices called bloodknight.

The rostering group at IVU Traffic Technologies AG has been using Haskell to check rosters for compliance with EC regulations.
Our implementation is based on an embedded DSL to combine the regulation’s single rules into a solver that not only decides on instances but, in the case of a faulty roster, finds an interpretation of the roster that is “favorable” in the sense that the error messages it entails are “helpful” in leading the dispatcher to the resolution of the issue at hand.
The solver is both reliable (due to strong static typing and referential transparency — we have not experienced a failure in three years) and efficient (due to constraint propagation, a custom search strategy, and lazy evaluation).
Our EC 561/2006 component is part of the IVU.crew software suite and as such is in wide-spread use all over Europe, both in planning and dispatch. So the next time you enter a regional bus, chances are that the driver’s roster was checked by Haskell.

Linspire, Inc. has used functional programming since its inception in 2001,
beginning with extensive use of O'Caml, with a steady shift to Haskell as its
implementations and libraries have matured. Hardware detection, software
packaging and CGI web page generation are all areas where we have used
functional programming extensively. Haskell's feature set lets us replace much
of our use of little languages (e.g., bash or awk) and two-level languages (C
or C++ bound to an interpreted language), allowing for faster development,
better code sharing and ultimately faster implementations. Above all, we value
static type checking for minimizing runtime errors in applications that run in
unknown environments and for wrapping legacy programs in strongly typed
functions to ensure that we pass valid arguments.

NS Solutions has employed Haskell since 2008 to develop its software
packages including "BancMeasure", a mark-to-market accounting software
package for financial institutions, "BancMeasure for IFRS" and
"Mamecif", a data analysis package.
"BancMeasure" and "Mamecif" are registered trademarks of NS Solutions Corporation in JAPAN.

Oblomov Systems is a one-person software company based in Utrecht, The Netherlands. Founded in 2009, Oblomov has since then been working on a number of Haskell-related projects. The main focus lies on web-applications and (web-based) editors. Haskell has turned out to be extremely useful for implementing web servers that communicate with JavaScript clients or iPhone apps.

At Peerium, we're striving to bring a new level of quality and efficiency to online communication and collaboration within virtual communities, social networks, and business environments. We believe that a new environment that supports the effortless sharing of both information and software will enable a level of online cooperation far beyond current Web-based technologies -- modern programming techniques will enable the creation of more robust and more powerful programs within these environments. To this end, we're building a new software platform for direct, real-time communication and collaboration within graphically rich environments. Peerium is located in the heart of Harvard Square in Cambridge, Massachusetts.

The Renaissance Computing Institute (RENCI), a multi-institutional organization, brings together multidisciplinary experts and advanced technological capabilities to address pressing research issues and to find solutions to complex problems that affect the quality of life in North Carolina, our nation and the world.
Research scientists at RENCI have used Haskell for a number of projects, including The Big Board.

Samplecount develops mobile, location-aware sound and music applications. They are currently using Haskell for prototyping their server-side soundscape streaming components and as a cross-platform build tool for their mobile applications and frameworks.

Sankel Software has been using Haskell since 2002 for both prototyping and deployment for technologies ranging from CAD/CAM to gaming and computer animation. We specialize in the development of user-friendly, large, long-term applications that solve difficult and conceptually intricate problems.

Signali Corp is a new custom hardware design company. Our chief products
are custom IP cores targeted for embedded DSP and cryptographic
applications. Our specialty is the design and implementation of
computationally intensive, complex algorithms. The interfaces to each
core are modular and can be very efficiently modified for your specific
application. System-level integration and validation is crucial and is
the majority of investment in a product.

Tupil is a Dutch company that built software for clients, written in Haskell. Tupil used Haskell for the speed in development and resulting software quality. The company is founded by Chris Eidhof and Eelco Lempsink. Currently they build iPhone/iPad applications in Objective-C.

3 Jobs and recruitment

4 Consultants

5 Commercial Users of Functional Programming Workshop

The goal of CUFP is to build a community
for users of functional programming languages and technology, be they
using functional languages in their professional lives, in an open
source project (other than implementation of functional languages), as a
hobby, or any combination thereof. In short: anyone who uses functional
programming as a means, but not an end.