englishm has quit [Remote host closed the connection]
englishm has joined #ocaml
englishm has quit [Read error: Connection reset by peer]
WanderingGlitch has quit [Changing host]
WanderingGlitch has joined #ocaml
rossberg__ has joined #ocaml
Leonidas_ has joined #ocaml
zozozo_ has joined #ocaml
igitoor_ has joined #ocaml
tautologico has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jzelinskie_ has joined #ocaml
BiDOrD_ has joined #ocaml
chris2_ has joined #ocaml
gereedy_ has joined #ocaml
nifty__ has joined #ocaml
msch_ has joined #ocaml
mrpantou1le has quit [Ping timeout: 272 seconds]
pjdelport has quit [Ping timeout: 272 seconds]
igitoor has quit [Ping timeout: 272 seconds]
SethTisue_______ has quit [Ping timeout: 272 seconds]
BiDOrD has quit [Ping timeout: 272 seconds]
rossberg_ has quit [Ping timeout: 272 seconds]
jzelinskie has quit [Ping timeout: 272 seconds]
Leonidas has quit [Ping timeout: 272 seconds]
zozozo has quit [Ping timeout: 272 seconds]
nifty_ has quit [Read error: Connection reset by peer]
rfv has quit [Ping timeout: 272 seconds]
msch has quit [Ping timeout: 272 seconds]
chris2 has quit [Ping timeout: 272 seconds]
gereedy has quit [Ping timeout: 272 seconds]
cantstanya has quit [Ping timeout: 272 seconds]
SethTisue_______ has joined #ocaml
rfv has joined #ocaml
mrpantoufle has joined #ocaml
pjdelport has joined #ocaml
rgrinberg has quit [Quit: Leaving.]
msch_ is now known as msch
nifty__ is now known as nifty_
jzelinskie_ is now known as jzelinskie
sheijk has quit [Quit: .]
Guest34141 is now known as kandu
igitoor_ has quit [Changing host]
igitoor_ has joined #ocaml
igitoor_ is now known as igitoor
troutwine is now known as troutwine_away
tac_ has quit [Quit: Leaving]
jwatzman|work has quit [Quit: jwatzman|work]
claudiuc_ has joined #ocaml
shinnya has quit [Ping timeout: 245 seconds]
<Leonidas_>
is there an easy way to factor out printf format strings without having to specify type signatures?
claudiu__ has joined #ocaml
claudiuc has quit [Ping timeout: 240 seconds]
<Leonidas_>
let foo = "%s";; Printf.sprintf foo "Bar";; complains about the type of foo
claudiu__ has quit [Remote host closed the connection]
claudiuc_ has quit [Ping timeout: 252 seconds]
claudiuc has joined #ocaml
claudiuc has quit [Client Quit]
<Khady>
you may write let foo = Printf.sprintf "%s";; foo "Bar";;
<Leonidas_>
yes, currying might be the best solution
<Leonidas_>
because specifying signures like ('a -> 'b, unit, string) format for mere strings looks super-ugly
boogie has quit [Remote host closed the connection]
NoNNaN has quit [Ping timeout: 264 seconds]
BiDOrD has joined #ocaml
cantstanya has joined #ocaml
mrpantou1le has joined #ocaml
IbnFirnas has quit [Ping timeout: 241 seconds]
n0v has quit [Ping timeout: 241 seconds]
mrpantoufle has quit [Write error: Broken pipe]
BiDOrD_ has quit [Write error: Broken pipe]
chris2_ has quit [Write error: Broken pipe]
igitoor has quit [Write error: Broken pipe]
Guest32997 has quit [Remote host closed the connection]
tautologico has joined #ocaml
samebcha1e has joined #ocaml
lopex has joined #ocaml
majoh has quit [*.net *.split]
jzelinskie_ has joined #ocaml
rfv_ has joined #ocaml
pjdelport_ has joined #ocaml
tac_ has joined #ocaml
adrien has joined #ocaml
Snark_ has joined #ocaml
sh1ken has quit [Ping timeout: 245 seconds]
Snark has quit [Ping timeout: 245 seconds]
<Leonidas_>
is it possible to put a computation in lwt into the background?
tov has quit [Ping timeout: 268 seconds]
jzelinskie has quit [Ping timeout: 268 seconds]
cantstanya has quit [Ping timeout: 268 seconds]
Guest87111 has quit [Ping timeout: 268 seconds]
Leonidas_ has quit [Ping timeout: 268 seconds]
jerith has quit [Ping timeout: 268 seconds]
samebchase has quit [Ping timeout: 268 seconds]
rfv has quit [Ping timeout: 268 seconds]
tov_ has joined #ocaml
sivoais has quit [Ping timeout: 268 seconds]
pjdelport has quit [Ping timeout: 268 seconds]
6JTAAFTUQ has quit [Ping timeout: 268 seconds]
tg has quit [Ping timeout: 268 seconds]
teiresias has quit [Remote host closed the connection]
SethTisue_______ has quit [Ping timeout: 268 seconds]
kandu has quit [Ping timeout: 268 seconds]
tov_ has quit [Ping timeout: 268 seconds]
fraggle_ has quit [Ping timeout: 268 seconds]
hcarty has quit [Ping timeout: 268 seconds]
rwmjones has quit [Excess Flood]
malo has quit [Write error: Broken pipe]
gereedy_ has quit [Write error: Broken pipe]
gereedy has joined #ocaml
SethTisue_______ has joined #ocaml
jerith has joined #ocaml
rwmjones has joined #ocaml
cantstanya has joined #ocaml
lopex is now known as Guest87111
tov has joined #ocaml
igitoor has joined #ocaml
fraggle_ has joined #ocaml
rfv_ is now known as rfv
pjdelport_ is now known as pjdelport
majoh has joined #ocaml
tg has joined #ocaml
inr has joined #ocaml
chris2 has joined #ocaml
n0v has joined #ocaml
IbnFirnas has joined #ocaml
Leonidas_ has joined #ocaml
koderok has joined #ocaml
koderok has quit [Read error: Connection reset by peer]
msch_ has joined #ocaml
koderok has joined #ocaml
johnelse has joined #ocaml
johnelse is now known as Guest68336
teiresias has joined #ocaml
nifty__ has joined #ocaml
gereedy_ has joined #ocaml
igitoor has quit [*.net *.split]
rwmjones has quit [*.net *.split]
gereedy has quit [*.net *.split]
msch has quit [*.net *.split]
nifty_ has quit [*.net *.split]
rossberg__ has quit [*.net *.split]
darkf has quit [*.net *.split]
cdidd has quit [*.net *.split]
olasd has quit [*.net *.split]
igitoor has joined #ocaml
msch_ is now known as msch
jao has joined #ocaml
jao has quit [Changing host]
jao has joined #ocaml
nifty__ is now known as nifty_
sivoais has joined #ocaml
ontologiae has quit [Ping timeout: 240 seconds]
Leonidas_ is now known as Leonidas
tac-tics has joined #ocaml
surply_p has joined #ocaml
jao` has joined #ocaml
jao` has quit [Changing host]
jao` has joined #ocaml
rwmjones has joined #ocaml
olasd has joined #ocaml
rossberg__ has joined #ocaml
cdidd has joined #ocaml
nickmeha1ry has joined #ocaml
igitoor has quit [Changing host]
igitoor has joined #ocaml
Snark has joined #ocaml
jzelinskie__ has joined #ocaml
johnelse_ has joined #ocaml
alinab_ has joined #ocaml
pollux__ has joined #ocaml
jao has quit [Ping timeout: 276 seconds]
adrien has quit [Ping timeout: 276 seconds]
Ptishell has quit [Ping timeout: 276 seconds]
WanderingGlitch has quit [Ping timeout: 276 seconds]
nickmeharry has quit [Ping timeout: 276 seconds]
Snark_ has quit [Ping timeout: 276 seconds]
tac_ has quit [Ping timeout: 276 seconds]
jzelinskie_ has quit [Ping timeout: 276 seconds]
j0sh has quit [Ping timeout: 276 seconds]
Guest68336 has quit [Ping timeout: 276 seconds]
pollux has quit [Ping timeout: 276 seconds]
alinab has quit [Ping timeout: 276 seconds]
_5kg has quit [Ping timeout: 276 seconds]
WanderingGlitch has joined #ocaml
pollux__ is now known as pollux
tautologico has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
philtom has joined #ocaml
j0sh has joined #ocaml
koderok has quit [Ping timeout: 252 seconds]
girrig has quit [Ping timeout: 240 seconds]
tautologico has joined #ocaml
girrig has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest93593
Guest93593 has quit [Ping timeout: 252 seconds]
englishm has joined #ocaml
q66 has quit [Quit: Leaving]
philtom has quit [Ping timeout: 272 seconds]
tac_ has joined #ocaml
tac-tics has quit [Ping timeout: 252 seconds]
tac_ has quit [Quit: Leaving]
Intensity has joined #ocaml
hcarty has joined #ocaml
darkf has joined #ocaml
shinnya has joined #ocaml
jao` has quit [Ping timeout: 268 seconds]
cesar_ has joined #ocaml
cesar_ is now known as Guest91923
samrat has joined #ocaml
Guest91923 has quit [Ping timeout: 276 seconds]
cantstanya has quit [Quit: WeeChat 1.0]
cantstanya has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
kerneis has quit [Ping timeout: 252 seconds]
kerneis has joined #ocaml
kalzz has quit [Ping timeout: 260 seconds]
englishm has quit [Remote host closed the connection]
englishm has joined #ocaml
BitPuffin has quit [Ping timeout: 260 seconds]
englishm_ has joined #ocaml
englishm has quit [Read error: Connection reset by peer]
troutwine_away is now known as troutwine
troutwine is now known as troutwine_away
axiles has joined #ocaml
sh1ken has joined #ocaml
pyx has joined #ocaml
adrien has joined #ocaml
_5kg has joined #ocaml
_5kg has quit [Max SendQ exceeded]
adrien is now known as Guest2834
_5kg has joined #ocaml
NoNNaN has joined #ocaml
tautologico has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Guest87111 has joined #ocaml
Guest87111 has quit [Changing host]
rfv has joined #ocaml
rfv has quit [Changing host]
pjdelport has quit [Changing host]
pjdelport has joined #ocaml
SethTisue_______ has quit [Changing host]
SethTisue_______ has joined #ocaml
IbnFirnas has quit [Changing host]
IbnFirnas has joined #ocaml
msch has joined #ocaml
msch has quit [Changing host]
nifty_ has joined #ocaml
nifty_ has quit [Changing host]
jzelinskie__ has joined #ocaml
jzelinskie__ has quit [Changing host]
johnelse_ has quit [Changing host]
johnelse_ has joined #ocaml
englishm_ has quit [Remote host closed the connection]
WanderingGlitch has quit [Changing host]
WanderingGlitch has joined #ocaml
nox has quit [Ping timeout: 240 seconds]
nox has joined #ocaml
philtom has joined #ocaml
jennmoneydollars has quit [Ping timeout: 240 seconds]
divyanshu_ has quit [Ping timeout: 240 seconds]
andreypopp_ has quit [Ping timeout: 240 seconds]
SethTisue_______ has quit [Ping timeout: 272 seconds]
rfv has quit [Ping timeout: 272 seconds]
pjdelport has quit [Ping timeout: 272 seconds]
ggherdov_ has quit [Ping timeout: 252 seconds]
strmpnk has quit [Ping timeout: 260 seconds]
__marius_____ has quit [Ping timeout: 260 seconds]
emmanueloga has quit [Ping timeout: 260 seconds]
jeroud has quit [Ping timeout: 260 seconds]
leifw has quit [Ping timeout: 260 seconds]
puzza007_ has quit [Ping timeout: 260 seconds]
steshaw has quit [Ping timeout: 260 seconds]
_tca has quit [Ping timeout: 260 seconds]
IbnFirnas has quit [Ping timeout: 264 seconds]
jzelinskie__ has quit [Ping timeout: 272 seconds]
nifty_ has quit [Ping timeout: 272 seconds]
msch has quit [Ping timeout: 272 seconds]
Guest87111 has quit [Ping timeout: 272 seconds]
nox has quit [Ping timeout: 272 seconds]
huza has joined #ocaml
ygrek_ has joined #ocaml
philtom has quit [Ping timeout: 245 seconds]
kalzz has joined #ocaml
WraithM has quit [Ping timeout: 252 seconds]
ebzzry__ has joined #ocaml
ebzzry_ has quit [Read error: Connection reset by peer]
acieroid has quit [Ping timeout: 250 seconds]
samrat has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
tac_ has joined #ocaml
<Guest2834>
Leonidas: Lwt_preemptive
Guest2834 is now known as adrien
adrien is now known as Guest57385
puzza007_ has joined #ocaml
SethTisue_______ has joined #ocaml
andreypopp__ has joined #ocaml
strmpnk has joined #ocaml
lopex has joined #ocaml
emmanueloga_ has joined #ocaml
pjdelport has joined #ocaml
Guest57385 is now known as adrien_
__marius_____ has joined #ocaml
msch_ has joined #ocaml
Kakadu has joined #ocaml
_tca has joined #ocaml
nifty__ has joined #ocaml
rfv has joined #ocaml
msch_ is now known as Guest15452
nox has joined #ocaml
IbnFirnas has joined #ocaml
Simn has joined #ocaml
jeroud has joined #ocaml
leifw has joined #ocaml
divyanshu__ has joined #ocaml
jzelinskie__ has joined #ocaml
ggherdov_ has joined #ocaml
MercurialAlchemi has joined #ocaml
jennmoneydollars has joined #ocaml
steshaw has joined #ocaml
<whitequark>
Drup: hahaha I just realized I can write fun%expr () -> x
<whitequark>
cue most unreadable code ever
wwilly has joined #ocaml
willy_ has joined #ocaml
willy_ has quit [Client Quit]
samrat has joined #ocaml
huza has quit [Ping timeout: 268 seconds]
avsm has joined #ocaml
IbnFirnas has quit [*.net *.split]
n0v has quit [*.net *.split]
Submarine has joined #ocaml
EClaesson has quit [Ping timeout: 252 seconds]
ddosia has quit [Ping timeout: 252 seconds]
gargawel has quit [Ping timeout: 252 seconds]
gargawel has joined #ocaml
seliopou has quit [Ping timeout: 252 seconds]
zapu has quit [Ping timeout: 252 seconds]
zapu has joined #ocaml
fraggle-boate has quit [Ping timeout: 252 seconds]
seliopou has joined #ocaml
fraggle-boate has joined #ocaml
thomasga has joined #ocaml
msaegesser has quit [Ping timeout: 252 seconds]
rks` has quit [Ping timeout: 252 seconds]
rks` has joined #ocaml
bernardofpc has quit [Ping timeout: 257 seconds]
bytbox has quit [Ping timeout: 257 seconds]
bernardofpc has joined #ocaml
msaegesser has joined #ocaml
tac_ has quit [Ping timeout: 246 seconds]
pminten has joined #ocaml
ddosia has joined #ocaml
huza has joined #ocaml
msaegesser has quit [Ping timeout: 252 seconds]
morphles has joined #ocaml
rfv has quit [Read error: Connection reset by peer]
steshaw has quit [Read error: Connection reset by peer]
puzza007_ has quit [Read error: Connection reset by peer]
divyanshu__ has quit [Read error: Connection reset by peer]
andreypopp__ has quit [Read error: Connection reset by peer]
ggherdov_ has quit [Write error: Connection reset by peer]
strmpnk has quit [Read error: Connection reset by peer]
rfv has joined #ocaml
puzza007_ has joined #ocaml
divyanshu__ has joined #ocaml
steshaw has joined #ocaml
strmpnk has joined #ocaml
andreypopp__ has joined #ocaml
hhugo has joined #ocaml
tane has joined #ocaml
shinnya has quit [Ping timeout: 252 seconds]
<Leonidas>
adrien_: I've used async and it seems to work. Wrong?
ggherdov_ has joined #ocaml
jpdeplaix has quit [Ping timeout: 252 seconds]
jpdeplaix has joined #ocaml
mfp has quit [Ping timeout: 252 seconds]
seliopou has quit [Ping timeout: 252 seconds]
shinnya has joined #ocaml
mfp has joined #ocaml
seliopou has joined #ocaml
<adrien_>
"async"? you mean, the library?
testcocoon has quit [Quit: Coyote finally caught me]
brendan has quit [Ping timeout: 252 seconds]
samebchase has joined #ocaml
brendan has joined #ocaml
samebcha1e has quit [Ping timeout: 252 seconds]
<Leonidas>
adrien_: no, Lwt.async (fun () -> …)
testcocoon has joined #ocaml
<adrien_>
I understood "background" as putting it the computation in another thread
gargawel_ has joined #ocaml
gargawel has quit [Ping timeout: 252 seconds]
pminten|2 has joined #ocaml
pminten has quit [Ping timeout: 252 seconds]
rs0 has quit [Ping timeout: 252 seconds]
rs0 has joined #ocaml
ddosia has quit [Quit: Leaving.]
zpe has joined #ocaml
thomasga has quit [Quit: Leaving.]
hhugo has quit [Quit: Leaving.]
willy_ has joined #ocaml
ddosia has joined #ocaml
wwilly has quit [Ping timeout: 252 seconds]
avsm has quit [Quit: Leaving.]
thomasga has joined #ocaml
brendan has quit [Ping timeout: 245 seconds]
divyanshu__ has quit [Quit: Connection closed for inactivity]
Submarine has quit [Quit: Leaving]
Arsenik has joined #ocaml
Guest15452 has quit [Ping timeout: 245 seconds]
nox has quit [Ping timeout: 245 seconds]
adrien_ has quit [Ping timeout: 245 seconds]
msch_ has joined #ocaml
nox has joined #ocaml
msch_ is now known as Guest86935
brendan has joined #ocaml
rand000 has joined #ocaml
adrien_ has joined #ocaml
paolooo has joined #ocaml
pjdelport has quit [Ping timeout: 245 seconds]
pjdelport has joined #ocaml
pgomes has joined #ocaml
acieroid has joined #ocaml
BitPuffin has joined #ocaml
Muzer has quit [Excess Flood]
ggole has joined #ocaml
Muzer has joined #ocaml
pyx has quit [Quit: WeeChat 0.4.3]
nifty__ has quit [Ping timeout: 268 seconds]
_tca has quit [Ping timeout: 272 seconds]
lopex has quit [Ping timeout: 276 seconds]
SHODAN has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
lopex has joined #ocaml
nifty__ has joined #ocaml
ggole has quit [Read error: Connection timed out]
ggole has joined #ocaml
_tca has joined #ocaml
EClaesson has joined #ocaml
Guest86935 is now known as msch
Antoine59 has joined #ocaml
<Leonidas>
adrien_: I don't mind where the computation happens, I just want to return early from a function yet be sure that the computation will get completed.
<Leonidas>
I'll look into Lwt_preemptive, too
<Leonidas>
so far, I kinda like Lwt, but Ocsigen, well…
<adrien_>
preemptive uses a separate system thread
<Leonidas>
that might be indeed better, since I'd like to accept HTTP requests in the meantime
<Drup>
Leonidas: you're still afraid to be spoiled by Ocsigen and not able to do ruby webdev after ? :p
<Leonidas>
Drup: hahaha. No, I am using it, but often just lost
<Leonidas>
(I was doing Python webdev, tho')
<Drup>
same difference :D
<Leonidas>
Drup: e.g. the Sys.max_string_length does not work, since Ocsigen seems to be allocating the whole buffer
<Drup>
no but, I told you were doing it wrong already.
<Drup>
don't use a streamservice to serve json when you have a simple alternative available
<Leonidas>
Drup: maybe, but you said it would just use the memory it needs.
<Leonidas>
yeah, I am using a string service
<Drup>
I never said that, mrvn said that, and he doesn't know anything about ocsigen :D
<Leonidas>
still, I get post data as stream
SHODAN has quit [Remote host closed the connection]
<Leonidas>
Drup: oh, sorry. Misremembered.
<Leonidas>
(no offense)
<Drup>
no problem :p
<Drup>
what is your current issue ?
<Drup>
(it may be better on #ocsigen, btw)
<Leonidas>
Drup: everytime I wrote on #ocsigen, I never got a response ;)
<Leonidas>
currently none, really
<Leonidas>
oh, well, apart from it not building on ocaml 4.02
<Drup>
really ? I try to answer when I can
<Leonidas>
but that is fixed in git master, I heard, so just awaiting a new release
<Drup>
anway, what's your current issue ?
<Leonidas>
Drup: I was trying to return a value as an HTTP response, but start a background computation
<Drup>
gné ?
paolooo has quit [Ping timeout: 246 seconds]
<Drup>
what are you trying to do ? (not how you want to do it)
<Leonidas>
I've solved it with Lwt.async, but adrien_ suggested Lwt_preemptive…
<Leonidas>
Drup: I need to call a number of processes (for deployment) and trigger the execution via a HTTP request.
<Drup>
async is fine, Lwt_preemptive is to be used when you want to launch something that do not use lwt and is going to block
<Leonidas>
The "cool kids" call this stuff "webhooks".
<Drup>
ah, right.
<Leonidas>
is Lwt blocking when doing an Lwt_process.exec? I guess it does?
<Drup>
no idea
mcclurmc has quit [Read error: Connection reset by peer]
mcclurmc has joined #ocaml
<Leonidas>
oh, if I edit out CLIENT_FILES from Makefile.options, my compilation is so much faster :-)
<Drup>
if you don't use client features at all, you don't need to have .eliom, you can have .ml only
EClaesson_ has joined #ocaml
EClaesson_ has quit [Read error: Connection reset by peer]
<Leonidas>
Drup: so I should rename my eliom files to ml and adjust the SERVER_FILES option?
xaimus has quit [Ping timeout: 252 seconds]
xaimus has joined #ocaml
seliopou has quit [Read error: Connection reset by peer]
seliopou_ has joined #ocaml
girrig has quit [Ping timeout: 252 seconds]
EClaesson has quit [Ping timeout: 252 seconds]
<Drup>
if you are sure you're not going to use eliom syntax extension in it, yes
huza has quit [Quit: WeeChat 0.3.8]
girrig has joined #ocaml
<Leonidas>
ok, changed it. Works :-)
Submarine has joined #ocaml
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
zpe has quit [Ping timeout: 252 seconds]
paolooo has joined #ocaml
SHODAN has joined #ocaml
zpe has joined #ocaml
ontologiae has joined #ocaml
<Drup>
whitequark: pfew, sorry for the waiting time
<Drup>
I did the oasis fix for lwt ppx
azynheira has joined #ocaml
pgomes has quit [Ping timeout: 246 seconds]
bytbox has joined #ocaml
<dmbaturin>
Drup: That's the longest three-letter word sequence I've seen in a while. :)
<Drup>
<3
<Drup>
except oasis
<dmbaturin>
Yeah, but we can think of it as a fuzzy match.
<adrien_>
just make a fix for a lib from daniel bünzli instead
def`_ is now known as def`
<Drup>
adrien_ : topkg has too many letters too
<adrien_>
could be another lib
<Drup>
(It's the first time I'm saying this about one of bunzli's lib =')
<adrien_>
;O
<adrien_>
:P
seliopou_ has quit [Ping timeout: 252 seconds]
seliopou has joined #ocaml
ontologiae has quit [Quit: WeeChat 0.4.0]
azynheira has quit [Quit: Leaving]
ontologiae has joined #ocaml
q66 has joined #ocaml
<whitequark>
Drup: "suffix"
<whitequark>
has two "f"
<Drup>
f*ck
chambart has joined #ocaml
<Drup>
fixing
<whitequark>
"ffck"?
<Drup>
=')
n0v has joined #ocaml
<Drup>
done
ollehar has joined #ocaml
<whitequark>
there is still the opam issue
<Drup>
yeah, but we can postpone I think
<dmbaturin>
Drup: type fck = f*ck
<whitequark>
requiring downstream packages to depend on ppx_tools is *very* ugly
<dmbaturin>
Where the opam package index and files are stored and who maintains it?
<whitequark>
ocaml/opam-repository
<whitequark>
and de-facto ... avsm, mostly
<whitequark>
Drup: maybe base-no-ppx would work
<whitequark>
I'll take a look
<Drup>
I have no opinion about it
<Drup>
as long as it's fixed, I don't really care how, I'll let opam people and you figure it out :p
Hannibal_Smith has joined #ocaml
chambart has quit [Ping timeout: 260 seconds]
thomasga has quit [Quit: Leaving.]
thomasga has joined #ocaml
Submarine has quit [Quit: Leaving]
topher_b has joined #ocaml
fold has joined #ocaml
fold has quit [Ping timeout: 252 seconds]
charpi has joined #ocaml
samrat has joined #ocaml
paolooo has quit [Ping timeout: 246 seconds]
samrat has quit [Client Quit]
darkf has quit [Quit: Leaving]
mal`` has quit [*.net *.split]
robink has quit [*.net *.split]
whitequark has quit [*.net *.split]
rom1504 has quit [*.net *.split]
flux has quit [*.net *.split]
siddharthv_away has quit [*.net *.split]
mdenes3 has quit [*.net *.split]
_2can has quit [*.net *.split]
jlouis has quit [*.net *.split]
isomorphismes has quit [*.net *.split]
bitbckt has quit [*.net *.split]
osnr has quit [*.net *.split]
hbar_ has quit [*.net *.split]
dinosaure has quit [*.net *.split]
mekaj has quit [*.net *.split]
_habnabit has quit [*.net *.split]
flux has joined #ocaml
_2can has joined #ocaml
rom1504 has joined #ocaml
whitequark has joined #ocaml
bitbckt_ has joined #ocaml
jlouis_ has joined #ocaml
siddharthv_away has joined #ocaml
mdenes3 has joined #ocaml
isomorphismes has joined #ocaml
dinosaure has joined #ocaml
jzelinskie__ has quit [*.net *.split]
Simn has quit [*.net *.split]
emmanueloga_ has quit [*.net *.split]
_5kg has quit [*.net *.split]
cantstanya has quit [*.net *.split]
pollux has quit [*.net *.split]
johnelse_ has quit [*.net *.split]
Snark has quit [*.net *.split]
surply_p has quit [*.net *.split]
_habnabit has joined #ocaml
sivoais has quit [*.net *.split]
teiresias has quit [*.net *.split]
Leonidas has quit [*.net *.split]
chris2 has quit [*.net *.split]
tg has quit [*.net *.split]
fraggle_ has quit [*.net *.split]
tov has quit [*.net *.split]
jerith has quit [*.net *.split]
zozozo_ has quit [*.net *.split]
Khady has quit [*.net *.split]
chris2 has joined #ocaml
tov has joined #ocaml
teiresias has joined #ocaml
osnr has joined #ocaml
jerith has joined #ocaml
mekaj has joined #ocaml
hbar_ has joined #ocaml
sivoais has joined #ocaml
Khady has joined #ocaml
Khady has joined #ocaml
pollux has joined #ocaml
johnelse has joined #ocaml
Leonidas has joined #ocaml
Snark has joined #ocaml
Simn has joined #ocaml
ollehar has quit [Ping timeout: 272 seconds]
emmanueloga_ has joined #ocaml
johnelse is now known as Guest1716
jzelinskie__ has joined #ocaml
fraggle_ has joined #ocaml
surply_p has joined #ocaml
_5kg has joined #ocaml
zozozo has joined #ocaml
cantstanya has joined #ocaml
tg has joined #ocaml
leifw has quit [Ping timeout: 272 seconds]
pjdelport has quit [Ping timeout: 272 seconds]
robink has joined #ocaml
leifw has joined #ocaml
pjdelport has joined #ocaml
sh1ken has quit [Changing host]
sh1ken has joined #ocaml
sh1ken has quit [Quit: leaving]
sh1ken has joined #ocaml
topher_b has quit [Quit: topher_b]
ygrek_ has quit [Ping timeout: 276 seconds]
charpi has quit [Remote host closed the connection]
rand000 has quit [Quit: leaving]
Submarine has joined #ocaml
dinosaure has quit [*.net *.split]
siddharthv_away has quit [*.net *.split]
_2can has quit [*.net *.split]
samebchase has quit [*.net *.split]
mfp has quit [*.net *.split]
rks` has quit [*.net *.split]
fraggle-boate has quit [*.net *.split]
__marius_____ has quit [*.net *.split]
Kakadu has quit [*.net *.split]
WanderingGlitch has quit [*.net *.split]
rks` has joined #ocaml
_2can has joined #ocaml
mfp has joined #ocaml
dinosaure has joined #ocaml
WanderingGlitch has joined #ocaml
Kakadu has joined #ocaml
__marius_____ has joined #ocaml
fraggle-boate has joined #ocaml
siddharthv_away has joined #ocaml
samrat has joined #ocaml
ontologiae has quit [Ping timeout: 250 seconds]
zpe has quit [Remote host closed the connection]
samebchase has joined #ocaml
ebzzry has joined #ocaml
ebzzry__ has quit [Read error: Connection reset by peer]
samrat has quit [Quit: Computer has gone to sleep.]
ollehar has joined #ocaml
_tca has quit [Changing host]
_tca has joined #ocaml
_tca has joined #ocaml
Arsenik has quit [Ping timeout: 250 seconds]
zpe has joined #ocaml
fold has joined #ocaml
ygrek_ has joined #ocaml
divyanshu has joined #ocaml
mort___ has joined #ocaml
mort___ has quit [Remote host closed the connection]
mort___ has joined #ocaml
ygrek_ has quit [Ping timeout: 246 seconds]
Arsenik has joined #ocaml
Arsenik has quit [Max SendQ exceeded]
Arsenik has joined #ocaml
philtom has joined #ocaml
mort___ has quit [Remote host closed the connection]
Guest17684 has quit [Read error: Connection reset by peer]
cesar_ is now known as Guest65262
Arsenik has joined #ocaml
Arsenik has quit [Max SendQ exceeded]
<tane>
quick question: is the caml preprocessor turing complete?
Arsenik has joined #ocaml
<Drup>
what is "the caml preprocessor" ?
<tane>
campl4?
<tane>
camlp4
<Drup>
camlp4 is obviously turing complete, yes, but it's not a preprocessor as you thing it is
<tane>
ok
<Drup>
think*
<dmbaturin>
Not like C preprocessor or say m4.
<Drup>
camlp4 is simply an ocaml library to implement syntax extension in ocaml, it's obviously turing complete
<tane>
i just wondered if by using camlp4 ocaml source faces the same problems as templated-c++ code in the light of the halting problem of the compilation process :)
<Drup>
I was going to says "it's not some half-assed pseudo language embedded in ocaml sources by deep magical rewriting", but camlp4 is totally that, in fact >_>
<dmbaturin>
Well, you sure can introduce problems of this kind with it.
<dmbaturin>
You can do it with lisp macros as well.
<Drup>
template ≠ preprocessor
<Drup>
if your issue is with templates, the ocaml equivalent is functors, and that's not turing complete afair (no unbounded recursion)
Arsenik has quit [Ping timeout: 272 seconds]
<dmbaturin>
tane: You only need camlp4 if you want to actually modify the language syntax though, e.g. make a DSL.
<tane>
yeah
surply_p is now known as Ptishell
Arsenik has joined #ocaml
adrien_ is now known as adrien
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
ygrek_ has quit [Ping timeout: 272 seconds]
chambart has joined #ocaml
shinnya has quit [Ping timeout: 250 seconds]
zpe has quit [Ping timeout: 272 seconds]
jzelinskie__ is now known as jzelinskie
jzelinskie has quit []
<axiles>
especially, unlike templates, functors are not computed at compilation time
jzelinskie has joined #ocaml
<Drup>
huh, they are.
<axiles>
for example this compute ackerman(4) with functors and by using Church integers http://pastebin.com/50wEXFV7
<Drup>
functors are not turing complete, but they are compile time.
<axiles>
it compiles instantly but it takes an enormous time to finish executing
<adrien>
I would have simply done it with a side-effect :)
<axiles>
adrien: :)
rgrinberg has joined #ocaml
chambart has quit [Ping timeout: 260 seconds]
philtom has joined #ocaml
mal`` has joined #ocaml
averell has joined #ocaml
Guest65262 has quit [Remote host closed the connection]
<dmbaturin>
What happens to a list when you traverse it in the canonical tail-recursive way? Does the function just get a pointer to the next item, or it's copied?
Arsenik has quit [Read error: Connection reset by peer]
Arsenik has joined #ocaml
ivan\ has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
ivan\ has joined #ocaml
chambart has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
<Drup>
axiles: this examples confuses me
<axiles>
Drup: you know System F ?
<Drup>
sure
<Drup>
it's not the encoding that confuses me
<Drup>
it's the fact that it's not compile time and reduced to nothing by the compiler
lordkryss_ has joined #ocaml
<adrien>
ocaml usually does nothing at compile-time anyway
<Drup>
(Gotta admire the cheap polymorphism though, I should remember to use this sometimes)
tac_ has joined #ocaml
<Drup>
adrien : well, we agree that functors don't induce any overhead in function calling, right ?
<axiles>
Drup: this program compute the ackerman function with functors, if the computation of functors was at compile time, the compilation would take almost forever
<adrien>
Drup: they do
<Drup>
axiles: I know
<axiles>
the question is that: is there an overhead after the module has been computed by the functor ?
<dmbaturin>
...disassembly of a simple example makes me think the list is not copied, but I want someone to confirm it. :)
<adrien>
dmbaturin: why would the list be copied?
<Drup>
adrien "module F (M : sig val bla : unit -> int end) = struct let blo = bla end", afaik, "F(MyM).blo ()" is the same as MyM.bla ()
<dmbaturin>
adrien: I'd expect it not to be copied, but who knows.
<Drup>
strictly the same
<Drup>
if it's not, well, my whole mental model about functors is wrong :>
<Drup>
(not considering first class modules and stuff here)
<adrien>
Drup: afaik, functors introduce an overhead
<adrien>
but it's an indirection
<adrien>
I don't think it changes anything in how they work
<Drup>
need dissembling, and not courageous enough to do it.
<adrien>
nope
<adrien>
you only need to time function calls in a functor and without a functor
thomasga has quit [Quit: Leaving.]
<def`>
representation of modules, whether inputed manually or computed through a functor, is the same
<def`>
so the code will be the same, and F(MyM).blo === MyM.bla
<def`>
this is not exactly true for toplevel-modules in native mode (those are destructured and values are represented by C symbols)
<adrien>
hmmm, so no runtime overhead?
<def`>
and this is true up-to potential optimisations (inlining, etc)
<def`>
adrien: module MyM = … module MyM' = F(MyM), then MyM.bla and MyM'.blo are the same
<ggole>
dmbaturin: pattern matching doesn't copy, it just looks at the parts.
<adrien>
hmm, ok, had been thinking the opposite for quite some time
<def`>
however, in F(MyM).blo there is one more function call (F), but in both case you have a projection
<def`>
and dmbaturin: there is no copy in caml, never, ever.
<tac_>
so begin and end literally work the same way as ( and )
pgomes has quit [Quit: Leaving]
<tautologico>
you realize in OCaml is not idiomatic to write types in function definitions, right?
<Drup>
yes
<tautologico>
exactly the same thing
<tautologico>
and it's the recommended style for control structures
<tac_>
I suppose with the modules, it's not as bad as it is in haskell
<Drup>
tac_: signatures are usually put in .mli
<tac_>
but I don't care for what Hindley Milner does to a language
<tac_>
right
<Drup>
and inference is bad in haskell because of type classes, not because of HM :)
<tautologico>
for any nontrivial program you will use the module system anyways
<tautologico>
type classes and the thousands of GHC extensions
<tautologico>
type inference in ML languages works quite well
<Drup>
(well, bad is not the right word, but let's say non-optimal)
<tac_>
Drup: classes definitely make life pretty unreasonable when you have to do prolog in addition to H-M
<tac_>
:)
<tac_>
I just prefer to force all top-level bindings to have an explicit annotation
<tac_>
Which the .mli does, but the .mli puts it somewhere else.
<tac_>
not right before the definition.
<Drup>
yes
<Drup>
also, the purpose of mli is not to force the type of a definition
<Drup>
it's to expose an interface
<tautologico>
yes
<tac_>
yeah
<Drup>
(and check that the implementation match the interface)
<tautologico>
but I'll start reading code by the mli's anyway, not straight to the implementation
<Drup>
same
<tautologico>
you can use tool support to see the types if you're reading the ml
<tac_>
yeah
<Drup>
I'm always a bit lost in haskell (and rust) libraries because of that :/
<tac_>
I don't know how the tool support is in Ocaml, but in Haskell, the situation is much worse than it should be.
<tac_>
If your code doesn't compile, you can't get the type information
<Drup>
tac_: merlin :]
<tac_>
and often the reason your code doesn't compile is because you messed up a type somewhere, and you NEED that information :P
<tac_>
but I'll keep that in mind that it's not idiomatic
<dmbaturin>
tac_: You also can specify the signature as "let foo : int -> int = fun x -> x + 1" which is hardly better. :)
<tac_>
right
boogie has quit [Remote host closed the connection]
martintrojer_ has joined #ocaml
pjdelport_ has joined #ocaml
johnelse has joined #ocaml
johnelse is now known as Guest846
mfp_ has joined #ocaml
xaimus_ has joined #ocaml
alinab has joined #ocaml
pjdelport has quit [Disconnected by services]
siddhart1v_away has joined #ocaml
pjdelport_ is now known as pjdelport
misv_ has joined #ocaml
zpe has quit [Remote host closed the connection]
philtom has joined #ocaml
zpe has joined #ocaml
martintrojer has quit [*.net *.split]
morphles has quit [*.net *.split]
siddharthv_away has quit [*.net *.split]
mfp has quit [*.net *.split]
robink has quit [*.net *.split]
cantstanya has quit [*.net *.split]
Guest1716 has quit [*.net *.split]
_habnabit has quit [*.net *.split]
seliopou has quit [*.net *.split]
bytbox has quit [*.net *.split]
xaimus has quit [*.net *.split]
kerneis has quit [*.net *.split]
alinab_ has quit [*.net *.split]
thizanne has quit [*.net *.split]
bjorkintosh has quit [*.net *.split]
misv has quit [*.net *.split]
ggole has quit []
kerneis has joined #ocaml
tane has quit [Quit: Verlassend]
zpe has quit [Ping timeout: 272 seconds]
thizanne has joined #ocaml
omqal has joined #ocaml
bjorkintosh has joined #ocaml
cantstanya has joined #ocaml
madroach has quit [Read error: Connection reset by peer]
willy__ has joined #ocaml
madroach has joined #ocaml
willy_ has quit [Ping timeout: 260 seconds]
axiles has quit [Remote host closed the connection]
chambart has quit [Ping timeout: 272 seconds]
Khady_ has joined #ocaml
j0sh_ has joined #ocaml
Leonidas1 has joined #ocaml
zozozo_ has joined #ocaml
jlouis has joined #ocaml
johnelse_ has joined #ocaml
Antoine60 has joined #ocaml
rsnous has joined #ocaml
bitbckt_ has joined #ocaml
warrick has joined #ocaml
rwmjones has quit [Excess Flood]
zozozo has quit [Write error: Broken pipe]
bitbckt has quit [Write error: Broken pipe]
Guest846 has quit [Write error: Broken pipe]
j0sh has quit [Write error: Broken pipe]
Khady has quit [Write error: Broken pipe]
jlouis_ has quit [Remote host closed the connection]
MercurialAlchemi has quit [Remote host closed the connection]
nickmeha1ry has quit [Remote host closed the connection]
Antoine59 has quit [Remote host closed the connection]
Leonidas has quit [Remote host closed the connection]
osnr has quit [Remote host closed the connection]
nickmeharry has joined #ocaml
rwmjones has joined #ocaml
MercurialAlchemi has joined #ocaml
girrig_ has joined #ocaml
thomasga1 has joined #ocaml
willy_ has joined #ocaml
WraithM has joined #ocaml
Khady has joined #ocaml
Khady has joined #ocaml
Khady has quit [Changing host]
madroach_ has joined #ocaml
gargawel has joined #ocaml
Cypi_ has joined #ocaml
msaegess1r has joined #ocaml
pollux__ has joined #ocaml
Khady_ has quit [*.net *.split]
madroach has quit [*.net *.split]
willy__ has quit [*.net *.split]
Cypi has quit [*.net *.split]
msaegesser has quit [*.net *.split]
thomasga has quit [*.net *.split]
Submarine has quit [*.net *.split]
tg has quit [*.net *.split]
pollux has quit [*.net *.split]
jerith has quit [*.net *.split]
girrig has quit [*.net *.split]
gargawel_ has quit [*.net *.split]
NoNNaN has quit [*.net *.split]
pollux__ is now known as pollux
Submarine has joined #ocaml
tg has joined #ocaml
Submarine has quit [Client Quit]
jerith has joined #ocaml
ontologiae has joined #ocaml
sh1ken has quit [Quit: Lost terminal]
ontologiae has quit [Ping timeout: 272 seconds]
shinnya has quit [Ping timeout: 246 seconds]
shinnya_ has joined #ocaml
teiresia1 has joined #ocaml
teiresias has quit [Ping timeout: 246 seconds]
jerith_ has joined #ocaml
mcclurmc_ has joined #ocaml
_2can_ has joined #ocaml
surply_p has joined #ocaml
samebchase has quit [Ping timeout: 246 seconds]
Ptishell has quit [Ping timeout: 246 seconds]
mcclurmc has quit [Ping timeout: 246 seconds]
jerith has quit [Ping timeout: 246 seconds]
hcarty has quit [Ping timeout: 246 seconds]
hcarty has joined #ocaml
xaimus_ has quit [Ping timeout: 246 seconds]
_2can has quit [Ping timeout: 246 seconds]
Intensity has quit [Ping timeout: 246 seconds]
WraithM has quit [Ping timeout: 278 seconds]
thomasga1 has quit [Quit: Leaving.]
samebchase has joined #ocaml
<Drup>
whitequark, jpdeplaix: which debian/ubuntu package do I need to be able to use the opam llvm package ?
ollehar has joined #ocaml
Intensity has joined #ocaml
<whitequark>
llvm-$VERSION-dev
<Drup>
does the opam package check the version or something ?
xaimus has joined #ocaml
<whitequark>
I think it will fail at configure
thomasga has joined #ocaml
<whitequark>
well, or at build step
<whitequark>
not really much of a difference :]
Leonidas1 is now known as Leonidas
Leonidas is now known as Guest50545
<Drup>
whitequark: an advice to be able to do this nicely under travis-I-don't-even-know-which-outdated-version-of-ubuntu-I'm-using ?
<whitequark>
uhhh what are you trying to do?
<Drup>
setting up travis for llvmgraph
<whitequark>
llvm package should have a corresponding depext
<whitequark>
so ask opam for depexts
<Drup>
it will pick up the correct version ?
<whitequark>
$ opam install llvm -e debian,x86
<whitequark>
llvm-3.5-dev
<whitequark>
it will pick up the one that is necessary for the selected llvm package version without any consideration whatsoever to the platform's package manager
Guest50545 is now known as Leonidas
Leonidas has quit [Changing host]
Leonidas has joined #ocaml
<jpdeplaix>
Drup: it fails with llvm 3.5 :/
<jpdeplaix>
I don't know why
<jpdeplaix>
(with travis only)
<tac_>
Does Ocaml have any notion of a tail call "underneath" a constructor?
WraithM has joined #ocaml
<Drup>
jpdeplaix: well, probably because 3.5 is not packaged on ubuntu ...
<Drup>
tac_: no
* tac_
is struck with this curiosity watching the 1986 SICP lectures.
<Drup>
tac_: not yet, to be precise, some people want it
<jpdeplaix>
(or more precisely, with ubuntu precise only)
<jpdeplaix>
Drup: I use the llvm ubuntu repository
<tac_>
I'm happy to hear that I noticed something other people have also noticed :)