ChanServ changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | http://www.ocaml.org | OCaml 4.01.0 announce at http://bit.ly/1851A3R | Logs at http://irclog.whitequark.org/ocaml
enquora has quit [Quit: enquora]
philtor_ has joined #ocaml
cody__ has quit [Remote host closed the connection]
jao has quit [Ping timeout: 240 seconds]
enquora has joined #ocaml
NoNNaN has quit [Remote host closed the connection]
NoNNaN has joined #ocaml
thomasga has quit [Quit: Leaving.]
Sizur has quit [Read error: Connection reset by peer]
jwatzman|work has quit [Quit: jwatzman|work]
cite-reader has quit [Quit: leaving]
philtor_ has quit [Ping timeout: 240 seconds]
fold has joined #ocaml
troutwine is now known as troutwine_away
samrat has joined #ocaml
rgrinberg has quit [Quit: Leaving.]
q66 has quit [Quit: Leaving]
BitPuffin has quit [Ping timeout: 255 seconds]
englishm has joined #ocaml
WraithM has quit [Ping timeout: 246 seconds]
avsm has quit [Quit: Leaving.]
cespinoza has quit [Ping timeout: 260 seconds]
WraithM has joined #ocaml
shinnya has joined #ocaml
cespinoza has joined #ocaml
<Denommus> is there a way of interactively loading a source file?
<Denommus> found out
WraithM has quit [Ping timeout: 244 seconds]
emmanueloga_ is now known as emmanueloga
shinnya has quit [Ping timeout: 245 seconds]
wemeetagain has joined #ocaml
ygrek has joined #ocaml
enquora has quit [Quit: enquora]
<Denommus> is there anything like Haskell's const?
englishm has quit [Remote host closed the connection]
englishm has joined #ocaml
englishm has quit [Remote host closed the connection]
englishm has joined #ocaml
<pyon> Denommus: At least not in the Pervasives module.
<Denommus> pyon: it seems lots of stuff are on batteries
<pyon> Denommus: I just installed OPAM a while ago. Can I install batteries from there?
<Denommus> pyon: yes. Then you can put it in your BuildDepends section for your oasis project
<Denommus> pyon: ah, I also recommend you to switch to ocaml 4.02, because of ppx
<pyon> Denommus: What's that?
<Denommus> pyon: sedlex needs it to work, and sedlex is more convenient than ocamllex
<pyon> Ah!
ygrek has quit [Ping timeout: 250 seconds]
<Denommus> pyon: it's something to manipulate the AST, fitting the same purpose of template Haskell or Lisp's macros, if I understand it right
<pyon> Ah... A blog post says it is a camlp4 replacement.
<Denommus> pyon: you can switch versions from opam itself
<pyon> If I install it, can I then remove the original OCaml version I had installed (4.01.0) ?
<Denommus> pyon: no idea
<pyon> Mmm... Just wondering. Does OPAM install package documentation alongside binaries?
bytbox has quit [Read error: Connection reset by peer]
bytbox has joined #ocaml
ygrek has joined #ocaml
troutwine_away is now known as troutwine
cespinoza has quit [Ping timeout: 255 seconds]
cespinoza has joined #ocaml
troutwine is now known as troutwine_away
yacks has quit [Ping timeout: 250 seconds]
claudiuc has quit [Remote host closed the connection]
yacks has joined #ocaml
NoNNaN has quit [Ping timeout: 264 seconds]
NoNNaN has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
WraithM has joined #ocaml
WraithM has quit [Ping timeout: 260 seconds]
ivan\ has quit [Ping timeout: 245 seconds]
omqal has joined #ocaml
samrat has joined #ocaml
koderok has joined #ocaml
koderok has quit [Client Quit]
axiles has joined #ocaml
ggole has joined #ocaml
MercurialAlchemi has joined #ocaml
hhugo has joined #ocaml
englishm has quit [Remote host closed the connection]
englishm has joined #ocaml
cespinoza has quit [Ping timeout: 240 seconds]
cespinoza has joined #ocaml
pyon has quit [Quit: Fiat justitia ruat caelum.]
ttm has quit [Ping timeout: 240 seconds]
dubst3pp4 has joined #ocaml
Nahra has quit [Ping timeout: 246 seconds]
dubst3pp4 has quit [Quit: Ĝis la revido!]
englishm has quit [Remote host closed the connection]
englishm has joined #ocaml
milosn has quit [Remote host closed the connection]
englishm has quit [Ping timeout: 250 seconds]
dubst3pp4 has joined #ocaml
ygrek has quit [Ping timeout: 240 seconds]
omqal has quit [Quit: omqal]
maattdd has joined #ocaml
WraithM has joined #ocaml
thorsten` has joined #ocaml
cespinoza has quit [Ping timeout: 240 seconds]
paddymahoney has joined #ocaml
thorsten` has quit [Client Quit]
thorsten` has joined #ocaml
cago has joined #ocaml
cespinoza has joined #ocaml
The_third_man has joined #ocaml
BitPuffin has joined #ocaml
ygrek has joined #ocaml
maattdd has quit [Ping timeout: 245 seconds]
pyon has joined #ocaml
thorsten` has quit [Quit: WeeChat 0.4.1]
thorsten` has joined #ocaml
cdidd has joined #ocaml
WraithM has quit [Ping timeout: 260 seconds]
hhugo has quit [Quit: Leaving.]
thomasga has joined #ocaml
bezirg has joined #ocaml
dav has joined #ocaml
dav has quit [Ping timeout: 240 seconds]
Nahra has joined #ocaml
avsm has joined #ocaml
AltGr has joined #ocaml
tane has joined #ocaml
pyon has quit [Quit: Fiat justitia ruat caelum.]
rand000 has joined #ocaml
demonimin has quit [Remote host closed the connection]
demonimin has joined #ocaml
mort___ has joined #ocaml
pyon has joined #ocaml
Kakadu has joined #ocaml
paddymahoney has quit [Ping timeout: 245 seconds]
menace has joined #ocaml
pyon has quit [Quit: Fiat justitia ruat caelum.]
thomasga has quit [Quit: Leaving.]
thomasga has joined #ocaml
pyon has joined #ocaml
eikke__ has joined #ocaml
eikke__ has quit [Ping timeout: 250 seconds]
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
zpe has quit [Ping timeout: 260 seconds]
thomasga has quit [Quit: Leaving.]
milosn has joined #ocaml
mort___ has quit [Quit: Leaving.]
mort___ has joined #ocaml
thomasga has joined #ocaml
[mark] has joined #ocaml
[mark] has joined #ocaml
[mark] has left #ocaml [#ocaml]
dsheets__ has joined #ocaml
keen________ has joined #ocaml
keen_______ has quit [Ping timeout: 260 seconds]
Kakadu has quit []
Kakadu has joined #ocaml
hhugo has joined #ocaml
_andre has joined #ocaml
avsm has quit [Quit: Leaving.]
mort___ has quit [Quit: Leaving.]
mort___ has joined #ocaml
mort___ has quit [Client Quit]
zpe has joined #ocaml
fraggle-boate has quit [Remote host closed the connection]
eikke__ has joined #ocaml
thomasga has quit [Quit: Leaving.]
fraggle-boate has joined #ocaml
Khady_ is now known as Khady
Khady has quit [Changing host]
Khady has joined #ocaml
zpe has quit [Ping timeout: 264 seconds]
samrat has quit [Quit: Computer has gone to sleep.]
BitPuffin has quit [Ping timeout: 240 seconds]
lordkryss has joined #ocaml
ygrek has quit [Ping timeout: 255 seconds]
<Kakadu> Any ideas why `opam list -a` doesn't show me some packages? http://paste.in.ua/9799/raw/
<dsheets__> Kakadu, opam remote?
<Kakadu> dsheets__: http://paste.in.ua/9800/raw/
fold has quit [Ping timeout: 240 seconds]
<dsheets__> Kakadu, camlp5 only < 4.02
<dsheets__> what switch?
<Kakadu> 2.02
<Kakadu> 4.02*
<Kakadu> TT
tani has joined #ocaml
tane is now known as Guest81966
tani is now known as tane
Guest81966 has quit [Killed (barjavel.freenode.net (Nickname regained by services))]
thomasga has joined #ocaml
thomasga has quit [Quit: Leaving.]
thomasga has joined #ocaml
AltGr has left #ocaml [#ocaml]
AltGr has joined #ocaml
Kakadu has quit [Quit: Page closed]
avsm has joined #ocaml
oriba has joined #ocaml
[mark] has joined #ocaml
[mark] has left #ocaml [#ocaml]
eikke__ has quit [Ping timeout: 264 seconds]
ygrek has joined #ocaml
samrat has joined #ocaml
ontologiae_ has joined #ocaml
freling has quit [Ping timeout: 260 seconds]
<Leonidas> odd, I am trying to do an opam upgrade and what it does it to downgrade ocamlfind and downgrade a lot of other packages. This doesn't seem right.
<dsheets__> Leonidas, opam version? have external solver installed?
<Leonidas> dsheets__: opam 1.1.1, not that I know of (what to look for?)
<dsheets__> Leonidas, you could try installing aspcud and see if that helps
<dsheets__> also, there is a 1.2 beta out that may resolve your issue
<dsheets__> this sort of nonsense is a known issue with the internal solver
<Leonidas> will try once installing eliom is done
darkf has quit [Quit: Leaving]
milosn has quit [Ping timeout: 264 seconds]
<Leonidas> dsheets__: yep, aspcud is so much faster and doesn't downgrade everything. Thanks.
<dsheets__> hooray!
thomasga has quit [Quit: Leaving.]
Kakadu has joined #ocaml
thomasga has joined #ocaml
oriba has quit [Quit: oriba]
avsm has quit [Quit: Leaving.]
msaegesser has joined #ocaml
cespinoza has quit [Ping timeout: 260 seconds]
thomasga has quit [Quit: Leaving.]
englishm has joined #ocaml
avsm has joined #ocaml
zpe has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
cespinoza has joined #ocaml
zpe has quit [Ping timeout: 240 seconds]
eikke__ has joined #ocaml
shinnya has joined #ocaml
milosn has joined #ocaml
avsm has quit [Quit: Leaving.]
<hhugo> Does anyone know the purpose of the 'Value' constructor in camlinternalMod.ml ? it doesn't seems to be used in translmod.ml ?
BitPuffin has joined #ocaml
rgrinberg has joined #ocaml
thomasga has joined #ocaml
samrat has joined #ocaml
avsm has joined #ocaml
ontologiae_ has quit [Ping timeout: 250 seconds]
maattdd has joined #ocaml
dubst3pp4 has quit [Quit: Ĝis la revido!]
rgrinberg has quit [Quit: Leaving.]
bezirg has quit [Remote host closed the connection]
maattdd has quit [Ping timeout: 255 seconds]
zpe has joined #ocaml
mort___ has joined #ocaml
maattdd has joined #ocaml
zpe has quit [Ping timeout: 250 seconds]
rgrinberg has joined #ocaml
krono has joined #ocaml
<krono> hi
<krono> why is ` type y = int | Foo of y * y;; ` an syntax error?
<bernardo1pc> sum types must have constructors
<bernardo1pc> so you need one for your first case
<krono> so there is no way around
<bernardo1pc> type y = Int of int | Foo of y * y will work
<krono> type y = Int of int | Foo of y * y;;
<krono> ok
<krono> thanks
<bernardo1pc> how would you match on a value of type y , if not for Int ?
cago has left #ocaml [#ocaml]
philtor has joined #ocaml
BitPuffin has quit [Ping timeout: 240 seconds]
<krono> hmm
<krono> I would have tried to match the "rest"
<krono> match x with Foo(a, b) -> (*...*) | x -> (* do something int-y*);;
rand000 has quit [Ping timeout: 240 seconds]
<tane> mh, BatInnerIO has a function nread, which reads a specific amount of characters, and a read_all function which reads all characters. Still there is a nwrite function which writes all, instead of nwrite and write_all. Anyone knows if there is a specific reason for that?
philtor has quit [Ping timeout: 245 seconds]
menace has left #ocaml [#ocaml]
zpe has joined #ocaml
maattdd has quit [Ping timeout: 260 seconds]
mdenes2 has quit [Ping timeout: 240 seconds]
mort___ has quit [Ping timeout: 240 seconds]
eikke__ has quit [Ping timeout: 255 seconds]
avsm has quit [Quit: Leaving.]
mdenes2 has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
samrat has joined #ocaml
krono has left #ocaml [#ocaml]
thomasga has quit [Quit: Leaving.]
wemeetagain has quit [Quit: WeeChat 1.0]
thomasga has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
avsm has joined #ocaml
samrat has joined #ocaml
thomasga has quit [Client Quit]
avsm has quit [Client Quit]
BitPuffin has joined #ocaml
thomasga has joined #ocaml
ollehar has joined #ocaml
nlucaroni has joined #ocaml
milosn has quit [Ping timeout: 244 seconds]
mort___ has joined #ocaml
BitPuffin has quit [Ping timeout: 246 seconds]
yacks has quit [Read error: Connection reset by peer]
shinnya has quit [Ping timeout: 264 seconds]
ollehar has quit [Quit: ollehar]
ollehar has joined #ocaml
shinnya has joined #ocaml
yacks has joined #ocaml
pminten has joined #ocaml
samrat has quit [Ping timeout: 260 seconds]
Hannibal_Smith has joined #ocaml
jao has joined #ocaml
jao has quit [Changing host]
jao has joined #ocaml
omqal has joined #ocaml
<omqal> 
omqal has quit [Client Quit]
<Armael> :d
WraithM has joined #ocaml
samrat has joined #ocaml
mort___ has quit [Remote host closed the connection]
mort___ has joined #ocaml
thomasga has quit [Quit: Leaving.]
rand000 has joined #ocaml
slash^ has joined #ocaml
ygrek has quit [Ping timeout: 246 seconds]
jwatzman|work has joined #ocaml
AltGr has left #ocaml [#ocaml]
rand000 has quit [Ping timeout: 245 seconds]
Guest24493 has quit [Quit: Lost terminal]
jonludlam has joined #ocaml
milosn has joined #ocaml
ygrek has joined #ocaml
q66 has joined #ocaml
cespinoza has quit [Ping timeout: 240 seconds]
gustav___ has quit [Ping timeout: 272 seconds]
gustav___ has joined #ocaml
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
Kakadu has quit [Quit: Page closed]
cespinoza has joined #ocaml
<Leonidas> Drup: is there a way to use ocsigen and compile all the code (my app, ocsigenserver) into one single executable?
shinnya has quit [Ping timeout: 240 seconds]
troutwine_away is now known as troutwine
zpe has quit [Ping timeout: 240 seconds]
dav has joined #ocaml
jonludlam has quit [Quit: Leaving]
jonludla` has joined #ocaml
samrat has quit [Ping timeout: 246 seconds]
jonludla` has quit [Client Quit]
jonludlam has joined #ocaml
jonludlam has quit [Client Quit]
jonludlam has joined #ocaml
jludlam has joined #ocaml
jonludlam has quit [Client Quit]
thomasga has joined #ocaml
dav has quit [Ping timeout: 250 seconds]
jludlam has quit [Client Quit]
Guest54279 has joined #ocaml
Guest54279 has quit [Client Quit]
jludlam has joined #ocaml
pminten has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
jludlam has quit [Client Quit]
jonludlam has joined #ocaml
bezirg has joined #ocaml
samrat has joined #ocaml
cdidd has quit [Ping timeout: 240 seconds]
<smondet> Leonidas: yes, it can be a bit convoluted, but It Works™
jwatzman|work has quit [Quit: jwatzman|work]
<Leonidas> smondet: is there documentation on this?
<smondet> and this is for a much older version of Eliom & co but the idea for compiling and such is still the same: https://github.com/smondet/ocsibase/blob/master/Makefile
<smondet> there is that `make static` target
<smondet> and all services' creations must be delayed until the config file is parsed: https://github.com/smondet/ocsibase/blob/master/src/webapp/main.eliom#L37
jwatzman|work has joined #ocaml
<Leonidas> smondet: hmm, okay. Thanks :-)
tane has quit [Quit: Verlassend]
dav has joined #ocaml
cdidd has joined #ocaml
dsheets__ has quit [Ping timeout: 260 seconds]
ygrek has quit [Ping timeout: 260 seconds]
thomasga has quit [Quit: Leaving.]
mort___ has quit [Ping timeout: 260 seconds]
rand000 has joined #ocaml
Kakadu has joined #ocaml
hhugo has quit [Quit: Leaving.]
Kakadu has quit [Client Quit]
Kakadu has joined #ocaml
<Unhammer> if I run lablgtk's GMain.Main.main() in the interpreter it exits immediately – anyone know how to get it to wait like in the compiled program?
<Unhammer> (otherwise I keep having to type "Glib.Main.iteration false" to get the program to respond to anything)
BitPuffin has joined #ocaml
<adrien> that shouldn't happen
<adrien> how do you load lablgtk?
<adrien> also, maybe you should use the threaded version
<adrien> it will return at once but the mainloop will be running in parallel
thomasga has joined #ocaml
thomasga has quit [Client Quit]
thomasga has joined #ocaml
dav has quit [Ping timeout: 245 seconds]
thomasga has quit [Client Quit]
englishm_ has joined #ocaml
englishm has quit [Ping timeout: 240 seconds]
jonludlam has quit [Ping timeout: 244 seconds]
<Leonidas> well, the ocsigen tutorial could use some consistency :-(
thomasga has joined #ocaml
maattdd has joined #ocaml
<Leonidas> I don't understand how the view-functions, services and registration work together.
ollehar has quit [Ping timeout: 255 seconds]
thomasga has quit [Client Quit]
jwatzman|work has quit [Quit: jwatzman|work]
<Kakadu> ERROR while installing ocamlfind.1.5.2 ... "ocamlfind": command not found.
<Kakadu> TT
jwatzman|work has joined #ocaml
jwatzman|work has quit [Changing host]
jwatzman|work has joined #ocaml
maattdd has quit [Ping timeout: 245 seconds]
yomimono has joined #ocaml
eikke__ has joined #ocaml
dsheets__ has joined #ocaml
<Unhammer> adrien, I compile with -package lablgtk2 if that's what you mean …
slash^ has quit [Read error: Connection reset by peer]
<adrien> Unhammer: I mean, in the toplevel
dsheets__ is now known as dsheets
<adrien> how do you load lablgtk
thomasga has joined #ocaml
<Unhammer> #require "lablgtk2"
<adrien> and do yuou explicitely init gtk+?
<Unhammer> yeah
<Unhammer> I think
<adrien> hmmm
<adrien> how ?
<Unhammer> waait
thomasga has quit [Client Quit]
<Unhammer> no that didn't fix it
<adrien> aergh, again horrible network latency
maattdd has joined #ocaml
<Unhammer> tried
<Unhammer> let locale = GtkMain.Main.init () in main ();;
<Unhammer> but still I have to "Glib.Main.iteration false "
<Unhammer> oh wait that's because I'm only testing the quit method, my bad :-)
<adrien> try with threaded
<adrien> #thread
<adrien> #require "lablgtk2"
<adrien> and run the threaded variant of the mainloop
<adrien> you can actually also use "lablgtk2" and "lablgtk2 -thread" executables
<adrien> ththey don't go through ocamlfind/findlib though
<Unhammer> it seems main does block like I wanted it to, it's just when I try to exit that I have to iteration
<smondet> Leonidas: a lot of stuff is happening in ocsigen/eliom, so the tutorial is a bit of a moving target, ask/complain on #ocsigen
<adrien> when you C-c it?
<adrien> it's quite expected
<Unhammer> well, when I alt-f4 it
<adrien> if you want to keep control of the toplevel to keep on issuing commands, you need the threaded variant
<Unhammer> ok
<adrien> let me check
<Unhammer> hm
<Unhammer> (well, my problem was more the opposite; the toplevel gave me a prompt while the program was still not completely exited)
<adrien> hmmm, it doesn't work like I hoped it diddid
<adrien> check the README
<adrien> there's a section "How to use the threaded toplevel"
<Unhammer> aha
<adrien> the great thing about lags on ssh andirc: you say something and the other already has the answer but you haven't seen it yet
<adrien> I need to go to bed, night
<adrien> that should work just fine for your case
<Unhammer> hehe, nn, thanks a bunch for your help :-)
<Leonidas> smondet: okay, good to know :-)
<Leonidas> I think I'm kinda already figuring out what is going on
yomimono has quit [Ping timeout: 245 seconds]
maattdd has quit [Ping timeout: 244 seconds]
maattdd has joined #ocaml
Hannibal_Smith has quit [Quit: Sto andando via]
samrat has quit [Quit: Computer has gone to sleep.]
zpe has joined #ocaml
enquora has joined #ocaml
Tekk_ has quit [Read error: Connection reset by peer]
pyon has quit [Quit: Fiat justitia ruat caelum.]
yomimono has joined #ocaml
nojb has joined #ocaml
claudiuc has joined #ocaml
philtor_ has joined #ocaml
SrPx has joined #ocaml
<SrPx> "According to our benchmarks, the generated programs runs typically faster than with the OCaml bytecode interpreter." How fast this is, in relation to native ocaml?
madroach has quit [Remote host closed the connection]
pyon has joined #ocaml
englishm_ has quit [Remote host closed the connection]
claudiuc has quit [Remote host closed the connection]
claudiuc has joined #ocaml
_andre has quit [Quit: leaving]
<SrPx> Uh... hi?
<smondet> SrPx: js_of_ocaml is slower than native yes, and JS engines "as VMs" have a bunch of limitations also
<SrPx> smondet: do you know where I can read about it? I want to know if I can expect an app made using js_of_ocaml to run fast in browser and mobile apps (I could test myself of course, but someone probably did that already)
claudiuc has quit [Read error: Connection reset by peer]
claudiuc has joined #ocaml
maattdd_ has joined #ocaml
maattdd has quit [Ping timeout: 240 seconds]
axiles has quit [Remote host closed the connection]
<smondet> SrPx: you can ask on #ocsigen or check the examples on the website
eikke__ has quit [Ping timeout: 260 seconds]
<smondet> I did that a while ago: http://wr.mondet.org/smondet/webpdb.html
<smondet> as long as functions are tail recursive, there were no performance problems
cago has joined #ocaml
cago has left #ocaml [#ocaml]
eikke__ has joined #ocaml
<SrPx> ok, thanks
<SrPx> what is the best introduction to ocaml?
<SrPx> this is amazing, by the way
philtor_ has quit [Ping timeout: 244 seconds]
philtor_ has joined #ocaml
<smondet> SrPx: http://ocaml.org/learn/
englishm has joined #ocaml
<SrPx> ty!
WraithM has quit [Remote host closed the connection]
ggole has quit []
WraithM has joined #ocaml
claudiuc has quit [Remote host closed the connection]
ollehar has joined #ocaml
studybot has quit [Remote host closed the connection]
nlucaroni has quit [Quit: leaving]
studybot has joined #ocaml
elspru_ has left #ocaml [#ocaml]
milosn has quit [Ping timeout: 255 seconds]
enquora has quit [Quit: enquora]
bezirg has quit [Ping timeout: 245 seconds]
claudiuc has joined #ocaml
ontologiae_ has joined #ocaml
dsheets has quit [Ping timeout: 260 seconds]
enquora has joined #ocaml
englishm has quit [Remote host closed the connection]
philtor_ has quit [Ping timeout: 244 seconds]
englishm has joined #ocaml
ollehar has quit [Ping timeout: 240 seconds]
englishm has quit [Ping timeout: 264 seconds]
claudiuc has quit [Read error: Connection reset by peer]
claudiuc has joined #ocaml
nojb has left #ocaml ["ERC Version 5.3 (IRC client for Emacs)"]
<SrPx> does anyone have an idea what this error means? http://lpaste.net/110154
<flux> I haven't really played with js_of_ocaml, but it means you don't have implementations for those functions. perhaps you need to put in some .js that implements them.
<flux> "primitives" would sound to me they should be implemented in javascript
<flux> if you cannot do input, I think you can just stick function caml_ml_input(args) {} in, maybe
jao has quit [Ping timeout: 250 seconds]
<flux> or how was it that javascript worked, oh well
eikke__ has quit [Ping timeout: 244 seconds]
yomimono has quit [Ping timeout: 260 seconds]
englishm has joined #ocaml
msaegesser has quit [Ping timeout: 264 seconds]
maattdd has joined #ocaml
maattdd_ has quit [Ping timeout: 240 seconds]
<mfp> SrPx: it looks like you're using an older js_of_ocaml version; the runtime support for the graphics library you're using was added on Apr 16 according to https://github.com/ocsigen/js_of_ocaml/commits/master/runtime/graphics.js As for caml_ml_input, etc., they're a bit older.
englishm has quit [Remote host closed the connection]
rand000 has quit [Quit: leaving]
englishm has joined #ocaml
<mfp> SrPx: according to http://ocsigen.org/js_of_ocaml/changelog you need at least 2.1
<Drup> SrPx: I find the performance question weird. We are talking about a Js virtual machine. It's obviously going to be slow compared to native executables
maattdd has quit [Ping timeout: 246 seconds]
<Drup> js_of_ocaml generates quite good js code, but it's still js.
Kakadu has quit [Remote host closed the connection]
Kakadu has joined #ocaml
<mfp> Drup: don't underestimate google's marketing muscle (<- V8 ;-)
<Drup> I'm not underestimating it
<Drup> it's still not that fabulous ...
<Drup> (compare to native code)
<mfp> (I'm not referring to the actual performance of JS VMs, but to the perceived one and to the degree to which V8 and the likes have turned Javascript into a "fast" language in the minds of many)
<Drup> yeah
<Drup> and don't forget nodejs soup
<Drup> Leonidas: can you give more details ?
<Leonidas> Drup: the code that the eliom-distillery generates looks different from the one in the basic tutorial which is confusing
maattdd has joined #ocaml
<Drup> huuum
araujo has quit [Read error: Connection reset by peer]
<Leonidas> Drup: there should be some information what a service is, what belongs to it (a path? a function that returns data?), what registration is and how to register things.
enquora has quit [Quit: enquora]
araujo has joined #ocaml
<Leonidas> I don't want to complain, because I'm sure ocsigen is pretty neat, but I was just quite confused.
englishm has quit [Remote host closed the connection]
englishm has joined #ocaml
<Drup> ok
<Drup> the one I linked is the tutorial for services
<Leonidas> ok, I'll look into this
cespinoza has quit [Ping timeout: 240 seconds]
<Drup> and the manual, which is more precise os http://ocsigen.org/eliom/4.0/manual/server-services
<Drup> Leonidas: the concept *is* complex, so I'm not surprised you are confused. If you still have questions after the tutorial and/or the manual, I'm listening
<Leonidas> Drup: great, thank you :-)
* Leonidas is basically just trying to receive some POST data for now
englishm has quit [Ping timeout: 246 seconds]
<Drup> I'm not sure how we could improve the "pathing" inside the documentation to point the user to the right tutorial
cespinoza has joined #ocaml
<SrPx> mfp: ah, thanks!
<Leonidas> Drup: maybe make one longer tutorial instead of a number of smaller ones. because I wasn't sure where to start and the tutorials don't really seam to build upon each other.
<SrPx> Drup: I'm just asking if it is fast enough so I can write most practical applications I'd write in JS in Ocaml instead, that is the point - without worrying that it would kill mobile phone's batteries or just plainly crash.
<Drup> Leonidas: we had a very long tutorial at some point
<SrPx> obviously it slower than native
<Drup> and it was just too long
<Drup> :/
<Leonidas> Drup: hmm, yeah thats a problem :-)
<Leonidas> :-/
<SrPx> and I'm asking that specifically because GHCJS, for example, is terrible in that aspect. it is not practical at all, you're not supposed to use it in production yet
<Leonidas> maybe a tutorial which allows people to drop out at whatever step they like. I kinda like the Django tutorial; it's six parts or so, but you can write somehow decent applications after 3 parts. Just an idea.
<Leonidas> Drup: how much does the API change?
<Drup> SrPx: the comparison you want is with hand-written JS, in fact
<Drup> SrPx: in this case, I can answer you : js_of_ocaml produce js that is in the same magnitude of speed as hand written one
<Drup> there is one of the benchmark about that, I think
lordkryss has quit [Quit: Connection closed for inactivity]
<Drup> Leonidas: the issue is that people may be interested in very different parts of eliom
<Drup> ether the server side, the client side, the mix of both
<Leonidas> (was thinking of blogging about my experiences, but that would be kind of stupid if it will get outdated soon)
<SrPx> Drup: ah that is what I wanted to know, thank you. That is very good. I noticed Ocaml has some awesome standard libs such as networking, graphics etc. Is all that included? Can I just use all that and this will magically be compiled to js?
<SrPx> Drup: is there? I've only seen one comparing native ocaml to bytecode to js_of_ocaml
<Drup> SrPx: as long as there is no C libraries
<Drup> so, in particular, networking is not going to work
<Drup> for the module Graphics, the primitive are implemented in Js (to replace the C one) in the librairy js_of_ocaml.graphics, so you can use that
<Drup> primitives*
<Drup> Leonidas: it changes, but not enough to make your thing outdated very quickly
<Leonidas> ok, so I'll try to write up something :-)
<SrPx> I see, interesting. But if networking won't work, then it isn't exactly possible to make a web game client in ocaml, I guess :(
<Drup> SrPx: ok, let me rephrase
<Drup> "the networking that you would use in a native context will not work magically"
<Drup> because that would be C sockets
claudiuc has quit [Remote host closed the connection]
<Drup> and that would be pretty deep magic to transform syscall to sockets to websockets
<Drup> you can use websockets, of course
claudiuc has joined #ocaml
<mfp> SrPx: you can get networking, etc. to work --- you just have to write bindings for the JS APIs you'd use with hand-written Javascript, and then use them via js_of_ocaml
Kakadu has quit [Quit: Konversation terminated!]
lpw25 has joined #ocaml
cespinoza has quit [Ping timeout: 246 seconds]
q66[lap] has joined #ocaml
q66[lap] has quit [Changing host]
q66[lap] has joined #ocaml
SrPx has quit [Ping timeout: 246 seconds]
darkf has joined #ocaml
cespinoza has joined #ocaml
troutwine is now known as troutwine_away
ontologiae_ has quit [Ping timeout: 250 seconds]
q66[lap] has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
BitPuffin has quit [Ping timeout: 255 seconds]
lpw25 has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
tristero has quit [Quit: tristero]
maattdd has quit [Ping timeout: 244 seconds]
NoNNaN has quit [Remote host closed the connection]
NoNNaN has joined #ocaml
eikke__ has joined #ocaml