Hi,
Strangely enough, I did the opposit some time ago. Ocaml is way simpler than
haskell, in fact. There is no referential transparency, no laziness (though it
can be simulated with fun ()-x, but the type of a lazy expression is not the
same as the reduced expressions), no parallelism (the GC
Then maybe you should try godi. It is the camlist's cabal, but while the
authors of cabal have really done a good job, godi is still quite poorly
written, and has not gained wide acceptance in the community.
And, yes, there are cool applications written in ocaml. People claim that the
best
Hi,
You do not need a DSL at all, in fact. The simplest way to do this, if you use
GHC, is to use the GHC api. This can compile everything for you, and return a
value with type Dynamic, from Data.Dynamic and Data.Typeable. It is
type-safe, you can write within very little time (even if the
By the way, if someone on this list has got too much time, he could write
something that would fulfill the goals of literate programming -- à la web and
cweb.
Knuth was able to make books with his source code. I believe that lhs2tex is
great for classes about haskell or fp, but I never found it
Actually lambdabot and mueval use the GHC api, and hint is supposed to be a
wrapper around it. But using the API directly is quite simple, and the scripts
are indeed compiled.
I believe that the purpose of scripting an application is adding fun factor to
it. How many haskell programmers are
Fifty years ago someone came up with this idea of lisp and parentheses. By now
in year 2010, I have never heard of any programmer who never made jokes about
it. Now imagine the discussions in 2060 :
- ahah, you're still programming with monads. lol
- no but theyre ok for dirty scripting.
- all
This way :
do
times-mapM PF.getFileStatus filenames = return.(map
PF.modificationTime)
Or also :
do
times-mapM (PF.getFileStatus = (return.(PF.modificationTime)))
filenames
let sorted=...
I do not know exactly how ghc compiles the IO monad, but it seems to me that
Shit ! I'll have to explain him how to add monads in python 3 ;-)
El 07/05/2010, a las 19:31, Brandon S. Allbery KF8NH escribió:
On May 5, 2010, at 21:49 , Pierre-Etienne Meunier wrote:
- all these =, significative indentation, You're from the past dude.
Careful, or Guido (van Rossum
By the way, I do not know the GHC API well enough to say if it is possible to
embed a super small bytecode interpreter, but :
- If it is the case, then users who do not want to write scripts can use it.
Others would want to compile haskell code, therefore they need GHC anyway.
- If it is not,
There is a also a problem with polymorphic actions of functions. The GHC API is
typesafe only when returning elements of the Typeable class. Else you can do an
unsafeCoerce, but I assume that hint uses Typeable, with a wrapper class to
ensure monomorphism.
But if your script action returns a
In fact, the time you'd spend writing read instances would not compare to the
half hour required to learn parsec.
And your parser will be efficient (at least, according to the guys from the
parser team ;-)
Cheers,
PE
El 08/05/2010, a las 23:32, Tom Hawkins escribió:
I have a lot of
If you imperatively need to stay in the US, I do not know if there's even one.
If you do not have problems with traveling, you can have a look at :
http://mpri.master.univ-paris7.fr/
Which gathers the best french students (from such schools as Ecole
Polytechnique, ENS Ulm, ENS Cachan). Or I
If you imperatively need to stay in the US, I do not know if there's even one.
If you do not have problems with traveling, you can have a look at :
http://mpri.master.univ-paris7.fr/
Which gathers the best french students (from such schools as Ecole
Polytechnique, ENS Ulm, ENS Cachan). Or I
Of course, I'm partial.
And of course so was I, and even more than partial !
Excuse-me if the provocation was badly formulated.
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
I'm not knowledgeable enough in type systems to understand the paper, therefore
I do not know if this email answers anything about your request for comments.
For what I understand of the current possibilities of GHC, being able to use
types for ensuring the axioms of algebra (groups, rings and
Hello Cafe,
Being a complete beginner in the field of numerical analysis, but anyway
needing it to solve real problems, I wrote a few functions recently to solve
systems of polynomial equations using the projected polyhedron method by
Maekawa and Patrikakalis.
This requires solving systems of
Perhaps you can look at the new array packages of the last few years:
* vector
An efficient implementation of Int-indexed arrays (both mutable and
immutable), with a powerful loop fusion optimization framework .
http://hackage.haskell.org/package/vector
*
I've also just noticed a lack in the vector library : multidimensional arrays
seem to require indirections like in caml, whereas in C or in Data.Ix, there is
a way to avoid this. This is especially important for avoiding cache misses
with many dimensions, as well as for providing a clean
You are quite right that vector only supports nested arrays but not
multidimensional ones. This is by design, however - the library's only goal
is to provide efficient one-dimensional, Int-indexed arrays. I'm thinking
about how to implement multidimensional arrays on top of vector but it's
By the way, speaking of floating-point precision, is there a real reason why
haskell forces us to write :
foreign import ccall unsafe math.h frexp c_frexp::CDouble-(Ptr CInt)-IO ()
foreign import ccall unsafe math.h ldexp c_ldexp::CDouble-CInt-IO CDouble
ulp::Double-Double
ulp x=unsafePerformIO
Anyway, does the license imply that one can't compile GHC's core language and
RTS into objective-c, then compile it with their so great software ?
El 26/05/2010, a las 05:51, Ryan Trinkle escribió:
Hi guys,
I don't think this licensing issue will be a problem for us. It's not clear
to
Well, this does not contradict Sam's point, which was that you may have written
nicer, faster and more elegant code in way less time, had you used a true
programming language ;-)
El 26/05/2010, a las 12:28, David Sankel escribió:
On Wed, May 26, 2010 at 6:19 AM, Sam Martin
, but pretending they can do
it in this case only shows that Apple lawyers never communicate with the
engineers.
El 26/05/2010, a las 15:32, Brandon S. Allbery KF8NH escribió:
On May 26, 2010, at 10:17 , Pierre-Etienne Meunier wrote:
Anyway, does the license imply that one can't compile GHC's core language
There is a enormous bunch of C code out there on the internet. It is not that
hard to simply take arbitrary commentaries and variable names from it, then
using it to replace GHC's jjaksh34$-like variables in the core.
Doing objective-c is a bit harder, as you have to use the objects, or else
** Advertisement **
Have you tried the library I have written, Data.Rope ?
** End of advertisement **
The algorithmic complexity of most operations on ropes is way better than on
bytestrings : log n for all operations, except traversals, of course.
Cheers,
PE
El 27/05/2010, a las 06:01,
Hi Cafe,
Profiling a function that I thought ultra simple revealed that it consumed more
than half the execution time of my code. After noticing that GHC did not unbox
all I thought it did, I rewrote it with primitive types, and it did a little
better, but not much. Then, examining the core
If this ever gets to court, we may have a criterion imposed on us,
possibly one as silly as the distinction between programs and
algorithms said to be made in patent-land.
I really do agree with your post, but what I dont get is why Apple does not
intent anything against George Hotz, who
.
PE
El 28/05/2010, a las 14:22, Max Rabkin escribió:
On Thu, May 27, 2010 at 2:44 PM, Pierre-Etienne Meunier
pierreetienne.meun...@gmail.com wrote:
** Advertisement **
Have you tried the library I have written, Data.Rope ?
** End of advertisement **
The algorithmic complexity of most
Read the PDF manual from adobe, it is not that hard. Fonts are a little harder,
but not too much.
El 01/06/2010, a las 12:14, Henning Thielemann escribió:
On Tue, 1 Jun 2010, Jim Tittsler wrote:
What is the easiest way to create PDF files from Haskell? Is gtk2hs's
PDF output the
Isn't there a problem with non-type 1 vectorial fonts being rasterized during
this conversion ?
El 01/06/2010, a las 14:07, Yitzchak Gale escribió:
Jim Tittsler wrote:
What is the easiest way to create PDF files from Haskell?
Pierre-Etienne Meunier wrote:
Read the PDF manual from adobe
- an existing solution exists which does the job and you know you're not
going to patch the source ( eg OpenOffice or Linux kernel, or simple
build scripts. There is already make etc )
Don't you find yourself looking at the documentation each time you want to
write a loop in a Makefile ?
an STRef forbids it.
Can someone know how to do it (outside IO, and without using
unsafePerformIO, of course) ?
Thanks
Pierre-Etienne Meunier
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
in GHC's runtime), how do you write
that, with the memoization table shared, of course ?
Pierre-Etienne
El 08-nov-09, a las 14:08, Luke Palmer escribió:
On Sun, Nov 8, 2009 at 2:51 AM, Pierre-Etienne Meunier
pierreetienne.meun...@gmail.com wrote:
Hi,
I'm designing an algorithm that uses dynamic
there is also a binding for libGD on hackage :
http://hackage.haskell.org/package/gd
And, of course, you can improve it, or write a binding to a more
complete library. Or, even better, write a mix between
http://www.libpng.org/pub/png/pngdocs.html
and
Hi,
In fact it is not quite hard to see that such a numbering exists : just take
any numbering of all Turing machines, say {\phi_i}, then remove all indices i
such that there is ji such that \phi_j = \phi_i (equality is mathematically
correctly defined between functions from N to N).
Ah, and
Hi,
readFile is lazy IO, so the unsafePerformIO or equivalents are already there.
It should be enough to invent a strict process function, but which ghc 6.12.3
isn't able to figure out that it is strict. Does it still work with :
writeFile output $! process inp
This raises another question :
Hi,
Why don't you use the Data.Rope library ?
The asymptotic complexities are way better than those of the ByteString
functions.
PE
El 13/08/2010, a las 07:32, Erik de Castro Lopo escribió:
Hi all,
I'm using Tagsoup to strip data out of some rather large XML files.
Since the files are
Can anyone point me towards existing work I could use? Open course
material and syllabuses I could use, with the necessary references?
If I was to do the same, and my students already knew haskell (which will be
the case after a few courses), I'd certainly read Chris Okasaki's book (or his
You may also look at Data.Dynamic / Data.Typeable. It may not work really well,
depending on how you defined A and B. In GHC, it should work with any type
produced with the haskell 98 use of the keyword data, though.
This is the canonical solution to cope with the GHC API returning values of
Seems cool, but I do not really get it : why write it in haskell ? I thought at
first that your formula language was haskell, but it looks more like a php
derivative.
Does it do more than the spreadsheet thing in openoffice ?
Also, maybe you could do the same with gnuplot, it would be really
Hi,
Is there something like an identity type, transparent to the type-checker, in
haskell ?
For instance, I'm defining an interval arithmetic, with polynomials, matrices,
and all that... defined with intervals. The types are :
Polynomial Interval (instead of Polynomial Double for instance)
Hi,
This is mostly a question for Roman : how do you use your vector library with
multi-dimensional arrays ? I mean, the array library from the standard
libraries does something more intelligent than the C-like solution with
indirections.
For instance, it allows you to program a single
42 matches
Mail list logo