Difference between revisions of "Haskell in industry"

From HaskellWiki
Jump to navigation Jump to search
(IVU Traffic Technologies)
(+signali)
Line 246: Line 246:
 
<blockquote>
 
<blockquote>
 
Qualcomm uses Haskell to generate Lua bindings to the BREW platform
 
Qualcomm uses Haskell to generate Lua bindings to the BREW platform
  +
</blockquote>
  +
  +
* [http://www.signalicorp.com/index.htm Signali]
  +
  +
<blockquote>
  +
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.
 
</blockquote>
 
</blockquote>
   

Revision as of 21:08, 18 January 2009

Haskell is growing in commercial use. This page collects resources on the industrial use of Haskell.

Haskell in Industry

ABN AMRO is an international bank headquartered in Amsterdam. For its investment banking activities it needs to measure the counterparty risk

on portfolios of financial derivatives.

ABN AMRO's CUFP talk.

Aetion is a defense contractor whose applications use artificial intelligence. 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 rewriting: it made it practicable to throw away old code occasionally. DSELs allowed the AI to be specified very declaratively.

Aetion's CUFP talk.

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

"Find It! Keep It! is a Mac Web Browser that lets you keep the pages you visit in a database. A list of these pages is shown in the 'database view'. "

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

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;

  • To rapidly build software to implement mathematical models and other complex, mathematically oriented applications
  • Provide a more mathematically rigorous validation of software
  • To break developers out of their software development rut by giving them a new way to think about software.
Amgen's CUFP talk.

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.

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).

Bluespec's CUFP talk.
Bug Labs is using Haskell internally for a number of applications.

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).

Credit Suisse's CUFP talk.

The Directional Credit Trading group uses Haskell as the primary implementation language for all its software infrastructure.

Deutsche Bank's CUFP talk.

Design and verification of hydraulic hybrid vehicle systems

Eaton's CUFP talk

Gamr7 is a startup focused on procedural city generation for the game and simulation market.

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.

Galois, Inc's CUFP talk

Open web development company.

Positions for Haskell programmers focusing on building infrastructure, applications, and technical support for quantitative equity trading business.

iba CG develops software for large companies:

  • risk analysis and reporting solution for power supply company;
  • contract management, assert management, booking and budgeting software for one of the worldwide leading accounting firm.

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.

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.

Linspire's CUFP talk

Nokia Research Center Cambridge is a group of 16 researchers located in Cambridge, Massachusetts. NRCC's charter is to renew Nokia via open innovation, in particular via joint research projects with MIT Computer Science and Artificial Intelligence Laboratory. We are a systems research center, investigating all aspects of future mobile phones and services. Our goal is to develop new technologies, applications, and services, and to work with the rest of Nokia to make these a reality.

Openomy's API v2.0 is developed in Haskell, using the HAppS web platform.

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.

Qualcomm uses Haskell to generate Lua bindings to the BREW platform

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.

Standard Chartered has a group using Haskell in finance.

Clifford Beshers, David Fox and Jeremy Shaw have formed SeeReason Partners, LLC. Our plan is to deliver services over the internet, using Haskell to build our applications whenever possible. We have chosen primary mathematics skills as our domain, seeking to create a social networking site with games and activities that are both fun and educational.

Starling Software are developing a commercial automated options trading system in Haskell, and are migrating other parts of their software suite to Haskell.

  • Tupil Utrecht, The Netherlands

Tupil is a Dutch company that builds software for clients, written in Haskell. Tupil uses Haskell for the speed in development and resulting software quality. The company is founded by Chris Eidhof and Eelco Lempsink.


If you're using Haskell commercially, please add your details here.

Jobs and recruitment

Haskell jobs.

See also the Jobs in Functional Programming event.

Consultants

Consultants

Commercial Users of Functional Programming Workshop

Commercial Users of Functional Programming

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.

External links