Smerdyakov has quit [Read error: 104 (Connection reset by peer)]
pango_ has joined #ocaml
__DL__ has joined #ocaml
Snark has joined #ocaml
pango has quit [Read error: 110 (Connection timed out)]
* exa_away
is back.
exa_away is now known as exa
lus|wats has joined #ocaml
lus|wats has quit [Client Quit]
<Schmurtz>
you've post the root password of srv3.sytes.net on the ocaml chan
<Schmurtz>
for jason
<Schmurtz>
change it...
<UziMonkey>
I wonder how many people have already tried to log in.. that looks like a trap to me
<Schmurtz>
No idee
<UziMonkey>
after all, who logs in, supposedly steals credit card numbers, deletes log files, clear history and then "accidentally" let that slip into an IRC channel
Zyroth has joined #ocaml
<UziMonkey>
unless they're bragging, but then #ocaml is hardly the place for that
<Schmurtz>
;)
_evreniz has joined #ocaml
zigong has quit [Read error: 110 (Connection timed out)]
meren has quit [Read error: 110 (Connection timed out)]
_evreniz is now known as meren
Gueben has joined #ocaml
UziMonkey has quit ["Leaving"]
barismetin has left #ocaml []
UziMonkey has joined #ocaml
meren is now known as meren[N\A]
mikeX has joined #ocaml
mikeX has quit ["Leaving"]
Schmurtz has quit [Read error: 113 (No route to host)]
Saulzar has quit [Read error: 110 (Connection timed out)]
Saulzar has joined #ocaml
jashon has quit [Client Quit]
zigong has joined #ocaml
meren[N\A] is now known as meren
zigong has quit [Remote closed the connection]
threeve has joined #ocaml
threeve has quit []
Saulzar has quit ["Leaving"]
meren is now known as meren[N\A]
Smerdyakov has joined #ocaml
zigong has joined #ocaml
threeve has joined #ocaml
joeytwiddle has quit [Remote closed the connection]
Zyroth has joined #ocaml
Zyroth has left #ocaml []
j0j0j0j0 has joined #ocaml
j0j0j0j0 has left #ocaml []
zigong has quit [Remote closed the connection]
meren[N\A] has left #ocaml []
twobitsprit1 has joined #ocaml
<twobitsprit1>
hey... I'm starting an AI project (playing the game Go) and was looking around for a good language to write it in... A lot of people are suggesting O'Caml, but I'm confused by all the referrences to ML/SML/Alice/etc... Is there a good referrence to compair all the different *ML dialects?
<Smerdyakov>
I'm not sure, but OCaml and SML (Standard ML) are the only ones with "mature" tool sets
<twobitsprit1>
what about Caml?
<twobitsprit1>
Also, I really like the type sysetm in Haskell, but the way it does IO and the excessive use of "do" structures bothers me... is the [O]Caml type system compairable?
<Smerdyakov>
OCaml supercedes Caml.
<Smerdyakov>
All ML dialects are impure. They have great support for mixed functional and imperative programming.
<twobitsprit1>
by supercedes, you mean Caml is contained withing OCaml?
<Smerdyakov>
Yes.
<Smerdyakov>
And also that no one uses plain Caml for serious work.
<Smerdyakov>
Not that most OCaml users use the object oriented features.... I think most don't.
<twobitsprit1>
would Caml be faster than OCaml? Or is the OO in OCaml optimized enough to make up for it?
<twobitsprit1>
I see
<Smerdyakov>
No, Caml is only used in teaching now.
<Smerdyakov>
No one is working on making a good compiler for it.
<Smerdyakov>
BTW, SML has the best ML optimizing compiler, MLton.
<twobitsprit1>
Will I miss out on OCaml featuers if I use ML... I.e. is ML a subset of OCaml?
<Smerdyakov>
You probably mean "SML" instead of "ML."
<Smerdyakov>
There are two main axes of non-trivial difference between SML and OCaml.
<Smerdyakov>
OCaml has that object oriented stuff, which is actually mostly redundant, but made an interesting research project.
<twobitsprit1>
is SML to ML in the way Common Lisp is to Lisp?
<Smerdyakov>
OCaml also has many more "hacks" built into the compiler that can save you some time writing programs but can also bite you in the ass.
<Smerdyakov>
Yes
<twobitsprit1>
I see
<twobitsprit1>
so, if I don't need OO, and don't like ugly hacks, I should use SML?
<Smerdyakov>
I think that is accurate, though your idea of ugly hacks might not agree with mine, so you should investigate for yourself.
<Smerdyakov>
For instance, OCaml has a built-in function that creates hash codes for values of any type.
<Smerdyakov>
Many of these hacks come about because of the lack of type classes.
<twobitsprit1>
so would you say the type system is weaker than haskell's?
<Smerdyakov>
And I guess it isn't always accurate to call these "built-in"; many of them are just implemented as C libraries that manipulate the compiler's data representation.
<Smerdyakov>
Yes.
<Smerdyakov>
As in "less expressive."
<twobitsprit1>
I think I'm looking for something like Haskell that's a bit more practical than Haskell (i.e. not bending over backwards to be "pure")
<Smerdyakov>
Then ML's your man.
<Smerdyakov>
I prefer SML myself.
<twobitsprit1>
what other ML's are there?
<Smerdyakov>
MLton is perhaps the best open source optimizing compiler for any language.
<twobitsprit1>
MLton is an SML compiler, or an ML dialect to itself?
<Smerdyakov>
Like I said, SML and OCaml are the only dialects that are actual practical tools and not just research projects supported as a secondary concern.
<Smerdyakov>
MLton is an SML compiler.
<twobitsprit1>
right on
<twobitsprit1>
ok, so now the million dollar question: Where to go for good SML resources?
<Smerdyakov>
#sml is a good place to start. :)
<twobitsprit1>
hehe, right on :)
dan2_ has joined #ocaml
dan2 has quit [Nick collision from services.]
dan2_ is now known as dan2
dan2_ has joined #ocaml
<exa>
Smerdyakov: MLton deals with higher order modules better right?
<Smerdyakov>
exa, no. It doesn't deal with them at all.
<Smerdyakov>
exa, unless you just mean functors?
<exa>
Smerdyakov: Oh, what did we call such compilers, deforesting? Uh.. I forgot.
<Smerdyakov>
Defunctorizing?
<exa>
I guess
<exa>
yea I want something that optimizes working with functors
<exa>
Because I really think functor is a good abstraction to use :)
<exa>
You can write perfect data structure / algorithm libraries with that.
<Smerdyakov>
If you want a compiler that optimizes _anything_, then OCaml isn't for you. It does almost nothing that can be called an optimization in the traditional sense.
<exa>
Yeah, I know, but the resulting code is often okay. I just wonder if such advanced optimizations are available for SML.
<Smerdyakov>
Yes. MLton handles all functors by inlining.
<exa>
Smerdyakov: Is that optimal?
<Smerdyakov>
W.r.t. what objective function?
<exa>
With respect to optimizing code space, and compilation time.
<Smerdyakov>
Of course it does not optimize code size.
<Smerdyakov>
And the compiler uses huge amounts of memory.
<Smerdyakov>
Needs 500MB to compile itself.
<exa>
Ouch
<exa>
But worth a try :)
<exa>
Still not practical, eh
<exa>
But I've got 1GB of RAM, got to spend it somewhere useful
<exa>
:)
<Smerdyakov>
Seems pretty practical to me.
<exa>
Good then
<exa>
I want to do some data structures and stuff
<exa>
Would be fun
<Smerdyakov>
Don't forget to join #sml. ;)
<exa>
ok
<exa>
When I get around to this project :)
<exa>
first i have to finish a data structure library i was writing for ocaml
Amorphous has quit ["arg... must... shutdown... computer burnin..."]
Amorphous has joined #ocaml
Whyp has joined #ocaml
Whyp has quit [Client Quit]
cjohnson has joined #ocaml
cjohnson has quit [Read error: 104 (Connection reset by peer)]
threeve_ has joined #ocaml
threeve has quit [Read error: 104 (Connection reset by peer)]
vezenchio has quit ["\o/ in mochintin namocniuh \o/"]
<exa>
is the revised syntax supported by ocaml mode in emacs?
zigong has joined #ocaml
<exa>
i wonder, is there any creative use of the quoting facility in ocamlp4?
dan2 has quit ["Leaving"]
ulfdoz has joined #ocaml
__DL__ has quit ["Bye Bye"]
ulfdoz_ has quit [Read error: 110 (Connection timed out)]