Personal tools

Web/Cloud

From HaskellWiki

< Web(Difference between revisions)
Jump to: navigation, search
(OpenShift -> GHC 7.8.2)
(OpenShift)
Line 8: Line 8:
 
{| class="wikitable"
 
{| class="wikitable"
 
! GHC version:
 
! GHC version:
| 7.8.2
+
| 7.6.3 / 7.8.2
 
|-
 
|-
 
! Author:
 
! Author:
Line 20: Line 20:
 
|}
 
|}
   
The cartridge comes in several flavours, with just the network package or a pre-installed framework:
+
The cartridge comes in several flavours, with just the network package (GHC 7.8.2) or a pre-installed framework (GHC 7.6.3 *):
   
 
{| class="wikitable"
 
{| class="wikitable"
Line 40: Line 40:
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fsnap.yml deploy]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fsnap.yml deploy]
 
|-
 
|-
| Happstack *
+
| Happstack
 
| [http://www.accursoft.com/cartridges/happstack.yml manifest]
 
| [http://www.accursoft.com/cartridges/happstack.yml manifest]
 
| [https://www.openshift.com/quickstarts/happstack quickstart]
 
| [https://www.openshift.com/quickstarts/happstack quickstart]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fhappstack.yml deploy]
 
| [https://openshift.redhat.com/app/console/application_type/custom?cartridges%5B%5D=http%3A%2F%2Fwww.accursoft.com%2Fcartridges%2Fhappstack.yml deploy]
 
|-
 
|-
| MFlow *
+
| MFlow
 
| [http://www.accursoft.com/cartridges/mflow.yml manifest]
 
| [http://www.accursoft.com/cartridges/mflow.yml manifest]
 
| [https://www.openshift.com/quickstarts/mflow quickstart]
 
| [https://www.openshift.com/quickstarts/mflow quickstart]
Line 56: Line 56:
 
|}
 
|}
   
<small>* GHC 7.6.3</small>
+
<small>* GHC 7.8 requires dynamic libraries for Template Haskell and Quasiquoting. OpenShift gears default to a 1Gb quota, which is insufficient for a full web framework with two copies (dynamic and static) of every library.</small>
   
 
== Heroku ==
 
== Heroku ==

Revision as of 13:01, 30 April 2014

Haskell Web Development

Software:
Servers - Libraries - Frameworks
Deploy - Cloud
Interfaces to frameworks
Databases and Persistence
Testing and Verification
Content Management

Community & Research:
Forums and Discussion
Literature (research, talks and blogs)
Existing Haskell web applications
Ongoing projects and ideas

PaaS (platform as a service) cloud providers generally limit you to a fixed technology stack. However, OpenShift and Heroku allow third-party extensions, which can be used to support Haskell.

1 OpenShift

GHC version: 7.6.3 / 7.8.2
Author: Gideon Sireling
Home page: https://github.com/accursoft/Haskell-Cloud
Documentation: https://github.com/accursoft/Haskell-Cloud/blob/master/README.md

The cartridge comes in several flavours, with just the network package (GHC 7.8.2) or a pre-installed framework (GHC 7.6.3 *):

Framework Cartridge QuickStart Deploy
network manifest quickstart deploy
Yesod manifest quickstart deploy
Snap manifest quickstart deploy
Happstack manifest quickstart deploy
MFlow manifest quickstart deploy
Scotty manifest quickstart deploy

* GHC 7.8 requires dynamic libraries for Template Haskell and Quasiquoting. OpenShift gears default to a 1Gb quota, which is insufficient for a full web framework with two copies (dynamic and static) of every library.

2 Heroku

GHC version: 7.4.1
Author: Brian McKenna
Home page: https://github.com/puffnfresh/heroku-buildpack-haskell
Documentation: https://github.com/puffnfresh/heroku-buildpack-haskell/blob/master/README.md

3 See also