No subject


Thu Feb 24 17:58:36 CET 2011


"Use regular Haskell data structures as your database..." - exactly what I
need!
Snap looks very lively too, simple and you can code view in Haskell, which
means concentrate on  the problem, not on the boilerplate code!

Capital advice, thanks!

Chris Smith cdsmith at gmail.com  wrote:
Thu Jul 7 15:11:10 CEST 2011

Previous message: [Haskell-cafe] Web Framework to Show Experimental Data
Next message: [Haskell-cafe] Installation failure crypto-api on MAC
Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Thu, 2011-07-07 at 13:21 +0400, Dmitri O.Kondratiev wrote:
> 1) What to use for the Archive? Though input data is in JSON format,
> data generated from it is binary vectors. Not sure that CouchDB is a
> good choice in this case.
> What simple (Haskell lib + DB) combination one may advise that support
> concurrent read / write access with simple locking (don't need full
> transactional support)?

I think this might be an excellent place to use Lemmih's acid-state
package. If I read you correctly, you basically want to store a small
enough amount of data that it's not a concern that it will need to
reside in memory, and it's fairly regular so there won't be a lot of
value in ad hoc queries? If this is the case, then acid-state will let
you store it in Haskell data types, and with a bit of Template Haskell,
you can access it in a persistent way.

> 2) Web framework? Don't need AJAX, just basic stuff but simple and
> easy to code forms?

Well, I like Snap enough that I became a core developer for the project,
but this seems like a place it's particularly well suited. If you just
want something really simple and clean and easy to use, Snap is that
thing. Snap itself is very lightweight, but if you want some kind of
automated form support, then there is a snap backend for
digestive-functors. That's a little complex for my taste, but it is one
way to do composing of forms by sticking together form handlers,
validators, and the like. Personally, I'm a fan of just using getParam
to retrieve the data and writing Haskell code to do what you want.

-- 
Chris

--485b3970c83e33efbd04a77aefbf
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div>Chris, thank you so much for pointing me into the right direction!</di=
v><div>From acid-state package description:<br>&quot;Use regular Haskell da=
ta structures as your database...&quot; - exactly what I need!</div><div>
Snap looks very lively too, simple and you can code view in Haskell, which =
means concentrate on =A0the problem, not on the boilerplate code!</div><div=
><br></div><div>Capital advice, thanks!<br></div><div><br></div>Chris Smith=
 cdsmith at <a href=3D"http://gmail.com">gmail.com</a> =A0wrote:<br>
Thu Jul 7 15:11:10 CEST 2011 <br><br>Previous message: [Haskell-cafe] Web F=
ramework to Show Experimental Data <br>Next message: [Haskell-cafe] Install=
ation failure crypto-api on MAC <br>Messages sorted by: [ date ] [ thread ]=
 [ subject ] [ author ] <br>
On Thu, 2011-07-07 at 13:21 +0400, Dmitri O.Kondratiev wrote:<br>&gt; 1) Wh=
at to use for the Archive? Though input data is in JSON format,<br>&gt; dat=
a generated from it is binary vectors. Not sure that CouchDB is a<br>&gt; g=
ood choice in this case. <br>
&gt; What simple (Haskell lib + DB) combination one may advise that support=
<br>&gt; concurrent read / write access with simple locking (don&#39;t need=
 full<br>&gt; transactional support)?<br><br>I think this might be an excel=
lent place to use Lemmih&#39;s acid-state<br>
package.  If I read you correctly, you basically want to store a small<br>e=
nough amount of data that it&#39;s not a concern that it will need to<br>re=
side in memory, and it&#39;s fairly regular so there won&#39;t be a lot of<=
br>
value in ad hoc queries?  If this is the case, then acid-state will let<br>=
you store it in Haskell data types, and with a bit of Template Haskell,<br>=
you can access it in a persistent way.<br><br>&gt; 2) Web framework? Don&#3=
9;t need AJAX, just basic stuff but simple and<br>
&gt; easy to code forms?<br><br>Well, I like Snap enough that I became a co=
re developer for the project,<br>but this seems like a place it&#39;s parti=
cularly well suited.  If you just<br>want something really simple and clean=
 and easy to use, Snap is that<br>
thing.  Snap itself is very lightweight, but if you want some kind of<br>au=
tomated form support, then there is a snap backend for<br>digestive-functor=
s.  That&#39;s a little complex for my taste, but it is one<br>way to do co=
mposing of forms by sticking together form handlers,<br>
validators, and the like.  Personally, I&#39;m a fan of just using getParam=
<br>to retrieve the data and writing Haskell code to do what you want.<br><=
br>-- <br>Chris<br><br>

--485b3970c83e33efbd04a77aefbf--



More information about the Haskell-Cafe mailing list