Camarade_Tux has quit [Read error: 110 (Connection timed out)]
Camarade_Tux has joined #ocaml
<jeddhaberstro>
How many things have changed from OCaml 2.10 to 3.10?
pango_ has quit [Remote closed the connection]
pango_ has joined #ocaml
Axioplase is now known as Axioplase_
dibblego has quit ["Leaving"]
dibblego has joined #ocaml
seafood has joined #ocaml
<bluestorm>
jeddhaberstro: how was the 2.10 like ?
<jeddhaberstro>
I don't really know. Just wondering, since the O'Reilly books teaches with OCaml 2.10
<bluestorm>
so that's the real question :]
<bluestorm>
jeddhaberstro: the O'Reilly books has not bitrotten as far as i know, you can still learn with it without risking incompatibilities
<jeddhaberstro>
ok, cool :)
<bluestorm>
there is at least one exception, though : the stream syntaxic sugar is not included in the core language anymore, and you have to use camlp4
<bluestorm>
but the code itself is still compatible
<jeddhaberstro>
kk
<jeddhaberstro>
I wonder if there have been any break through features
<jeddhaberstro>
added
<jeddhaberstro>
I saw virtual functions was added recently
<bluestorm>
hmm
<bluestorm>
i'm not sure
<bluestorm>
(i think you saw wrong)
<bluestorm>
jeddhaberstro: the advanced ocaml features have changed a bit
<jeddhaberstro>
no, virtual methods for classes were added
<bluestorm>
hm
<bluestorm>
i think the O'Reilly book use virtual methods
<jeddhaberstro>
weird
<bluestorm>
labels, objects and the advanced features of the type system may have changed a bit
<bluestorm>
(in particular iirc the labels presented in the O'Reilly are the pre-3.0 one, with the current syntax presented as the 'modern' one)
<bluestorm>
but i can't remember anything working in the O'Reilly book wich isn't anymore
<bluestorm>
guess that means ocaml developpers did a quite good job at backward compatibility
<jeddhaberstro>
must be :)
seafood has quit []
bluestorm has quit [Remote closed the connection]
seafood has joined #ocaml
aeolist has quit [Read error: 110 (Connection timed out)]
Associat0r has quit [Read error: 104 (Connection reset by peer)]
Associat0r has joined #ocaml
Mr_Awesome has quit ["aunt jemima is the devil!"]
<wolgo>
I am starting to enjoy learning ml
<wolgo>
I have this book which is an sml book: Elements of ML programming.
dibblego has quit ["Leaving"]
dibblego has joined #ocaml
seafood has quit [Read error: 104 (Connection reset by peer)]
seafood has joined #ocaml
dibblego has quit ["Leaving"]
dibblego has joined #ocaml
jeddhaberstro has quit []
dibblego has quit [Remote closed the connection]
dibblego has joined #ocaml
wolgo has quit ["leaving"]
Mr_Awesome has joined #ocaml
code17 has joined #ocaml
Toonto_del_alma has quit [Read error: 110 (Connection timed out)]
Toonto_del_alma has joined #ocaml
mishok13 has quit [Read error: 110 (Connection timed out)]
ulfdoz_ is now known as ulfdoz
Asmadeus has joined #ocaml
seafood has quit []
Yoric[DT] has joined #ocaml
mishok13 has joined #ocaml
rwmjones has joined #ocaml
code17 has quit ["Leaving."]
code17 has joined #ocaml
jlouis has joined #ocaml
comglz has joined #ocaml
comglz has quit ["Lost terminal"]
mishok13 has quit [Read error: 104 (Connection reset by peer)]
<jdh30>
Darcs is the only vaguely popular open source project ever written in Haskell. Virtually nobody outside the Haskell community used it and now the developers of GHC (the only living Haskell implementation) are dropping it in favour of an alternative written in Python because it is 50x faster than their Haskell.
<vixey>
DarcsEvaluation seems like darcs is sort of too hard to fix
<vixey>
git is written in python ? :l
<mfp>
jdh30: they're switching to git, not mercurial
<jdh30>
Yes. Few people can understand the Haskell code and nobody has been able to optimize it to give usable performance on decent-sized code bases.
<jlouis>
git is a perl+C behemoth ;)
<mfp>
+ sh
<jdh30>
They seem to be considering both Git and Mercurial.
<vixey>
jdh30: I think they use tonnes of type level nonsense to iron out bugs
<jdh30>
They are both almost two orders of magnitude faster than Darcs.
<jlouis>
jdh30, actually, the problem with darcs is not that it is written in Haskell. The problem with darcs is the way it is designed
<vixey>
and apparently it didn't work
* Yoric[DT]
wonders if it would be interesting to reimplement Git with OCaml.
<mfp>
"Following lots of useful discussion and evaluation of the available DVCSs out there, the GHC team have made a decision: we're going to switch to git."
<Yoric[DT]>
jdh30: will you still be around in, say, 1h?
<jdh30>
Yoric[DT]: I thought about that but I don't think it would be interesting: versioning seems very boring to me...
<Yoric[DT]>
Well, I'm not thinking about doing it myself.
<jdh30>
Yoric[DT]: Maybe. I'm trying to sell a house...
<jdh30>
Yoric[DT]: Good. :-)
<Yoric[DT]>
More about pushing it onto innocent students :)
<Yoric[DT]>
jdh30: well, if not, I'll talk to you some other day.
<vixey>
Don't make _another_ VCS
<jdh30>
Yoric[DT]: I think there are much more interesting projects out there. Things that would really benefit from OCaml...
<jdh30>
vixey: Exactly.
<vixey>
svn is fine, we don't need git or darcs or any more crap
<jdh30>
Oh man, this is so funny.
<Yoric[DT]>
Anyway, I have to leave keyboard.
<jdh30>
vixey: Agreed.
<jdh30>
NP
<jdh30>
Another "popular" open source project written in Haskell is the XMonad window manager, which totals 3kLOC of code and has several hundred users.
<jdh30>
Apparently Darcs has been vindicated because it does scale up to code bases as large as XMonad.
<vixey>
the only haskell program I really used is GHC, which really good
<Smerdyakov>
I'm going to have to disagree that popularity is so important here..
* Yoric[DT]
seems to remember that Smerdyakov said something a few days ago about the interest of "doing something that people are willing to buy".
<jdh30>
Smerdyakov: I agree. They should be much more worried about the unpredictable crashing of Darcs compared to the rock-solid alternatives (e.g. the Python).
<mfp>
xmonad has been pushed aggressively on reddit. AFAIK it's a nice WM, but I'm not sure it deserves more noise than dwm, ratpoison or wmii.
<Smerdyakov>
Yoric[DT], it's a complicated world out there.
<Yoric[DT]>
Indeed.
<vixey>
jdh30: that is funny :p
<Smerdyakov>
Yoric[DT], some tools are for engineers. Some are for Joe Average.
<Yoric[DT]>
Still leaving the keyboard, though :)
<Smerdyakov>
Haskell and ML are for engineers.
<jdh30>
mfp: Yes. The Haskell community seem to generate far more noise than software.
<Smerdyakov>
Agreed. The Haskell community is a morass.
<Smerdyakov>
The Haskell community filtered to keep only people who have published at ICFP is great, though. :)
<jlouis>
haha.
<jlouis>
That is a nice filter predicate!
<jdh30>
:)
<vixey>
I read some ICFP paper
<vixey>
but the code is not released :/
<jdh30>
I find them to be full of BS. Anyone here ever studied the Haskell in Industry page?>
<vixey>
why do people do that
<jlouis>
vixey, because their code is utter crap and only works on the 3 examples in the paper
<Smerdyakov>
jdh30, what is full of BS?
<vixey>
jlouis: haha
<vixey>
I hope not
<jlouis>
vixey, I am dead serious.
<jlouis>
Don't expect papers to tell the truth all the time.
<vixey>
jlouis: I wanted to read the code for the type preserving compiler
<Smerdyakov>
vixey, Monnier & Someone Else?
<jdh30>
Smerdyakov: The set of Haskell propents.
<vixey>
Smerdyakov: yes that's the one
<Smerdyakov>
vixey, they didn't listen to my advice and kept a bad name!
<vixey>
aww
<Smerdyakov>
vixey, it's not at all interesting that the compiler is type-preserving. GHC is, too.
<vixey>
yes I agree
<jlouis>
what is type-preserving in this game? That program transformations preserve the types?
<Smerdyakov>
jlouis, like TIL, etc..
gim_ has quit [Read error: 110 (Connection timed out)]
<jlouis>
gotcha
seafood has quit []
jeddhaberstro has joined #ocaml
pango_ has quit [Remote closed the connection]
pango_ has joined #ocaml
mishok13 has quit [Read error: 104 (Connection reset by peer)]
Axioplase_ is now known as Axioplase
l_a_m has quit [Read error: 104 (Connection reset by peer)]
netx has joined #ocaml
vixey has quit ["Leaving"]
vixey has joined #ocaml
coucou747 has quit ["bye ca veut dire tchao en anglais"]
Asmadeus is now known as asmadeus
asmadeus is now known as Asmadeus
jdh30 has quit ["using sirc version 2.211+KSIRC/1.3.12"]
jaj has joined #ocaml
jdh30 has joined #ocaml
vixey has quit ["Leaving"]
vixey has joined #ocaml
code17 has quit [Remote closed the connection]
code17 has joined #ocaml
<jdh30>
Yoric[DT]: You here?
<Yoric[DT]>
Yep
<jdh30>
Yoric[DT]: Now that I think about it, I'd avoid rewriting source code management software in OCaml because it does not really play to OCaml's strengths.
<jdh30>
Yoric[DT]: e.g. strings and ints.
<Yoric[DT]>
Well, strings can be replaced with ropes.
<Yoric[DT]>
And ints... where do they matter so much?
<jdh30>
Yoric[DT]: I bet they'll still be really slow in OCaml.
<Yoric[DT]>
I haven't checked.
<jdh30>
Yoric[DT]: ints matter in the string handling code (as indexes).
<jdh30>
Yoric[DT]: and regex code and ...
<jdh30>
Yoric[DT]: OCaml's regex engine is also not great (e.g. no run-time compilation to native code).
<Yoric[DT]>
Fair enough.
<jdh30>
Oooh, I know of a good student project.
<jdh30>
Get them to reimplement OCaml's regex engine using LLVM.
<Yoric[DT]>
Good idea.
<jdh30>
I think there is a lot of exciting work to be done using LLVM.
* Yoric[DT]
unfortunately doesn't have any student with the necessary level in OCaml to do that.
<jdh30>
A basic FPL as a tutorial would be of great interest to a lot of people.
<Yoric[DT]>
FPL?
<jdh30>
Like a mini ML.
<Yoric[DT]>
Functional Programming Library?
<jdh30>
Language
<Yoric[DT]>
oh, Language
<Yoric[DT]>
Sounds like a good idea.
<jdh30>
An OCaml backend using LLVM would also be cool.
<Yoric[DT]>
Too bad I don't have the right students.
<jdh30>
What do your students specialize in?
<Yoric[DT]>
I have two kinds.
wlmttobks has joined #ocaml
<Yoric[DT]>
* undergrads specialized in mathematics
<vixey>
what's so good about llvm?
<jdh30>
vixey: It rocks. :-)
<Yoric[DT]>
* grads specialized in system programming.
<jdh30>
vixey: Fast run-time generation of efficient code.
<jdh30>
vixey: Much higher performance of compiled code than Mono.
<Yoric[DT]>
(the second category has exactly 2h of functional programming in their whole syllabus)
<jdh30>
vixey: Much faster compilation that most other compilers (e.g. Stalin ;-)
<Yoric[DT]>
(and I don't mean 2h/week)
<jdh30>
Yoric[DT]: Oh.
<Yoric[DT]>
Well, that is also one of the reasons why I intend to move university :)
<jdh30>
:-)
<jdh30>
BRB
<jlouis>
jdh30, haha. Stalin is notoriously slow. But then again, it does quite some specialization
Snrrrub has joined #ocaml
jaj has left #ocaml []
coucou747 has joined #ocaml
wlmttobks has quit [K-lined]
<jdh30>
jlouis: Stalin slow? ;-)
<jlouis>
jdh30, compilation-time-slow
<jdh30>
An astrophysicist friend of mine says Stalin is equally fast. ;-)
<jdh30>
I'm just kidding.
<jdh30>
Stalin isn't exactly run-time fast either, unless your Scheme code happens to be SML. :-)
<jlouis>
Don't believe the astrophysicists :)
<jdh30>
But their order of magnitude is within orders of magnitude?
<jdh30>
Like some fundamental constants (that might not be constant).
<jeddhaberstro>
jdh30: Just listened to your talk with DotNetRocks, it was quite enjoyable :)
<mfp>
jlouis: he only gives one example, though, so it's not clear his approach is general
<mfp>
and it's still missing things like private types
<mfp>
I don't know if the hack he uses to support abstract polymorphic types allows to make them covariant/contravariant
landonf has joined #ocaml
<jlouis>
mfp, well, I don't use Haskell
<jlouis>
But the reason for that is not the weakness of the module system, however.
<mfp>
It hinders modular development nevertheless, doesn't it? Information hiding is at best seriously tricky, if possible at all.
<jlouis>
I think it is bad you can't nest modules
<jlouis>
I like that feature a lot in ML
<Smerdyakov>
jlouis, "ML" commonly stands for a family of languages, not a language.
<jlouis>
Smerdyakov, I was referring both to SML and Ocaml in the above
<jlouis>
Though I was not referring to the original ML by Milner and co ;)
<Smerdyakov>
OK
Camarade_Tux has left #ocaml []
Camarade_Tux has joined #ocaml
lde has quit [Read error: 104 (Connection reset by peer)]
vixey has quit [No route to host]
<jdh30>
jlouis: Note that Oleg's claims about Haskell's type system are often seriously dubious.
<jdh30>
jeddhaberstro: Thanks. The .NET Rocks guys are really nice BTW.
<jdh30>
jeddhaberstro: Although they did promise to edit out something stupid I said and then left it in!
lde has joined #ocaml
mishok13 has joined #ocaml
mishok13 has quit [Read error: 104 (Connection reset by peer)]
vixey has joined #ocaml
mishok13 has joined #ocaml
coucou747 has quit [Read error: 110 (Connection timed out)]
eelte has joined #ocaml
sporkmonger has joined #ocaml
gdmfsob has joined #ocaml
vixey has left #ocaml []
mishok13 has quit [Read error: 110 (Connection timed out)]
Yoric[DT] has quit ["Ex-Chat"]
lde has quit [Remote closed the connection]
lde has joined #ocaml
guillomovitch has joined #ocaml
asmanur has quit [Read error: 60 (Operation timed out)]
gdmfsob has quit [Read error: 110 (Connection timed out)]
Axioplase is now known as Axioplase_
jlouis has quit [Remote closed the connection]
Asmadeus has quit ["nightynight"]
redocdam has quit []
marmotine has quit ["mv marmotine Laurie"]
guillem_ has quit [Remote closed the connection]
<jdh30>
Wow, I just got banned from #haskell without even writing anything.
<Smerdyakov>
Were you banned before, after writing something?
<jdh30>
No.
<jdh30>
And I'm banned from the Haskell cafe.
<jdh30>
Or "moderated into oblivion".
<jdh30>
LOL
<jdh30>
I wrote on the Haskell-Cafe mailing list. The person I replied to was the same person who banned me from #haskell (Donald Stewart from Galois).
Smerdyakov has quit ["BRB"]
Smerdyakov has joined #ocaml
Snrrrub has joined #ocaml
Smerdyakov has quit [Client Quit]
Smerdyakov has joined #ocaml
Camarade_Tux has quit [Read error: 110 (Connection timed out)]
Camarade_Tux has joined #ocaml
Morphous has quit [Connection timed out]
Morphous has joined #ocaml
<jeddhaberstro>
what did u say jon?
<jeddhaberstro>
what are the other good channels for functional programming?