mbishop changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | Grab Ocaml 3.10.0 from http://caml.inria.fr/ocaml/release.html (featuring new camlp4 and more!)
simone has quit [Read error: 110 (Connection timed out)]
EliasAmaral has joined #ocaml
mikeX has quit ["leaving"]
_PenPen_ has joined #ocaml
<_PenPen_> join sdl
malc_ has joined #ocaml
_PenPen_ has left #ocaml []
pedro_gsoc has joined #ocaml
pedro_gsoc has left #ocaml []
raz0 has joined #ocaml
EliasAmaral has quit [Network is unreachable]
tty56 has joined #ocaml
tty56 has quit ["leaving"]
tty56 has joined #ocaml
raz0 has quit []
EliasAmaral has joined #ocaml
malc_ has quit ["leaving"]
<Smerdyakov> For anyone who doesn't know: there is now a channel ##logic , and it is the place to be.
jeffs has joined #ocaml
<jeffs> anyone in here enjoy programming?
<ayrnieu> jeffs - yes.
<jeffs> I do too, but I'm kinda tired of working on projects by myself.
<jeffs> are there any ocaml projects looking for help?
[eval] has joined #ocaml
<ayrnieu> I don't know of any, sorry. You might find something interesting in the Hump and send patches.
<ayrnieu> Find something that you like that has a mailling list, put the list on gmane if it isn't already, send patches. You'll feel better.
<tautologico> well, look for the two ocaml plugins for eclipse currently in development, then help them... this would be important for popularization of the language
<jeffs> ah yes, a good ocaml ide is something we are lacking
<jeffs> well, exceptionally good anyway, i find xemacs to be good enough :)
<jeffs> I've thought about how one would write an IDE in ocaml that was REALLY complete, including support for suggesting completions (autocompletion), and especially language extensions.
<jeffs> An ide that supports revised syntax is something i'd like.
<tautologico> emacs is good enough for me
<tautologico> but many people wouldn't like to have to learn emacs so they can use ocaml
<tautologico> especially windows users
<jeffs> me too, but i'd like to switch to revised syntax, and emac's ocaml mode doesn't support it
<schme> jeffs: I'd enjoy something along the lines of SLIME (for emacs) for ocaml.
<jeffs> looking that up...
<tautologico> SLIME is a emacs mode for common lisp
<schme> It's for lisp development. But it is quite nice actually. It has completions and what not.
Smerdyakov has quit ["Leaving"]
[eval] has left #ocaml []
Smerdyakov has joined #ocaml
the_dormant has joined #ocaml
tautologico has quit []
kelaouchi has quit [Read error: 110 (Connection timed out)]
G_ has joined #ocaml
G has quit [Read error: 60 (Operation timed out)]
AnarkiNet has joined #ocaml
<AnarkiNet> are there any ocaml -> C# converters around?
<jeffs> ooooooh boy
<jeffs> hm
<AnarkiNet> or perhaps a compiler for ocaml that compiles to a .NET assembly? :)
<jeffs> have you looked at f#?
<AnarkiNet> i've heard of it
<jeffs> it's sorta like ocaml for .NET
<AnarkiNet> well i want to utilize some existing ocaml code in a new .NET app
<AnarkiNet> or at least port it
<jeffs> it might be a simple task to translate it into f#, which could then compile to a .NET library
<jeffs> but it depends on what you're doing i guess
<AnarkiNet> well what i want to use is x264farm
<jeffs> f# is very much like ocaml in some ways, but it uses the .NET libraries instead fo the ocaml ones. I think it has wrappers for some to make it more like ocaml.
<AnarkiNet> a distributed x264 encoder
<AnarkiNet> x264farm is written in ocaml....i dont know ocaml, and i prefer C#
<jeffs> hm, 1 sec
<AnarkiNet> i dont really even need to use the code, i just want to figure out how to make my own H.264 encoder that is also distributed
<jeffs> oh, so you're going to start from scratch?
<AnarkiNet> and from what i've seen of ocaml, i'd rather try and learn from ocaml code than from C code
<AnarkiNet> yeah probably
<jeffs> that's a lot of source.... x264farm isn't small beans
<AnarkiNet> yea
Demitar has quit ["Burn the land and boil the sea. You can't take the sky from me."]
<jeffs> Hm
<jeffs> f# might be a lot easier to deal with if .NET is your target
<jeffs> translating to c# would require a LOT more work because c# is object oriented rather than functional (well, it can be functional, but that's a pita)
<jeffs> and f# is, i think, a superset of ocaml's syntax
<AnarkiNet> mmmph, well i'm not directly "porting" x264farm
<AnarkiNet> i just want to pull ideas from it
<AnarkiNet> maybe i should instead be asking where i can pick up a quick primer on ocaml syntax?
<AnarkiNet> that way i could just have an easier time reading the existing code and i could work from there
<jeffs> a tutorial, or technical description?
<AnarkiNet> tutorial i think
<jeffs> here are two resources I highly recommend:
<jeffs> the book is more of a tutorial/intro with examples
<jeffs> the reference is well.... ya
<AnarkiNet> ty
<jeffs> np
<jeffs> that's probably good too, though I didnt ever find that until after i'd already become fluent
G has joined #ocaml
<flux> anarkinet, there's an actual ocaml-for-net project too
<flux> which isn't fsharp
<flux> (can't recall the url though)
<jeffs> here's the material from which I learned ocaml -- http://www.msu.edu/course/lin/475/notes/
<flux> anarkinet, but, it was easy to find: http://www.pps.jussieu.fr/~montela/ocamil/
<jeffs> ha! wow
<jeffs> OK I have to admit that it's cool that that tool exists, but it would make me feel dirty to use it :P
<flux> how come?
<jeffs> i'm exaggerating, but ocaml's native compiler is so much faster i'm sure, and more well tested
<flux> well, after compiling to .net bytecode, it can take advantage of microsoft optimizers, which I guess can be quite nice..
kelaouchi has joined #ocaml
<flux> the well-testedness-point is good, though
<jeffs> I'm guessing the most attractive reasons are to use an ocaml library in a .NET app or vice-versa
<flux> but as it's written in ocaml, it's expected to be bug-free :)
<jeffs> hehe
<jeffs> ocaml only ensures type-safety
<jeffs> When I started taking my class taht required ocaml, I asked if there was an ocaml to c++ converter cause at the time c++ was my prefered langauge.
<jeffs> The teacher just rubbed his chin and said "That's a deep question."
<pango> with nice types, it's more than it looks (bye bye NULL pointers...)
<jeffs> you can do a type-safe thing that's sorta like a null pointer
G_ has quit [Read error: 110 (Connection timed out)]
Demitar has joined #ocaml
<jeffs> ref None
<pango> exactly
<pango> yet you need a match to dereference it
<jeffs> yup. and good thing too!
<jeffs> well, you don't HAVE to
<jeffs> you could just assume that it contains something, but you'll get a runtime error if it contains None
<pango> sorry have to go :/
<jeffs> aw. see you around
<jeffs> btw you're right you have to do a match on it
<jeffs> i was thinking you meant an exaustive match
jeffs has quit ["Leaving."]
kilimanjaro has joined #ocaml
ayrnieu has quit ["..."]
the_dormant_ has joined #ocaml
ayrnieu has joined #ocaml
the_dormant has quit [Read error: 110 (Connection timed out)]
the_dormant_ has quit []
Demitar has quit [Read error: 113 (No route to host)]
qwr has joined #ocaml
Demitar has joined #ocaml
slipstream-- has quit [Read error: 104 (Connection reset by peer)]
bluestorm_ has joined #ocaml
slipstream has joined #ocaml
bluestorm_ has quit ["Konversation terminated!"]
Mr_Awesome has quit ["...and the Awesome level drops"]
smimou has joined #ocaml
BleSS has joined #ocaml
<BleSS> pango: Erik added your code in the fractal benchmark and the code has yor credit. Thanks!
<BleSS> s/yor/your
BleSS has left #ocaml []
<flux> how come he didn't put the ocamlopt-version there, given that there is the C-version there..
<flux> oh well, I guess it's comparing mostly interpreted (or byte-compiled) languages
<flux> it's computer languages shootout all over again :)
<jlouis> hah
<jlouis> Java Elapsed 1.592
<jlouis> java Mandelbrot 1.24s user 1.14s system 54% cpu 4.389 total
<jlouis> heh
<jlouis> java startup time sucks
<jlouis> OCaml Elapsed 0.46
<jlouis> ./a.out 0.25s user 0.00s system 54% cpu 0.465 total
<jlouis> (Thats ocamlopt)
<jlouis> OCaml Elapsed 3.72
<jlouis> ./a.out 2.16s user 0.02s system 56% cpu 3.849 total
<jlouis> and none-ocaml opt
<jlouis> So let us guess: A powerbook G4 on 867 Mhz has vastly different performance metrics compared to this (clocked down) P-M 1.2Ghz ;)
bzzbzz has quit ["leaving"]
<jlouis> performance characteristics
<flux> 2.252/0.099 on 2.4GHz intel, ocamlc/ocamlopt
<flux> scaling down the 3.8 seconds from the page I get 0.17 seconds, right after C, woohoo \o/
<flux> (no, I don't really care ;-))
<jlouis> I hate shootouts
<flux> actually that apparently flushes output after every character
<jlouis> MLton would perform rather bad on such a short thing I think
<flux> really? hmm..
<jlouis> startup time
<flux> redirecting output to devnull speeds up the result by another 50%
<jlouis> interesting
<flux> why do mlton binaries start up slowly?
<jlouis> GC initialization mostly
<jlouis> its pretty fast, but there is still more work to do than the ocaml init it seems
<flux> so what's there to initialize? I mean, how much longer than a million sycles can it take (one millisecond)
<flux> maybe ocaml's static binary nature helps
<jlouis> I should rewrite it to mlton and have fun
<jlouis> but I don't think I care that much
<flux> :)
<flux> the C version uses buffered IO
<jlouis> *sigh*
<jlouis> apples and oranges
<jlouis> as always
<jlouis> in the great computer language shootout, GHC sometimes skyrockets because of the lazy evaluation: ``Oh, the big computation is not needed for the result? Return!''
slipstream-- has joined #ocaml
bluestorm_ has joined #ocaml
slipstream has quit [Read error: 110 (Connection timed out)]
G_ has joined #ocaml
G has quit [Nick collision from services.]
G_ is now known as G
G_ has joined #ocaml
G has quit [Read error: 110 (Connection timed out)]
Demitar has quit [Read error: 104 (Connection reset by peer)]
Demitar has joined #ocaml
qwr has quit [pratchett.freenode.net irc.freenode.net]
Hadaka has quit [pratchett.freenode.net irc.freenode.net]
qwr has joined #ocaml
Submarine has quit ["Leaving"]
lde has joined #ocaml
ygrek has joined #ocaml
lde has quit [Success]
lde has joined #ocaml
vorago has quit [Read error: 110 (Connection timed out)]
lde has quit [Read error: 104 (Connection reset by peer)]
sgillespie has quit ["leaving"]
jeffs has joined #ocaml
vorago has joined #ocaml
olegfink has quit [Read error: 113 (No route to host)]
pango has quit [Remote closed the connection]
gunark has quit ["Konversation terminated!"]
pango has joined #ocaml
psnively has joined #ocaml
<psnively> Good morning!
<psnively> Any ocamlnet users here?
psnively has quit []
benny__ has joined #ocaml
JeffSmac has joined #ocaml
JeffSmac has quit [Client Quit]
benny_ has quit [Read error: 110 (Connection timed out)]
malc_ has joined #ocaml
<jeffs> g'morning
<jeffs> cept i'm 2 hours late to reply
pango has quit [Remote closed the connection]
pango has joined #ocaml
the_dormant has joined #ocaml
<pango> I guess the lua program takes 1.0s... because 1s is the precision of the method used to measure time ;)
kelaouchi has quit [Read error: 54 (Connection reset by peer)]
kelaouchi has joined #ocaml
<pango> mmh at least it seems to be rounding up... nice speed for an interpreter
malc_ has quit ["leaving"]
the_dormant_ has joined #ocaml
the_dormant has quit [Read error: 110 (Connection timed out)]
pantsd has quit ["Leaving."]
<pango> lua4 is only slightly faster than ocaml bytecode interpreter in that test; That's lua5 that's twice as fast as lua4! Since there's no arrays involved in that test, I wonder if that's only the result of switching to a register based virtual machine...
ygrek has quit []
Optikal__ has joined #ocaml
Mr_Awesome has joined #ocaml
screwt8 has quit [Remote closed the connection]
screwt8 has joined #ocaml
shekmalhen has quit ["reboot"]
shekmalhen has joined #ocaml
malc_ has joined #ocaml
jeffs has left #ocaml []
the_dormant has joined #ocaml
the_dormant_ has quit [Connection timed out]
<tsuyoshi> I wish ocaml would coerce objects to subtypes for me
<tsuyoshi> this is definitely the most annoying thing about the language
pantsd has joined #ocaml
the_dormant has quit ["Au revoir"]
smimou has quit ["bli"]
<lucca> hm, no
<lucca> Not_found
<lucca> at least in 3.09 and below
<bluestorm_> ?
<lucca> heh, answering tsuyoshi, referring to getting a stray exception with no backtrace
mnemonic has quit ["leaving"]
lucca has quit ["-"]
bluestorm_ has quit ["Konversation terminated!"]
jao has joined #ocaml