gildor changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 3.12.1 http://bit.ly/nNVIVH
moneo has joined #ocaml
moneo has quit [Quit: moneo]
moneq has joined #ocaml
moneq has quit [Remote host closed the connection]
ulfdoz_ has joined #ocaml
ulfdoz has quit [Ping timeout: 244 seconds]
ulfdoz_ is now known as ulfdoz
asdfhjkl has quit [Quit: Leaving]
<mrvn> extunix leaves tempfiles in /tmp it seems
<mrvn> camlppd9a284 camlstartup5e3ae3.s camlobj7c1bce.c cc5tdDHM.err ccAeiRvf.out extunix44dd70pread
jamii has quit [Ping timeout: 245 seconds]
testcocoon has quit [Remote host closed the connection]
testcocoon has joined #ocaml
oriba has joined #ocaml
fantasticsid has joined #ocaml
oriba has quit [Quit: oriba]
testcocoon has quit [Remote host closed the connection]
testcocoon has joined #ocaml
emmanuelux has quit [Read error: No route to host]
emmanuelux has joined #ocaml
emmanuelux has quit [Remote host closed the connection]
wtetzner has joined #ocaml
cdidd has quit [Remote host closed the connection]
Tobu has joined #ocaml
iago has quit [Quit: Leaving]
Tobu has quit [Ping timeout: 272 seconds]
Tobu has joined #ocaml
Tobu has quit [Ping timeout: 260 seconds]
sivoais has joined #ocaml
andreypo_ has joined #ocaml
datkin has quit [Ping timeout: 248 seconds]
asdfhjkl has joined #ocaml
jimmyrcom has quit [Ping timeout: 260 seconds]
<pippijn> I found my first use for polymorphic variants
<pippijn> and it's a good use, I think
<pippijn> I use it for AST annotations
<pippijn> not all AST nodes can have the same annotations
<pippijn> but I want generic functions for retrieving and setting certain annotations
Tobu has joined #ocaml
Tobu has quit [Ping timeout: 272 seconds]
ezyang has quit [Remote host closed the connection]
asdfhjkl has quit [Quit: Leaving]
Tobu has joined #ocaml
Snark has joined #ocaml
Cyanure has joined #ocaml
Zedrikov has joined #ocaml
avsm has quit [Quit: Leaving.]
<adrien> ohloh doesn't really enjoy when stuff is in SVN I guess
<adrien> (or any non-distributed VCS)
emmanuelux has joined #ocaml
jamii has joined #ocaml
Tobu has quit [Remote host closed the connection]
Tobu has joined #ocaml
jamii has quit [Ping timeout: 252 seconds]
<adrien> (it has downloaded 130 commits out of 5450 in that SVN repo since I mentionned it; that's 260 per hour, it'll take 20 hours to complete)
fschwidom has joined #ocaml
<mfp> hmm no subtyping for fst class modules? module type S = sig val f : int end module type T = sig include S val g : int end .... Error: Type (module T) is not a subtype of (module S)
<mfp> of course there's a pb once you have mutable fields or functions operating on abstract types (normal values would be covariant, funcs contravariant in their args, mutable values invariant)
<mfp> the roundabout way w/ structural polymorphism is OK though
Xizor has joined #ocaml
jamii has joined #ocaml
avsm has joined #ocaml
Tobu has quit [Quit: No Ping reply in 180 seconds.]
Tobu has joined #ocaml
jamii has quit [Ping timeout: 246 seconds]
Kakadu has joined #ocaml
Tobu has quit [Ping timeout: 272 seconds]
Cyanure has quit [Ping timeout: 245 seconds]
Tobu has joined #ocaml
fantasticsid has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
avsm has quit [Quit: Leaving.]
milosn has quit [Ping timeout: 245 seconds]
err404 has joined #ocaml
avsm has joined #ocaml
Zedrikov has quit [Ping timeout: 264 seconds]
skchrko has joined #ocaml
Cyanure has joined #ocaml
avsm has quit [Quit: Leaving.]
avsm has joined #ocaml
Tobu has quit [Ping timeout: 260 seconds]
<Lor> Gah. Why does the range of ints have to be architecture-dependent?
<Lor> I can't see it buying anything, and it's a huge mess for portability.
<adrien> use Int64, Int32
<Lor> They are heap-allocated.
<adrien> as for C ints, if only it were only architecture dependent
<Lor> No, I mean ocaml ints.
<adrien> ocaml ints are not even 32 or 64 bits which are commonly-needed sizes
<adrien> if you want some size, use int64 and in32
<Lor> No, it's less essential what the range is. But for a given language, it should be constant.
<Lor> Because now few programs that uses ints behave truly deterministically (i.e. produce the same output for the same input everywhere).
<Lor> And it doesn't buy anything.
<Lor> If you want your program to be portable across architectures, you cannot allow your ints to go over the 31-bit range anyway.
<Lor> And if you know you are going to be running mostly on 64 bit platforms and need the extra range, what's the harm in having then a dedicated 63-bit int type?
<adrien> it's faster
<adrien> ocaml absolutely never does anything "automatically"
<adrien> well, it has a GC but what it does is give you all the tools
<adrien> and you do what you want with them
<Lor> No, this wouldn't affect performance at all.
<adrien> 63bit ints on 32bit? it would
<adrien> have to go now
<Lor> Whoah?
<Lor> Int64 is _already_ slower on 32-bit platforms.
<adrien> int64 is doubly slower on 32bit machines because it requires an extra allocation
<adrien> too
<adrien> (bbl)
Tobu has joined #ocaml
fschwidom has quit [Remote host closed the connection]
avsm has quit [Quit: Leaving.]
avsm has joined #ocaml
Tobu has quit [Ping timeout: 260 seconds]
skchrko has quit [Quit: ChatZilla 0.9.88.1 [Firefox 11.0/20120314111819]]
avsm has quit [Quit: Leaving.]
iago has joined #ocaml
cdidd has joined #ocaml
asdfhjkl has joined #ocaml
ASau has joined #ocaml
Zedrikov has joined #ocaml
Tobu has joined #ocaml
datkin has joined #ocaml
avsm has joined #ocaml
milosn has joined #ocaml
robin_ has joined #ocaml
<robin_> hello i have a problem for use ocamlsdl (Error: Unbound module Sdlevent) ??
skchrko has joined #ocaml
lorilan has joined #ocaml
datkin has quit [Remote host closed the connection]
datkin has joined #ocaml
Tobu has quit [Ping timeout: 272 seconds]
Kakadu has quit [Read error: Connection reset by peer]
<adrien> robin_: how do you compile?
Submarine has quit [Quit: Leaving]
<robin_> with a makefile
<adrien> can you pastebin its content?
<adrien> I think you're simply missing "sdlevent" in the LIBS entry of your makefile
Ulrar has left #ocaml []
<robin_> how that's work ?
<adrien> LIBS            = bigarray sdl sdlloader sdlttf sdlmixer sdlevent
<adrien> like that
<robin_> i have try that
<robin_> that dosn't work
Tobu has joined #ocaml
err404 has quit [Remote host closed the connection]
<adrien> do you get the same error?
<robin_> in the doc i don't usesdlevent in the makefile http://wiki.njh.eu/OCaml_and_SDL
<adrien> but you get an error message?
<robin_> i get the same error
<adrien> what is the full error message?
emmanuelux has quit [Remote host closed the connection]
<robin_> the full error http://pastebin.com/tQbawc3X
<adrien> oh...
<adrien> you've downloaded ocamlmakefile?
<robin_> yes
emmanuelux has joined #ocaml
<adrien> the previous code listed on the wiki page worked?
Zedrikov is now known as Sedrikov
<mrvn> robin_: Don't forget that the order of arguments matter
<mrvn> sdlevent must be before anything using it
skchrko has quit [Quit: ChatZilla 0.9.88.1 [Firefox 11.0/20120314111819]]
jimmyrcom has joined #ocaml
fraggle_ has quit [Remote host closed the connection]
Tobu has quit [Ping timeout: 260 seconds]
Xizor has quit []
emmanuelux has quit [Read error: Connection reset by peer]
avsm has quit [Read error: Connection reset by peer]
avsm has joined #ocaml
<robin_> ok
<Drakken> What's the simplest way to parse an L-attributed grammar?
<robin_> ls
<robin_> ls
<robin_> ll
<Drakken> preferably in ocaml
<Drakken> actually, I mean _in_ocaml_, no matter what. I would rather write a parser by hand than use another language.
<mrvn> lex/yacc usualy works
skchrko has joined #ocaml
ulfdoz has quit [Ping timeout: 244 seconds]
fraggle_ has joined #ocaml
<robin_> how include a lib in ocaml makefile ???
albacker has joined #ocaml
<pippijn> ???!!!
<pippijn> ???????????????????????
<pippijn> why are you using so many questionmarks???????????????????????
<thelema_> robin_: ocamlfind library?
<robin_> how that's word ?
<robin_> but i have a problem for include sdl
<pippijn> adrien: are you the slackware adrien?
<adrien> no, I'm the #caravel one
<tomprince> ?!!! ! ?!?! !? !!? !!! !
<pippijn> ah
<pippijn> very well
milosn has quit [Read error: Connection reset by peer]
milosn has joined #ocaml
Sedrikov has quit [Quit: Bye all, see you next time!]
robin_ has quit [Quit: Lost terminal]
<Juzor> mrvn: here ?
Juzor is now known as JuzorBNC
Tobu has joined #ocaml
tamouse__ has joined #ocaml
<tamouse__> hi
<tamouse__> what kinds of things is ocaml suited for? i just found out about it, and while it looks interesting, i'm wondering how i would apply it
yroeht has quit [Ping timeout: 252 seconds]
yroeht has joined #ocaml
Tobu has quit [Ping timeout: 260 seconds]
<adrien> particularly suited: compilers, parsing, and actually everything; it definitely doesn't eat memory, is pretty fast, and safe and stable
<mrvn> fast prototyping
<mrvn> (and then you notice the prototype is good enough)
Tobu has joined #ocaml
<tamouse__> nodnod
<tamouse__> good stuff
<mrvn> Tons of floating point operations are bad for ocaml and multi core algorithms are tricky too
<mrvn> But ocaml is really good for fun.
<tamouse__> :)
<tamouse__> i like that!
<mrvn> tamouse__: I have a filesystem written in ocaml, a raid implementation, network block device server, working on a distributed raid.
<mrvn> One thing that I also think is realy great is that you can't have acidental buffer overflows or segfaults in ocaml (though you can have them in C code you link in).
<mrvn> security wise a great bonus
<tamouse__> nod
<mrvn> One thing that can be taken both good and bad is that with ocaml you get what you write. The compiler doesn't magically optimize stuff away. Good think is that it doesn't break stuff by optimizing and keeps the compiler simpler and error free. Bad is that bad code runs slow.
andreypo_ has quit [Quit: Quit]
JuzorBNC is now known as Juzor
<tamouse__> ok
<tamouse__> given that i have quite a bit of experience in languages like perl, php, ruby, c and so forth, where would be a good place to start learning ocaml and it's idioms?
<mrvn> at the start. :)
<thelema_> tamouse__: same as any - try using it for something.
<tamouse__> well, okay, but where is that? :)
<thelema_> tamouse__: windows or linux?
<tamouse__> linux/osx
<mrvn> file:///usr/share/doc/ocaml/docs/ocaml.html/index.html
<mrvn> The user manual can be a quick introduction. otherwise look for an ocaml book.
<tamouse__> i'm guessing o'reilly has one
<thelema_> tamouse__: for a quick intro, try going through chapter 1 of the manual with the toplevel (ocaml repl)
<tamouse__> ok
djcoin has joined #ocaml
tauntaun has joined #ocaml
<tamouse__> this is reminding me just a bit of haskell, which i don't know but have only skimmed
<mrvn> but haskell isn't fun
<tamouse__> heehee
<tamouse__> i know people who would disagree with that :)
<mrvn> let is_fun = function `Ocaml -> true | 'Haskell -> false
<thelema_> tamouse__: both ocaml and haskell have similar type-system roots
<tamouse__> i'm also reminded just a bit of lisp -- is there any coincidence that there are a lot of recursive examples?
<tamouse__> this is pretty cool :)
<mrvn> tamouse__: it is a functional language, recursion is pretty critical
<tamouse__> is it?
<tamouse__> like ocaml is a funcitonal language, c/perl/etc are procedural, ruby/java are object-oriented?
<tamouse__> one question here: if you're writing an ocaml program, what is the commmon file extension?
<mrvn> .ml
fschwidom has joined #ocaml
<mrvn> use ternary numbers.
<mrvn> ups
<thelema_> tamouse__: .ml for code, .mli for interface
ocamlme has joined #ocaml
ocmal_guest_007 has joined #ocaml
<tamouse__> ok, thanks
gloopershadow has joined #ocaml
nikiy has joined #ocaml
<ocamlme> hello
<thelema_> hello
<nikiy> hello!
<ocamlme> hello
<nikiy> I'm
zorun has quit [Ping timeout: 244 seconds]
dgfitch has joined #ocaml
<tauntaun> PRIVMSG tauntaun hello, there!
<ocmal_guest_007> A
<nikiy> Mike
<ocmal_guest_007> Hello
ocmal_guest_007 has quit [Remote host closed the connection]
err404 has joined #ocaml
agarwal1975 has joined #ocaml
gloopershadow has quit [Remote host closed the connection]
tauntaun has left #ocaml []
nikiy has quit [Remote host closed the connection]
agarwal1977 has joined #ocaml
<agarwal1977> Hi, we just wrote an IRC client in OCaml at NYU.
moe_ocaml has joined #ocaml
<thelema_> agarwal1977: ah, that would explain all the NYU users
ocamlme has quit [Quit: ocamlme]
moe_ocaml has quit [Client Quit]
casketoflilies has joined #ocaml
<agarwal1977> Yes, it was 20 lines of ocaml!
pierre123 has joined #ocaml
<casketoflilies> it was fun class
<casketoflilies> *a
<pierre123> hi everyone
<thelema_> agarwal1977: libraries?
<casketoflilies> hi pierre
<tamouse__> thanks, everyone!
<tamouse__> i'll probably be back :)
<mrvn> Now do something usefull and write an NTP client
flengyel has joined #ocaml
<mrvn> Juzor: just name it dpl
<mrvn> ups
<adrien> actually, we need a bot with a couple basic things
<adrien> (mostly FAQ answers)
<adrien> s/need/could use/
<tamouse__> that would be fun
<mrvn> we had one, one that even could run simple ocaml code
<mrvn> !let a = 1;;
<tamouse__> i'm installing a few ocaml modules from macports
<agarwal1975> thelema_: no libraries. it was just for beginners to get started with ocaml.
avsm has quit [Read error: Connection reset by peer]
<flengyel> test
<adrien> mrvn: xavier bot is perl however ;-)
flengyel has quit [Remote host closed the connection]
<pierre123>
<pierre123>
flengyel has joined #ocaml
albacker has quit [Ping timeout: 265 seconds]
<pierre123> QUIT
pierre123 has quit [Quit: pierre123]
flengyel has quit [Remote host closed the connection]
<casketoflilies> exit
casketoflilies has quit [Quit: leaving]
zorun has joined #ocaml
Smerdyakov has joined #ocaml
Tobu has quit [Ping timeout: 272 seconds]
agarwal1977 has quit [Remote host closed the connection]
agarwal1975 has quit [Quit: agarwal1975]
Tobu has joined #ocaml
zorun has quit [Ping timeout: 265 seconds]
avsm has joined #ocaml
zorun has joined #ocaml
skchrko has quit [Ping timeout: 246 seconds]
Kikaxa has joined #ocaml
mort___ has joined #ocaml
skchrko has joined #ocaml
zorun has quit [Quit: leaving]
fschwidom has quit [Remote host closed the connection]
Juzor is now known as JuzorBNC
andreypo_ has joined #ocaml
Snark has quit [Quit: Quitte]
mort___ has quit [Quit: Leaving.]
JuzorBNC is now known as Juzor
Kikaxa has quit []
Cyanure has quit [Remote host closed the connection]
Xizor has joined #ocaml
Smerdyakov has quit [Quit: Leaving]
jamii has joined #ocaml
Juzor is now known as JuzorBNC
rks has quit [Ping timeout: 260 seconds]
pou has quit [Ping timeout: 260 seconds]
jamii has quit [Ping timeout: 244 seconds]
snearch has joined #ocaml
mort___ has joined #ocaml
err404 has quit [Remote host closed the connection]
rks has joined #ocaml
pou has joined #ocaml
albacker has joined #ocaml
albacker has quit [Changing host]
albacker has joined #ocaml
skchrko has quit [Quit: ChatZilla 0.9.88.1 [Firefox 11.0/20120314111819]]
snearch has quit [Quit: Verlassend]
asdfhjkl has quit [Quit: Leaving]
emmanuelux has joined #ocaml
mort___ has left #ocaml []
albacker has quit [Ping timeout: 248 seconds]
tufisi has quit [Ping timeout: 244 seconds]
djcoin has quit [Quit: WeeChat 0.3.2]
Xizor has quit []
ftrvxmtrx has quit [Quit: Leaving]
ftrvxmtrx has joined #ocaml
lorilan has quit [Quit: Quitte]
emmanuelux has quit [Ping timeout: 260 seconds]
iago has quit [Quit: Leaving]