How about:<div><br></div><div><a href="http://www.cse.unsw.edu.au/~dons/h4sh.html">http://www.cse.unsw.edu.au/~dons/h4sh.html</a></div><div><br></div><div>It brings a lot of familiar Haskell functions to the command-line. And *is* actually written in Haskell ;)</div>
<div><br></div><div>- jeremy</div><div><br></div><div><div class="gmail_quote">On Wed, Mar 31, 2010 at 6:05 PM, Patrick LeBoutillier <span dir="ltr">&lt;<a href="mailto:patrick.leboutillier@gmail.com">patrick.leboutillier@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hi all,<br>
<br>
I&#39;ve been studying Haskell for about a year now, and I&#39;ve really come<br>
to like it. In my daily work I write a lot of BASH shell scripts and I<br>
thought I&#39;d try add some of the haskell features and constructs to<br>
BASH to make my scripting life a bit easier. So I&#39;ve been working on a<br>
small BASH function library that implements some basic functional<br>
programming building blocks.<br>
<br>
Note: There is no actual Haskell code involved here.<br>
<br>
I put up the full manpage here:<br>
<a href="http://hpaste.org/fastcgi/hpaste.fcgi/view?id=24564" target="_blank">http://hpaste.org/fastcgi/hpaste.fcgi/view?id=24564</a><br>
Source is here: <a href="http://svn.solucorp.qc.ca/repos/solucorp/bashkell/trunk/trunk/" target="_blank">http://svn.solucorp.qc.ca/repos/solucorp/bashkell/trunk/trunk/</a><br>
<br>
All this is very prototypical, but here is an example of some of the<br>
stuff I&#39;ve got so far (map, filter, foldr):<br>
<br>
$ ls data<br>
1.txt  2.txt<br>
<br>
# basic map, argument goes on the command line<br>
$ ls -d data/* | map basename<br>
1.txt<br>
2.txt<br>
<br>
# map with lambda expression<br>
$ ls -d data/* | map &#39;\f -&gt; basename $f .txt&#39;<br>
1<br>
2<br>
<br>
# simple filter, also works with lambda<br>
$ ls -d data/* | map basename | filter &#39;test 1.txt =&#39;<br>
1.txt<br>
<br>
# sum<br>
$ ls -d data/* | map &#39;\f -&gt; basename $f .txt&#39; | foldr &#39;\x acc -&gt; echo<br>
$(($x + $acc))&#39; 0<br>
3<br>
<br>
Basically I&#39;m looking for a bit of feedback/info:<br>
- Does anyone know if there are already similar projets out there?<br>
- Does anyone find this interesting?<br>
- Any other comment/suggestion/feedback<br>
- Where&#39;s a good place to promote such a project?<br>
<br>
<br>
Thanks a lot,<br>
<br>
Patrick LeBoutillier<br>
<font color="#888888"><br>
<br>
--<br>
=====================<br>
Patrick LeBoutillier<br>
Rosemère, Québec, Canada<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
</font></blockquote></div><br></div>