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
<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"]