dylan changed the topic of #ocaml to: OCaml 3.09.1 available! Archive of Caml Weekly News: http://sardes.inrialpes.fr/~aschmitt/cwn/ | A free book: http://cristal.inria.fr/~remy/cours/appsem/ | Mailing List: http://caml.inria.fr/bin/wilma/caml-list/ | Cookbook: http://pleac.sourceforge.net/
smimou has quit ["bli"]
_fab has quit [Remote closed the connection]
rillig has joined #ocaml
rillig has quit [Client Quit]
lispy is now known as el_diablo
el_diablo is now known as lispy
Thas has left #ocaml []
vodka-goo has quit ["Connection reset by by pear"]
malc_ has quit ["leaving"]
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
rillig_ has quit ["exit(EXIT_SUCCESS)"]
TaXules has quit [Read error: 104 (Connection reset by peer)]
Smerdyakov has quit ["Leaving"]
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
desp has joined #ocaml
__DL__ has joined #ocaml
ramki has joined #ocaml
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
ramkrsna has quit [Connection timed out]
Raziel has quit [Read error: 104 (Connection reset by peer)]
Raziel has joined #ocaml
Raziel has quit [Read error: 104 (Connection reset by peer)]
raziel_ has joined #ocaml
raziel_ is now known as RazZziel
RazZziel is now known as Raziel
ramki is now known as ramkrsna
Nutssh has joined #ocaml
Nutssh has quit ["Client exiting"]
ski has joined #ocaml
ski has quit [Nick collision from services.]
ski_ has joined #ocaml
khaladan has quit [Read error: 110 (Connection timed out)]
ski_ is now known as ski
Skal has joined #ocaml
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
_DL_ has joined #ocaml
__DL__ has quit [Read error: 110 (Connection timed out)]
desp has left #ocaml []
llama32 has joined #ocaml
<llama32> how does ocaml compare to normal C/C++ in run speed? are there benchmarks available?
vodka-goo has joined #ocaml
<llama32> holy fuck it's fast :o
<llama32> sweet
<llama32> i was hoping it'd be at least 70% as fast as C++ :)
vezenchio has quit ["\\o sora wa hate shinai, kokoro no kagami dakara ne \o/ mainichi iro wo kaeteku utsushidasu you ni o//"]
slipstream has joined #ocaml
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
_DL_ has quit [Remote closed the connection]
m3ga has joined #ocaml
zmdkrbou has quit [Read error: 113 (No route to host)]
zmdkrbou has joined #ocaml
rillig has joined #ocaml
zak_ has joined #ocaml
llama32 has quit [Read error: 104 (Connection reset by peer)]
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
Demitar has quit ["Bubbles..."]
m3ga has quit ["disappearing into the sunset"]
ramki has joined #ocaml
zak_ has quit ["Leaving"]
ramkrsna has quit [Read error: 110 (Connection timed out)]
Yorick has joined #ocaml
ramki has quit [Read error: 110 (Connection timed out)]
cmeme has quit [Remote closed the connection]
cmeme has joined #ocaml
Smerdyakov has joined #ocaml
Revision17 has joined #ocaml
zigong has joined #ocaml
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
vezenchio has joined #ocaml
rossberg has quit [Remote closed the connection]
toyz has joined #ocaml
<toyz> does ocaml have the ability to run off compile /byte code as opposed to a source file?
<vodka-goo> If I understood your question, yes, and that's the main use
<vodka-goo> ocaml is mainly a compiler (to byte or native code), although it can be used interactively or for scripting as an extra
<Smerdyakov> toyz, are you asking about compiling bytecode to native code?
<dylan> That makes one wonder, is ocaml's bytecode an intermediate between native code?
<toyz> oh ok, I heard that ocaml can do both , is that the only language that can do that?
<toyz> from looking around, ocaml seems to be the only dynamic language that can run interpreted and compiled
<Smerdyakov> OCaml is a "dynamic language"?
<dylan> toyz: Do you mean garbage-collected?
<Smerdyakov> Usual definitions of "dynamic language" would mark OCaml as one of the least dynamic languages with any significant user base.
<toyz> oh, I guess I read wrong, I was reading genereal overviews of langauges
<dylan> toyz: from where?
<toyz> is there something dynamic like ruby that is can also be compiled ?
<Smerdyakov> toyz, well, what do you mean by "dynamic"? Perhaps you have a non-standard definition that OCaml satisfies.
<Yorick> toyz: The interesting part isn't whether a language is "dynamic", but whether it can fill your needs.
<Yorick> toyz: What do you need?
<toyz> I'm just interested about learning aobut languages that can do both compiled ans source
<Smerdyakov> toyz, that's any language.
<Yorick> toyz: I don't understand what you mean, but many (most!) languages probably fit that criterion.
<toyz> like ruby and perl is all source, ou give them a source file and they run it
<toyz> as opposed to c, you give a binary and they run it
<toyz> or java
<dylan> toyz: There is a compiler for perl, in a manner of speaking...
<Yorick> toyz: There are C interpreters, you know.
<toyz> I didn't know that
<toyz> are they stable and can be used in production?
<Yorick> Yes, and they are sometimes used for their greater ease of debugging.
<dylan> interpreted C is about the worst thing I can imagine...
<toyz> yes, it seems horrible for interpreted C
<toyz> python seems to be able to compile to a binary
<dylan> just about anything can.
<dylan> weather or not it is efficient, that's another matter.
<Yorick> dylan: It's quite useful, and can find errors that nothing else can. Think of the expression (*p)++ + (*q)++
<Smerdyakov> toyz, can you please tell us your more fundamental needs for the project(s) you want to apply this to?
<dylan> Yorick: Yikes.
<toyz> Smerdyakov: I am just learning
<Smerdyakov> toyz, OK. I suggest at least reading the OCaml tutorial before deciding that only "dynamic languages" can meet your needs.
<Yorick> dylan: There are other cases where only careful runtime checking can verify all the C rules. A C interpreter can often do this better than the usual compiler + hacky low-level tool such as purify, insure++ or valgrind.
<Smerdyakov> Yorick, scrap your careful runtime checking by switching to Cyclone. :-)
<toyz> I am spending time learning different kinds of languages
<Smerdyakov> toyz, OK. I just mean to warn you against choosing those languages based on an inaccurate roadmap of the programming language world.
gim has quit [Remote closed the connection]
<toyz> KrispyKringle: macs suck
vodka-goo has quit ["Leaving"]
gim has joined #ocaml
<dylan> toyz: What.. brought on that outburst?
<dylan> Yorick: Heh. I ought to try running irssi under a C interpreter.
<Yorick> dylan: it would catch most buffer overruns, anyway :)
* dylan is considering making something that looks like irssi in ocaml.
zigong has quit ["using sirc version 2.211+KSIRC/1.3.12"]
<flux__> dylan, I have an incomplete tree on irssi-ocaml, a module for writing ocaml modules for irssi
<flux__> but it still has ways to go before being useful..
toyz has quit ["This computer has gone to sleep"]
<flux__> dylan, nowadays irssi author cras is interested in icecap, 'the next generation' of irssi
<dylan> flux__: My main reason is to be able to extend irssi for other protocols (without bitlbee). I also think an ocaml irc client would be interesting. :)
<dylan> flux__: I'll take a look at icecap.
toyz has joined #ocaml
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
__DL__ has joined #ocaml
mattam has quit [Remote closed the connection]
Skal has quit [Read error: 110 (Connection timed out)]
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
vodka-goo has joined #ocaml
Banana has joined #ocaml
Banana has quit [Client Quit]
gim has quit []
HPSB has joined #ocaml
HPSB is now known as TaXules
ppsmimou has quit ["Leaving"]
khaladan has joined #ocaml
Bigb[a]ng is now known as Bigbang
smimou has joined #ocaml
__DL__ has quit ["Bye Bye"]
<KrispyKringle> toyz: huh?
<toyz> KrispyKringle: I see you in macosx all the time, jsut being a wise ass
<vincenz> anyone want to read something funny?
<Yorick> vincenz: Which is the funny part?
<vincenz> the fact he's comparing OCaml to Objective Caml
<Yorick> I didn't get that impression - I thought he only meant his version versus somebody else's.
<vincenz> he's "ported" Jon Harop's version to Objective Caml
<Yorick> Ah, you are right - he refers to them as different language in the prose a bit further down.
<Yorick> I don't know how he could have misunderstood that. Send him a friendly mail!
<vincenz> yeah
<vincenz> good idea
<vincenz> it's even funnier in the figure where he shows the compile statement
<vincenz> check it out
<Yorick> Or it could be some kind of irony that I don't fully understand.
<vincenz> ocamlopt -inline 100 -ffast-math ray.ml -o bench.ocaml
<vincenz> ocamlopt.opt -ffast-math -inline 100 ray-tf.ml -o bench.objective-caml
<vincenz> :P
<vincenz> emailed him
<KrispyKringle> I'm confused. He "ported" it by using array instead of a custom vector type?
* vincenz shrugs
<vincenz> he seems to be under the impression they're different languages
<KrispyKringle> Quite clearly, OCaml and Objective Caml are very similar languages - the code is indeed mostly the same. The reason for this could be that Objective Caml, as a multiparadigm laguage combining various different approaches, might have been inspired quite heavily in particular by OCaml.
<KrispyKringle> Holy shit.
<KrispyKringle> Astounding.
<vincenz> yeah
<vincenz> I sent him an email
<vincenz> OCaml is just short for Objective Cam
<vincenz> ..l
<Yorick> It might be a highly contrived attempt of irony.
<vincenz> would like to say that I have looked at your page concerning the comparison of OCaml and Objective Caml. I hope this was a parody. If this is not the case, I should note you that OCaml and Objective Caml are one and the same language and the same implementation.
<vincenz> ocamlopt = byte code compiled version of the native code compiler
<vincenz> ocamlopt.opt = native code compiled version of the native code compiler
<vincenz> that's what I sent him
<KrispyKringle> I wonder if this is a joke.
<KrispyKringle> Yah, I agree with Yorick.
<vincenz> it's hardly funny however
<KrispyKringle> Haha.
<KrispyKringle> I think it's pretty hilarious.
<KrispyKringle> Yah, he has a comment there from Yaron Minksy, who's a big OCaml nut.
<KrispyKringle> Clearly this is a joke.
<vincenz> damn
<vincenz> and I sent him an email
<KrispyKringle> hahaha
<vincenz> who is Yaron Minsky
<KrispyKringle> A Cornell PhD who works at a small hedge fund in NYC.
<vincenz> shit
<KrispyKringle> haha
<KrispyKringle> They're exclusively OCaml.
<vincenz> "advanced tauroscatology"
<KrispyKringle> They advertise for jobs ocasionally on the caml list.
<vincenz> KrispyKringle: where do you se the ref to yaron minsky
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
<vincenz> ah
<vincenz> nm, never scrolled down that far
<KrispyKringle> Hahaa
<KrispyKringle> I just extended my analysis by another implementation in yet another
<KrispyKringle> language. This time, it's "Steel Bank Common Lisp". As this is a Lisp as
<KrispyKringle> well, I will be concerned primarily with comparing it against SBCL, but it
<KrispyKringle> may also be nice to compare it with OCaml, or Objective Caml.
<Yorick> I missed that. Quite funny.
<vincenz> darn
* vincenz shoots himself in the foot
<Yorick> vincenz: Laugh at me instead - I told you to send a mail.
<vincenz> Yorick: yeah
<vincenz> oh well
<vincenz> it's friday
<vincenz> I could always claim that my mail was a irony at one level higher of abstraction
<KrispyKringle> Hahah.
<KrispyKringle> Naw.
<KrispyKringle> Not easily.
<vincenz> s/ a ///
<KrispyKringle> I should send him a log of this conversation ;)
<Yorick> You can get your revenge. Make another version in "O'Caml" which is faster than both :)
<vincenz> Yorick: easy
<vincenz> Yorick: I could make a new metric of image quality
<vincenz> then say I disregard that metric
<vincenz> and basically have my .ml be ""
<vincenz> anyone an avid c.l.f reader
<Yorick> I was serious. Don't you think it would be easy to make it faster?
<vincenz> not sure the orig impl was by jon harop
<Yorick> Given the crap code generated by ocamlopt, it's just a matter of fixing the compiler.
<vincenz> anyways, anyone a c.l.f reader
<vincenz> ?
gim has joined #ocaml
<dylan> ocamlopt generates crap code?
<Yorick> dylan: Well, have you ever read its output?
<dylan> only for simple things..
<vincenz> Yorick: you have to type constrain your variables
<Yorick> It's usually a factor 2 or worse off compared even to gcc, which is usually not the state of the art.
<Yorick> I'm not particularly good at ocaml, but I would be if I got to use it more, which I would if it was faster. Chicken or egg.
<vincenz> haha
<vincenz> please
<vincenz> ocaml is really fast
<vincenz> I switched from other languages to ocaml to implement mytools
<Yorick> No, it's not. It's very nice in other ways, so I still like it.
<vincenz> cause of the speed
<dylan> well, it is usually faster than python/perl/ruby, da?
<Yorick> I do have greater demands than that :)
<Yorick> or standards, even.
<dylan> with the added restriction of "must not be C", it's the only thing I've found to be suitable.
<KrispyKringle> I agree with dylan.
<KrispyKringle> Though I actually have been doing a shitload of Python lately.
<KrispyKringle> I don't really mind the speed penalty, and for speed intensive bits I can always do native C modules.
<vincenz> Yorick: if you're writing tools, c is just plain too slow to code in
<KrispyKringle> And so the only complaint I'd have would be dynamic typing, which is in fact a huge boon to speed of implementation.
<Yorick> vincenz: It depends, but mostly true.
<Yorick> need to go.
Yorick has quit ["nu fåre va nog"]
rillig_ has joined #ocaml
rillig has quit [Read error: 110 (Connection timed out)]
rillig_ is now known as rillig
pango has quit ["Leaving"]
pango has joined #ocaml
batdog has joined #ocaml
gim has quit ["bininuit"]
Revision17 has quit [Read error: 110 (Connection timed out)]
Revision17 has joined #ocaml
vezenchio has quit ["\\o sora wa hate shinai, kokoro no kagami dakara ne \o/ mainichi iro wo kaeteku utsushidasu you ni o//"]
malc_ has joined #ocaml
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
khaladan_ has joined #ocaml
khaladan has quit [Connection timed out]
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
Yorick has joined #ocaml
Submarine has joined #ocaml
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
Bigbang is now known as Bigb[a]ng
Oatmeat|cs has joined #ocaml
Oatmeat|cs has quit [Read error: 104 (Connection reset by peer)]
Oatmeat|cs has joined #ocaml
Oatmeat|umn has quit [Read error: 110 (Connection timed out)]
toyz has quit ["This computer has gone to sleep"]
Yorick has quit ["Leaving"]
mauke has quit [Remote closed the connection]
mauke has joined #ocaml
toyz has joined #ocaml
toyz has quit ["This computer has gone to sleep"]
rillig has quit ["exit(EXIT_SUCCESS)"]
vodka-goo has quit ["Connection reset by by pear"]