ChanServ changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.02.1 announcement at http://ocaml.org/releases/4.02.html | Public channel logs at http://irclog.whitequark.org/ocaml
c355E3B has quit [Quit: Leaving]
keen____ has quit [Read error: Connection reset by peer]
t4nk394 has joined #ocaml
<t4nk394> let x = 10 ;;
<t4nk394> let x = 20 ;;
<t4nk394> How is 'x' considered immutable if i can redefine it like above
<t4nk394> newb question sorry
abbe has quit [Read error: Connection reset by peer]
abbe has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest35720
mcclurmc_ has joined #ocaml
<haesbaert> ahA, seems I'm finally getting the hang of it
Guest35720 has quit [Ping timeout: 256 seconds]
<tokenrove> t4nk394: the old x is shadowed. if you have a function in between that uses x, it will always use the old value of x.
mcclurmc has quit [Ping timeout: 264 seconds]
<t4nk394> tokenrove, i don't get it
<t4nk394> # let x = 10 ;; val x : int = 10 # let x = 20 ;; val x : int = 20 # let y = x + 1 ;; val y : int = 21 #
<t4nk394> y is getting the new value of x above
<tokenrove> yes, but if you defined y in between, it would have the old value. it's more clear if you have a function. let's say you want x to act like a global variable for the position of something, and have a function redraw that draws an object using x as the position.
<tokenrove> you call redraw, and then you say let x = x + 10;; and call redraw again. but your object doesn't move.
<tokenrove> you have defined a new x for all the code that follows; you haven't changed the old x.
jbrown has quit [Ping timeout: 244 seconds]
<t4nk394> thank you tokenrove
<t4nk394> i will test your theory in utop
mcclurmc has joined #ocaml
mcclurmc_ has quit [Ping timeout: 272 seconds]
gperetin has quit [Ping timeout: 276 seconds]
swgillespie has joined #ocaml
gperetin has joined #ocaml
ontologiae has quit [Ping timeout: 252 seconds]
jbrown has joined #ocaml
rgrinberg has quit [Ping timeout: 255 seconds]
kushal has joined #ocaml
t4nk394 has quit [Ping timeout: 246 seconds]
Tekilla has quit [Ping timeout: 250 seconds]
rgrinberg has joined #ocaml
nullcat_ has joined #ocaml
WraithM has quit [Quit: leaving]
AltGr has joined #ocaml
struktured has joined #ocaml
ollehar has joined #ocaml
lordkryss has quit [Quit: Connection closed for inactivity]
The_Mad_Pirate has joined #ocaml
ollehar has quit [Quit: ollehar]
cross has joined #ocaml
<mcc> Hm.
<mcc> I just found a typographical error in the Caml Light manual.
<mcc> Is... .... nobody cares in this decade, do they
<struktured> doesn't hurt to send an email or something I guess..
BitPuffin has quit [Ping timeout: 252 seconds]
ygrek has joined #ocaml
ygrek has quit [Ping timeout: 252 seconds]
Ayyy has joined #ocaml
<struktured> the "pow" function, f(x,y)=x^y does not exist in ocaml stdlib right?
ygrek has joined #ocaml
Ayyy has left #ocaml [#ocaml]
cesar_ has joined #ocaml
cesar_ is now known as Guest31057
Guest31057 has quit [Ping timeout: 256 seconds]
rgrinberg has quit [Ping timeout: 248 seconds]
nullcat_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
nullcat_ has joined #ocaml
rgrinberg has joined #ocaml
ygrek has quit [Ping timeout: 252 seconds]
rgrinberg has quit [Ping timeout: 250 seconds]
ygrek has joined #ocaml
darkf has joined #ocaml
dysfunc-pyon-al has quit [Ping timeout: 252 seconds]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
<cojy_> is there any way to check for uncaught exceptions at compile time?
dysfunc-pyon-al has joined #ocaml
Algebr has joined #ocaml
<tokenrove> struktured: it does exist for complex and num
<tokenrove> oh, and of course ** is pow for floats.
<Algebr> Drup: I have a strange issue with ocisgen, hoping you're on.
mcclurmc_ has joined #ocaml
mcclurmc has quit [Ping timeout: 255 seconds]
c74d has quit [Read error: Connection reset by peer]
idegen has quit [Ping timeout: 250 seconds]
c74d has joined #ocaml
kushal has quit [Ping timeout: 248 seconds]
seanmcl has joined #ocaml
seanmcl has quit [Ping timeout: 244 seconds]
dysfunc-pyon-al has quit [Quit: My morality has evaporated under the harsh UV light.]
IbnFirnas has quit [Ping timeout: 244 seconds]
IbnFirnas has joined #ocaml
<struktured> tokenrove: thanks..is it typical to whip up your own over floats directly or depend on the num module insteaad?
moei has quit [Read error: Connection reset by peer]
<struktured> tokenrove: oh crap ** is pow? lol forgot
moei has joined #ocaml
<struktured> tokenrove: thanks a bunch
<struktured> cojy_: not that I know of, since exn is an open sum type its inherently uncheckable unless each function signature has a strict scoping defined
cesar_ has joined #ocaml
cesar_ is now known as Guest44807
Guest44807 has quit [Ping timeout: 250 seconds]
ygrek has quit [Ping timeout: 248 seconds]
ygrek has joined #ocaml
ygrek has quit [Remote host closed the connection]
blech__ has joined #ocaml
blech_ has quit [Ping timeout: 244 seconds]
mcclurmc has joined #ocaml
mcclurmc_ has quit [Ping timeout: 264 seconds]
blech__ has left #ocaml ["Leaving"]
seliopou has quit [Ping timeout: 264 seconds]
seanmcl has joined #ocaml
destrius has joined #ocaml
ggole has joined #ocaml
<destrius> is there a standard function in Core that does a map and a fold at the same time? like one with type 'a list -> ~(init: 'accum) -> ~(f: 'accum -> 'a -> 'accum * 'b) -> 'accum * 'b list
<destrius> and ideally one for Map
<destrius> i know it can be done using just fold, but it's a little more inconvenient
lewis1711 has joined #ocaml
IbnFirnas has quit [Ping timeout: 244 seconds]
IbnFirnas has joined #ocaml
<struktured> not that I can see in Core, but containers if you're willing to use it has scan aka fold_map
<AltGr> cojy_, there is work on the subject, see for example François Pessaux's thesis, but it's related to abstract interpretation and I don't think there is anything readily usable at the moment
Algebr has quit [Ping timeout: 244 seconds]
seanmcl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
swgillespie has joined #ocaml
MercurialAlchemi has joined #ocaml
<ggole> destrius: destructuring should make that pretty easy with fold_right
cesar_ has joined #ocaml
cesar_ is now known as Guest73854
Sorella has quit [Quit: Connection closed for inactivity]
Guest73854 has quit [Ping timeout: 265 seconds]
keen_____ has quit [Read error: Connection reset by peer]
keen_ has joined #ocaml
ollehar has joined #ocaml
<lewis1711> is a crossplatform commandline app in ocaml feasible? I mean I am only testing it in linux. is it a huge amount of pain that will require cygwin?
keen_ has quit [Read error: Connection reset by peer]
keen_ has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 255 seconds]
ygrek has joined #ocaml
marynate has joined #ocaml
matason has joined #ocaml
mietek has joined #ocaml
troydm has quit [Ping timeout: 264 seconds]
psy_ has quit [Ping timeout: 250 seconds]
pyon has joined #ocaml
<mietek> Anyone interested in the history of total functional programming languages?
zump has joined #ocaml
<zump> Anyone alive?
<adrien> Jesus Christ since yesterday
<rks`> .
matason has quit [Ping timeout: 265 seconds]
Simn has joined #ocaml
ollehar has quit [Ping timeout: 245 seconds]
Nijikokun has joined #ocaml
Nijikokun has quit [Max SendQ exceeded]
Nijikokun has joined #ocaml
Nijikokun has quit [Max SendQ exceeded]
Gama11 has joined #ocaml
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
AlexRussia has quit [Quit: WeeChat 1.2-dev]
cesar_ has joined #ocaml
cesar_ is now known as Guest93460
Guest93460 has quit [Ping timeout: 252 seconds]
AlexRussia has joined #ocaml
<apache2> struktured: ^ is usually xor (when dealing with programming languages)
<dmbaturin> For the record, in pascal ^ is pointer dereference. :)
<dmbaturin> (And it's unary there)
<def`> (And postfix)
<ygrek> ^ is return in smalltalk
* ygrek wonders how much sense carries the word "usually" when dealing with programming languages
ollehar has joined #ocaml
rgrinberg has quit [Ping timeout: 264 seconds]
<zump> I'm going crazy figuring out why this doesnt work. http://pastebin.com/jFMT5R53. The error is "This expression has type int but an exrepssion was expected of type Core.Std.String.t = string"
<zump> Can anyone help
<dmbaturin> Which exact expression?
<zump> (Caml.List.length ins_list)
<zump> dmbaturin:
<ggole> Hard to say without seeing the data type that defines Instr
dav_ has joined #ocaml
<ggole> Hmm
dav has quit [Ping timeout: 264 seconds]
<ggole> That's strange
<ggole> I can only guess it's something to do with the printf
<zump> Removed it so that both case just returns stmt. Same error
<ggole> :/
<ggole> Dunno.
<ggole> I suppose I would proceed from here by adding some type annotations to see if something is other than expected
<dmbaturin> Sometimes it helps to parenthesize everything as you want it to be.
Hannibal_Smith has joined #ocaml
kushal has joined #ocaml
xian has joined #ocaml
<apache2> smalltalk, pascal and postfix have got to be the definition of "usual"
<apache2> everyone uses those all the time, that most definitely what you refer to if you say "usually"
<zump> ffs
<zump> it compiles when not using Core..
<dmbaturin> There's a lot of delphi code still being worked upon.
<zump> Whats the verdict on Core.. im using the book real world ocaml to learn ocaml..
<zump> ggole:
<dmbaturin> zump: Yeah, when reading RWO, watch out for coreness.
<dmbaturin> (Or the correct term is "coreism"? :)
<zump> :( The doco seems hard to find.. Did they change the meaning of > or something
<dmbaturin> zump: You can see the type of a function by typing it in the repl without arguments ("Core.Whatever.(>);;").
<zump> String.trim doesnt work :/
<dmbaturin> How do you expect it to work?
<zump> remove all whitespace
<dmbaturin> utop # String.trim "\t\n fgsfds " ;;
<dmbaturin> - : string = "fgsfds"
<dmbaturin> Works for me.
<zump> dmbaturin: this doesnt work for me http://pastebin.com/X8Lrny7G
<ggole> Why are you using format?
<zump> To print the line to stdout?
<ggole> Format is for pretty-printing, you would usually use Printf.printf (or just print_string)
<ggole> Uh, this isn't your problem though
<ggole> Also: what do you mean by "doesn't work"?
<zump> ggole: The output is the original string without any whitespace(newline/tab/space) removed
<ggole> String.trim removes those from *the ends*
<zump> argh, reading comprehension fail
<dmbaturin> Yeah, trim doesn't remove _all redundant whitespace_.
<dmbaturin> It's not supposed to.
<ggole> If you want something to squeeze whitespace, you'll have to implement that yourself or find a library
<dmbaturin> It's easy to implement, but the notion of redundant whitespace is different for different tasks, so I doubt a one size fits all function can exist.
rgrinberg has joined #ocaml
<apache2> alternatively you can do your own function based on String.map
kakadu has joined #ocaml
govg has quit [Quit: leaving]
rgrinberg has quit [Ping timeout: 246 seconds]
<zump> Is there any way to use only the string library from Core?
<kakadu> Not really
<kakadu> maybe extlib will rescue you
mcc has quit [Quit: This computer has gone to sleep]
<Leonidas> or batteries
wwilly has joined #ocaml
milosn has quit [Ping timeout: 250 seconds]
kushal has quit [Ping timeout: 246 seconds]
ollehar has quit [Ping timeout: 250 seconds]
The_Mad_Pirate has quit [Quit: Konversation terminated!]
cesar_ has joined #ocaml
cesar_ is now known as Guest68306
Guest68306 has quit [Ping timeout: 256 seconds]
tane has joined #ocaml
larhat has quit [Quit: Leaving.]
wwilly has left #ocaml ["Leaving"]
Hannibal_Smith has quit [Quit: Leaving]
BitPuffin has joined #ocaml
dav has joined #ocaml
dav_ has quit [Ping timeout: 264 seconds]
larhat has joined #ocaml
Haudegen has quit [Ping timeout: 248 seconds]
milosn has joined #ocaml
ontologiae has joined #ocaml
Haudegen has joined #ocaml
LnL has joined #ocaml
milosn has quit [Read error: Connection reset by peer]
milosn has joined #ocaml
milosn has quit [Read error: Connection reset by peer]
rgrinberg has joined #ocaml
milosn has joined #ocaml
rgrinberg has quit [Ping timeout: 272 seconds]
milosn has quit [Read error: Connection reset by peer]
jbrown has quit [Remote host closed the connection]
milosn has joined #ocaml
freling has joined #ocaml
yomimono has joined #ocaml
milosn has quit [Ping timeout: 252 seconds]
_andre has joined #ocaml
milosn has joined #ocaml
milosn has quit [Read error: Connection reset by peer]
milosn has joined #ocaml
milosn has quit [Read error: Connection reset by peer]
milosn has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest46045
Guest46045 has quit [Ping timeout: 265 seconds]
milosn has quit [Read error: Connection reset by peer]
Choups314 has joined #ocaml
milosn has joined #ocaml
Choups314 has quit [Client Quit]
Choups314 has joined #ocaml
ollehar has joined #ocaml
s1n4 has joined #ocaml
milosn has quit [Read error: Connection reset by peer]
milosn has joined #ocaml
BitPuffin has quit [Ping timeout: 265 seconds]
freling has quit [Quit: Leaving.]
Choups314 has quit [Ping timeout: 250 seconds]
yomimono has quit [Ping timeout: 252 seconds]
Choups314 has joined #ocaml
dav has quit [Ping timeout: 252 seconds]
dav has joined #ocaml
ygrek has quit [Remote host closed the connection]
milosn has quit [Ping timeout: 272 seconds]
ygrek has joined #ocaml
ygrek has quit [Ping timeout: 255 seconds]
Choups314 has quit [Ping timeout: 252 seconds]
Choups314 has joined #ocaml
AltGr has left #ocaml [#ocaml]
milosn has joined #ocaml
Choups314 has quit [Ping timeout: 264 seconds]
freling has joined #ocaml
rgrinberg has joined #ocaml
s1n4 has quit [Ping timeout: 265 seconds]
rgrinberg has quit [Ping timeout: 264 seconds]
ollehar1 has joined #ocaml
ollehar has quit [Ping timeout: 264 seconds]
milosn has quit [Read error: Connection reset by peer]
ontologiae has quit [Ping timeout: 264 seconds]
milosn has joined #ocaml
dav has quit [Ping timeout: 264 seconds]
dav has joined #ocaml
milosn has quit [Read error: Connection reset by peer]
badkins has joined #ocaml
milosn has joined #ocaml
seanmcl has joined #ocaml
idegen has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest37826
Guest37826 has quit [Ping timeout: 245 seconds]
milosn has quit [Ping timeout: 248 seconds]
Haudegen has quit [Ping timeout: 256 seconds]
kushal has joined #ocaml
cdidd has quit [Read error: Connection reset by peer]
cdidd has joined #ocaml
milosn has joined #ocaml
idegen has left #ocaml [#ocaml]
rgrinberg has joined #ocaml
Haudegen has joined #ocaml
Hannibal_Smith has joined #ocaml
rgrinberg has quit [Ping timeout: 276 seconds]
freling has quit [Quit: Leaving.]
shinnya has joined #ocaml
seliopou has joined #ocaml
<Meths> Which version of binutils does ocaml require?
seangrove has joined #ocaml
freling has joined #ocaml
<adrien> I'm not aware of a specific requirement
<adrien> do you have an issue?
ollehar1 has quit [Ping timeout: 256 seconds]
matason has joined #ocaml
ontologiae has joined #ocaml
<adrien> Meths: can you run the command by yourself (that's from one sub-directory but I can't tell which one) with an added -v ?
seliopou has quit [*.net *.split]
shinnya has quit [*.net *.split]
robink has quit [*.net *.split]
tianon has quit [*.net *.split]
_obad_ has quit [*.net *.split]
meteo has quit [*.net *.split]
micrypt has quit [*.net *.split]
w0rp has quit [*.net *.split]
wagle has quit [*.net *.split]
Ptival has quit [*.net *.split]
osheeta has quit [*.net *.split]
orbitz has quit [*.net *.split]
myst|work has quit [*.net *.split]
reynir has quit [*.net *.split]
jerith has quit [*.net *.split]
mahem1 has quit [*.net *.split]
eikke has quit [*.net *.split]
_2can has quit [*.net *.split]
tobiasBora has quit [*.net *.split]
pippijn has quit [*.net *.split]
xian has quit [*.net *.split]
adrien_znc has quit [*.net *.split]
fds has quit [*.net *.split]
srax has quit [*.net *.split]
michatotol has quit [*.net *.split]
Armael has quit [*.net *.split]
Hannibal_Smith has quit [*.net *.split]
kushal has quit [*.net *.split]
dav has quit [*.net *.split]
cross has quit [*.net *.split]
struktured has quit [*.net *.split]
abbe has quit [*.net *.split]
myst has quit [*.net *.split]
sigjuice has quit [*.net *.split]
alpen has quit [*.net *.split]
lopex has quit [*.net *.split]
yac has quit [*.net *.split]
SuperNoeMan has quit [*.net *.split]
zozozo has quit [*.net *.split]
mawuli has quit [*.net *.split]
bitbckt has quit [*.net *.split]
contempt has quit [*.net *.split]
dsheets has quit [*.net *.split]
averell has quit [*.net *.split]
Cypi has quit [*.net *.split]
robbert has quit [*.net *.split]
welterde has quit [*.net *.split]
Drup has quit [*.net *.split]
rbocquet has quit [*.net *.split]
xaimus has quit [*.net *.split]
inr_ has quit [*.net *.split]
bacam has quit [*.net *.split]
Mandus has quit [*.net *.split]
larhat has quit [*.net *.split]
IbnFirnas has quit [*.net *.split]
monoprotic has quit [*.net *.split]
josch has quit [*.net *.split]
johnelse has quit [*.net *.split]
Intensity has quit [*.net *.split]
kandu has quit [*.net *.split]
hcarty_ has quit [*.net *.split]
Kensan has quit [*.net *.split]
hnrgrgr_ has quit [*.net *.split]
def` has quit [*.net *.split]
ygu has quit [*.net *.split]
mrvn has quit [*.net *.split]
riveter has quit [*.net *.split]
The_third_man has quit [*.net *.split]
pollux has quit [*.net *.split]
marynate has quit [*.net *.split]
maufred has quit [*.net *.split]
teiresias has quit [*.net *.split]
hellome has quit [*.net *.split]
PM has quit [*.net *.split]
walt has quit [*.net *.split]
maurer has quit [*.net *.split]
ski has quit [*.net *.split]
vbmithr has quit [*.net *.split]
astocko has quit [*.net *.split]
shinnya_ has joined #ocaml
<Meths> I just did that on a hunch about that define...
<Meths> jt asmrun (testng2.jt): gcc -c -DMODEL_default -o i386.o i386.S
<Meths> jt asmrun (testng2.jt):
averell has joined #ocaml
<Meths> Seems the solaris define generates code that gas doesn't like
Hannibal_Smith has joined #ocaml
kushal has joined #ocaml
SuperNoeMan has joined #ocaml
cross has joined #ocaml
inr_ has joined #ocaml
dsheets has joined #ocaml
Cypi has joined #ocaml
Mandus has joined #ocaml
zozozo has joined #ocaml
mawuli has joined #ocaml
alpen has joined #ocaml
abbe has joined #ocaml
lopex has joined #ocaml
robbert has joined #ocaml
Drup has joined #ocaml
myst has joined #ocaml
rbocquet has joined #ocaml
welterde has joined #ocaml
bacam has joined #ocaml
xaimus has joined #ocaml
bitbckt has joined #ocaml
contempt has joined #ocaml
sigjuice has joined #ocaml
yac has joined #ocaml
johnelse has joined #ocaml
josch has joined #ocaml
ygu has joined #ocaml
Kensan has joined #ocaml
The_third_man has joined #ocaml
mrvn has joined #ocaml
def` has joined #ocaml
hcarty_ has joined #ocaml
riveter has joined #ocaml
pollux has joined #ocaml
hnrgrgr_ has joined #ocaml
Intensity has joined #ocaml
IbnFirnas has joined #ocaml
larhat has joined #ocaml
monoprotic has joined #ocaml
kandu has joined #ocaml
srcerer has quit [Ping timeout: 250 seconds]
<adrien> it's basically what the message says; I'm not sure what to do after that
seliopou has joined #ocaml
xian has joined #ocaml
robink has joined #ocaml
tianon has joined #ocaml
_obad_ has joined #ocaml
mahem1 has joined #ocaml
meteo has joined #ocaml
micrypt has joined #ocaml
w0rp has joined #ocaml
wagle has joined #ocaml
Ptival has joined #ocaml
osheeta has joined #ocaml
orbitz has joined #ocaml
myst|work has joined #ocaml
reynir has joined #ocaml
jerith has joined #ocaml
eikke has joined #ocaml
_2can has joined #ocaml
tobiasBora has joined #ocaml
pippijn has joined #ocaml
adrien_znc has joined #ocaml
fds has joined #ocaml
srax has joined #ocaml
michatotol has joined #ocaml
Armael has joined #ocaml
MercurialAlchemi has joined #ocaml
marynate has joined #ocaml
maufred has joined #ocaml
walt has joined #ocaml
teiresias has joined #ocaml
PM has joined #ocaml
maurer has joined #ocaml
ski has joined #ocaml
vbmithr has joined #ocaml
astocko has joined #ocaml
seliopou has quit [*.net *.split]
dav has joined #ocaml
seliopou has joined #ocaml
mcclurmc_ has joined #ocaml
ontologiae has quit [Ping timeout: 256 seconds]
mcclurmc has quit [Ping timeout: 246 seconds]
Sorella has joined #ocaml
Algebr has joined #ocaml
badkins_ has joined #ocaml
rgrinberg has joined #ocaml
badkins has quit [Ping timeout: 250 seconds]
darkf has quit [Quit: Leaving]
agarie has joined #ocaml
ollehar has joined #ocaml
lewis1711 has quit [Quit: Ex-Chat]
Algebr has quit [Ping timeout: 246 seconds]
matason has quit [Quit: Leaving...]
nojb has joined #ocaml
ollehar has quit [Ping timeout: 265 seconds]
milosn has quit [Ping timeout: 250 seconds]
ygrek has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest21408
freling has quit [Quit: Leaving.]
Guest21408 has quit [Ping timeout: 245 seconds]
araujo has joined #ocaml
araujo has joined #ocaml
<Meths> adrien: Found the solution http://pastie.org/private/3itevpslopsyf1dqtkz7w
<adrien> Meths: good to hear; can you open a bug report about that?
Hannibal_Smith has quit [Quit: Leaving]
mcclurmc_ has quit [Read error: Connection reset by peer]
mcclurmc has joined #ocaml
ollehar has joined #ocaml
Algebr has joined #ocaml
agarie has quit [Remote host closed the connection]
<adrien> Meths: thanks!
agarie has joined #ocaml
rgrinberg has quit [Ping timeout: 255 seconds]
rgrinberg has joined #ocaml
agarie has quit [Ping timeout: 240 seconds]
troydm has joined #ocaml
Choups314 has joined #ocaml
Choups314 has quit [Quit: Leaving]
matason has joined #ocaml
freling has joined #ocaml
lanii has joined #ocaml
matason has quit [Quit: Leaving...]
badkins_ is now known as badkins
_andre has quit [Quit: leaving]
milosn has joined #ocaml
badkins has quit []
_andre has joined #ocaml
WraithM has joined #ocaml
Haudegen has quit [Ping timeout: 250 seconds]
ygrek has quit [Ping timeout: 264 seconds]
jwatzman|work has joined #ocaml
uris77 has joined #ocaml
Haudegen has joined #ocaml
yomimono has joined #ocaml
agarie has joined #ocaml
agarie has quit [Ping timeout: 250 seconds]
agarie has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest32742
Haudegen has quit [Ping timeout: 256 seconds]
Guest32742 has quit [Ping timeout: 245 seconds]
s1n4 has joined #ocaml
Haudegen has joined #ocaml
Algebr has quit [Read error: No route to host]
pusztito has joined #ocaml
<pusztito> hi
Anarchos has joined #ocaml
<ggole> o/
marynate has quit [Quit: Leaving]
larhat has quit [Quit: Leaving.]
Gama11_ has joined #ocaml
badkins has joined #ocaml
Gama11 has quit [Ping timeout: 248 seconds]
MrScout has joined #ocaml
agarie has quit [Remote host closed the connection]
s1n4 has quit [Ping timeout: 264 seconds]
seanmcl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
kdef has joined #ocaml
<ollehar> what's up with core and `{|`?
<ollehar> can't have it in comment, even.
<companion_cube> it's now a string literal
<companion_cube> and since OCaml parses comments, it might fail on comments that do not balance {| properly
<ollehar> eh?
<companion_cube> in 4.02, extension points add the syntax {foo| ... |foo} to represent strings that should be transformed by a ppx
agarie has joined #ocaml
<companion_cube> for instance, an hypothetic {re| a.*b |re}
<ollehar> oh no
<companion_cube> or {sql|select foo from bar|sql}
<ollehar> how to escape?
<companion_cube> I have no idea
<def`> how to escape what :/ ?
<def`> in a comment, you'll have to close it properly
<nojb> are bigarrays always initialised to zero ?
<mrvn> no
<nojb> thanks
<ollehar> def`: escape ppx
<ollehar> will do some googling
ontologiae has joined #ocaml
michatotol has quit [K-Lined]
<ollehar> but I haven't even enabled ppx??
<mrvn> ollehar: I think that is always enabled
pusztito has left #ocaml ["Leaving"]
<ollehar> ok
<Drup> it's part of the normal syntax now, you can't "disable" the fact that {| starts a string literal
<mrvn> # let foo x = x (* {| *);;
<mrvn> val foo : 'a -> 'a = <fun>
<mrvn> That fails with 4.02?
<Drup> yes
<Drup> ollehar: just put a \ or even a space between { and |
<mrvn> I guess it is so (* {| *) |} *) works
<Drup> yes
<ggole> Parsing the comments -_-
<Drup> ggole: it's the case since basically forever in ocaml
<mrvn> I miss a // in ocaml
<ggole> It should be opt in with a simple comment format
<ggole> (** this is parsed *) (* this isn't *) or something
<ggole> I think I idly bitched about that the last time this came up
<Drup> ggole: you are missing the point
<companion_cube> the point is nested comments, afaict
<Drup> let x = "(*" <- valid code
<companion_cube> so that you can comment code without worrying
<mrvn> companion_cube: and simple comments wouldn't allow nesting
<Drup> let x = "*)" <- more interesting valid code
<def`> nojb: bigarrays are really just malloced, so what you get will really depend on the host -- you can't make assumptions
<ggole> The point is that having to arse about with code fragments in regular comments rather than just type what you want is a waste of time
<nojb> def`: thanks
<Drup> ggole: and you want to be able to comment any piece of code reasonably
<mrvn> ggole: to be fair how often do you have incomplete code fragments in a comment?
<Drup> ggole: err, it's only for string delimiters
<Drup> not full code
<ggole> Well, emacs does that for me
<ggole> Maybe I'm spoiled in that regard
<ggole> let x = "*)" => (* let x = "*\)" *)
<mrvn> ggole: let x = "*\)" ==> (* let x = "*\)" *) ==> let x = "*)" on un-comment
<ollehar> Drup: actually I did this in my comment {this|and_this}
BitPuffin has joined #ocaml
<ggole> mrvn: nope, that's handled properly
<Drup> ollehar: yeah, you are not the only one
<ollehar> spaces helped, though
<mrvn> ggole: it will be confusing for any non emacs user, or emacs user without your macro
<Drup> it's by default, but I wonder how recent it is.
<ggole> It's the standard ocaml mode...
<mrvn> ggole: what's the key shortcut for it?
<ggole> M-; or whatever the regular comment command is
<Drup> ggole: I doubt it's the ocaml mode
<Drup> rather, tuareg says "comments are (* *)" and emacs is doing some stuff
<mrvn> Drup: ocaml mode just overloads how commenting looks like
<ggole> Sure
<mrvn> M-; is realy ugly in C
<mrvn> /* void foo() { */
<mrvn> /* /\* bla *\/ */
<mrvn> /* } */
<ggole> Yeah, it does things per-line
<ggole> Which eases editing but is undeniably fugly
<mrvn> It should start with /*, then * per line or nothing and end with */
<ggole> That fails on uncommenting
seanmcl has joined #ocaml
<ggole> It might be strange, but emacs is doing the right thing
uris77 has quit [Quit: leaving]
<ggole> You can easily uncomment one line in the middle and everything works
<mrvn> ggole: I can do that with: */ line; /*
Hannibal_Smith has joined #ocaml
<mrvn> emacs is just not smart enough to make nice looking comments
<ggole> It doesn't matter whether commented out code looks nice
<mrvn> I tend to use "#if 0 ... endif" to comment out code in C
<cmtptr> I tend to just delete
<mrvn> cmtptr: not for debugging
<cmtptr> oh, well for that I use #if 0 too
<Drup> mrvn: "Hey, I have a nice little tool adapted for the purpose, but I prefer to use a shotgun, it will probably work too, in the end"
<Drup> (wrt to #if 0 ...")
ollehar has quit [Quit: ollehar]
<cmtptr> what is the nice tool adapted for the purpose in this case?
<mrvn> Drup: using /* manualy sucks, using emacs M-; makes the code horrible and breaks indentation.
<Drup> comments.
<mrvn> ocamls nested comments are much nicer there. you can just comment out any valid code.
yomimono has quit [Ping timeout: 244 seconds]
<thizanne> isn't your favourite ocaml debugging tool Printf Drup ?
<Meths> Seems 32 is fine but the 64 bit version needs a bit more work. Anyone know where to look for the issue here: http://pastie.org/private/gpwexg15nuazmissvgwkcg
<Drup> thizanne: 1) not really 2) ocamldebbuger is neither nice, nor little. :3
<Meths> Everything seems to have picked up 64 bit stuff in the configure but somewhere ocamlrun is trying to output a 32bit elf.
<adrien> Meths: are you building two architectures at once?
<Meths> One after the other in separate directories, isolated copies of the source tree.
claudiuc has joined #ocaml
<thizanne> fair point Drup
swgillespie has joined #ocaml
<adrien> Meths: do you have a full configure+build log?
BitPuffin has quit [Ping timeout: 244 seconds]
<Meths> Can do. Just redirect stdout/stderr or do you want a specific log file?
govg has joined #ocaml
<adrien> stdout/err
agarie has quit [Remote host closed the connection]
agarie has joined #ocaml
psy_ has joined #ocaml
matason has joined #ocaml
nojb has quit [Quit: nojb]
lobo has joined #ocaml
kakadu has quit [Quit: Page closed]
freling has quit [Quit: Leaving.]
rgrinberg has quit [Ping timeout: 252 seconds]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
cesar_ has joined #ocaml
cesar_ is now known as Guest94477
swgillespie has joined #ocaml
<Meths> adrien: Complete log http://95.131.251.5/~jt/build.log
swgillespie has quit [Client Quit]
seanmcl_ has joined #ocaml
seanmcl has quit [Read error: Connection reset by peer]
Guest94477 has quit [Ping timeout: 245 seconds]
swgillespie has joined #ocaml
claudiuc has quit [Remote host closed the connection]
<adrien> Meths: what does that do:
<adrien> cloning /home/jt/projects/ec-userland/ec-userland/components/ocaml/source/ocaml-4.02.1 to /home/jt/projects/ec-userland/ec-userland/components/ocaml/build/i86
<adrien> ?
<adrien> if there are symlinks or hardlinks involved, it's probably the issue
claudiuc has joined #ocaml
<adrien> (actually it looks very probable)
<Meths> That's the cloning the source to the build dir. You don't support out of tree builds very well.
<Meths> Okay, let me replace that with an rsync and double check.
<Meths> I'll run the 64bit configure line in a untarred source too to confirm.
matason_ has joined #ocaml
Haudegen has quit [Ping timeout: 248 seconds]
<adrien> "very well", that's an euphemism :)
matason has quit [Ping timeout: 264 seconds]
<Meths> adrien: Do you use the env variables CC/CXX at all?
<adrien> Meths: no, it's done through ./configure -cc gcc
<adrien> open configure in a text editor, scroll to line 85 and you'll see the list of possible options
<adrien> (yes, it's primitive but so far it's been too much work to change it=)
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<Meths> I've seen them, that's what I thought but just wanted to check as I just noticed they're mismatched.
<Meths> (The -cc was correct.)
swgillespie has joined #ocaml
matason_ has quit [Quit: Leaving...]
Nijikokun has joined #ocaml
Nijikokun has quit [Max SendQ exceeded]
axiles has joined #ocaml
Nijikokun has joined #ocaml
Nijikokun has quit [Max SendQ exceeded]
Haudegen has joined #ocaml
c355E3B has joined #ocaml
_andre has quit [Quit: leaving]
matason has joined #ocaml
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
swgillespie has joined #ocaml
kakadu has joined #ocaml
matason has quit [Ping timeout: 256 seconds]
kdef has quit [Ping timeout: 272 seconds]
kdef has joined #ocaml
matason has joined #ocaml
lanii has quit [Ping timeout: 244 seconds]
yomimono has joined #ocaml
rgrinberg has joined #ocaml
troydm has quit [Quit: What is hope? That all of your wishes and all of your dreams come true? (C) Rau Le Creuset]
troydm has joined #ocaml
troydm has quit [Client Quit]
troydm has joined #ocaml
rgrinberg has quit [Ping timeout: 246 seconds]
<adrien> trying something on openbsd
troydm has quit [Client Quit]
<adrien> installing git through ports
<adrien> it installs gmake
<adrien> it was a sane move from Xavier Leroy to want to stop bothering about non gnu makes probably
<Meths> adrien: Same thing, I told it to do two untars instead of any type of cloning at all. I also tried a standalone directory and just fed it 64 bit configure parameters.
troydm has joined #ocaml
<Meths> Is the partial linking parameter listed in the configure output?
<adrien> doesn't look like it is
c355E3B has quit [Quit: Leaving]
<adrien> you might want to check config/Makefile in both builds
<Meths> the partial ld in those Makefiles looked wrong, both as it was using a relative path which would give it the wrong linker and there was no bitness. Trying with a better parameter now...
rgrinberg has joined #ocaml
xificurC has joined #ocaml
WraithM has quit [Quit: leaving]
ggole has quit [Ping timeout: 250 seconds]
<Meths> Success.
<adrien> \o/
mengu has joined #ocaml
rgrinberg has quit [Ping timeout: 272 seconds]
MrScout has quit [Ping timeout: 245 seconds]
MrScout_ has joined #ocaml
agarie has quit [Remote host closed the connection]
xificurC has quit [Remote host closed the connection]
agarie has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 252 seconds]
axiles has quit [Remote host closed the connection]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
MercurialAlchemi has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest38630
swgillespie has joined #ocaml
Guest38630 has quit [Ping timeout: 245 seconds]
bjorkintosh has quit [Quit: Leaving]
bjorkintosh has joined #ocaml
mengu has quit [Remote host closed the connection]
larhat has joined #ocaml
ericwa has joined #ocaml
rgrinberg has joined #ocaml
Haudegen has quit [Ping timeout: 240 seconds]
Nijikokun has joined #ocaml
<Nijikokun> Hello, yesterday was my first time doing OCaml, and I made this https://github.com/Nijikokun/size as a learning process
<Nijikokun> I couldn't get the algorithm style one to work properly without Core however so I switched over to a for loop
nojb has joined #ocaml
<Drup> that's cool :)
<Drup> why floats ?
<Drup> you could (should ?) use ints.
<Drup> oh, nvm
<Nijikokun> for precision and one of the functions requires floats
<nojb> you can use Int64
<Drup> https://github.com/Nijikokun/size/blob/master/size.ml#L14-L15 this is really an if, use and if ;)
<Drup> an*
<Nijikokun> instead of matching?
<Nijikokun> any reason why to do an if over pattern matching?
<Drup> yes
<Drup> well, you are not matching any pattern
<Drup> an if better express what you are doing, which is testing a condition
Haudegen has joined #ocaml
<Nijikokun> ah okay
seanmcl_ has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<Drup> I feel like what you are really testing here is if v = 0
<Nijikokun> i could probably remove it, its legacy code to be honest
SGrondin has joined #ocaml
<Drup> how do you have legacy code in a 26 line program ? :D
<Nijikokun> it went through a few iterations xD
<SGrondin> <-- the guy who taught him the basics yesterday. I was surprised at how fast he learned it. I take the blame for suggesting a match instead of an if
<Drup> you should probably document (and change the name) of the "a" argument :p
<Nijikokun> it went from core -> no core w/ algorithm -> no core w/ loop
moei has quit [Quit: Leaving...]
<Drup> Funilly, I would have done the other way around
<SGrondin> I kept telling him that single letter arguments shouldn't be used used outside of one liners but noooo :P
MrScout_ has quit [Remote host closed the connection]
ygrek has joined #ocaml
<Drup> precompute the size of each prefix in an array or a list and test again those.
<Nijikokun> it felt more obscure and made everything feel right, I get your point about documenting it and probably changing it though drup
<Drup> instead of iteratively dividing
<Drup> but that's details
<Nijikokun> true, was trying to do the basics first, totally right though
<Drup> rgrinberg: back to ocsigenserver testing.
<rgrinberg> Drup: cool. any concrete bugs yet?
<Drup> (I felt like doing a break today, so I ended up playing with gadt ... yes I know)
<rgrinberg> Drup: I made a test for the empty chunk truncation stuff in cohttp and I can't reproduce :O
<rgrinberg> Drup: haha gadt's soothe the soul
seanmcl has joined #ocaml
<Drup> yeah, but I can't find a way to do what I want
<Drup> (I'm trying to do the equivalent of De bruijn indexes, but for tree of arithmetic expressions, so I need to append the list of holes at a point, and can't find a way to do that)
<Drup> rgrinberg: with dinosaure's fix for it, it goes slightly further
<Drup> but eliom's test are still broken
walt is now known as ggVGc
<Drup> ocsigenserver: ocsigen:ext: site "miniwiki" does not match url "/localhost%3A8080/miniwiki".
<Drup> fail.
seanmcl has quit [Ping timeout: 252 seconds]
Submarine has quit [Quit: Leaving]
<Drup> rgrinberg: if I want printers for the various cohttp types, were do I look ?
seanmcl has joined #ocaml
<rgrinberg> Drup: sexplib
<Drup> grrr
<rgrinberg> Yeah, we do want to improve that
<rgrinberg> kind of hard though without breaking everyone
<Drup> simple, add a to_string and a pp function, doesn't break anyone
<rgrinberg> you mean add 39823 to_string functions
<Drup> ah yes, sure, ppx.deriving show
<rgrinberg> But ppx doesn't work with camlp4 :/
<Drup> I know ...
<rgrinberg> Well more like camlp4 doesn't work with ppx
<smondet> Drup: it breaks for people who use the to_sexp functions :) (I do, but I would be happy to change my code when Cohttp gets rid of Camlp4)
<Drup> smondet: I mean, without removing the sexp functions
<Drup> which will happen, since core is working on ppxing core
<Drup> jst*
<rgrinberg> Drup: hopefully we can piggy back on that effort
<rgrinberg> cohttp will drop 4.01 altogether once the next version of OCaml is released probably
<Drup> that's cool
<Drup> it means I can drop 4.01 in eliom too :D
<rgrinberg> Drup: so for now we have to be in this camlp4 type conv limbo unfortunately
<Drup> I know
<rgrinberg> You can still debug cohttp effectively though so it's not so bad
<Drup> well, anyway, it'll be sexp for now
<companion_cube> is of_sexp actually used in cohtp?
<rgrinberg> companion_cube: not really
rwmjones_hol has quit [Read error: Network is unreachable]
MercurialAlchemi has quit [Ping timeout: 272 seconds]
rwmjones_hol has joined #ocaml
tane has quit [Quit: Verlassend]
Gama11_ has quit [Read error: Connection reset by peer]
seangrove has quit [Ping timeout: 245 seconds]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
govg has quit [Ping timeout: 272 seconds]
govg has joined #ocaml
kushal has quit [Ping timeout: 265 seconds]
matason has quit [Quit: Leaving...]
SGrondin has quit [Quit: Leaving.]
SGrondin has joined #ocaml
<Drup> dinosaure: programming tips
<Drup> when you are doing copy/paste more than once, something is wrong and you should think about it
lobo has quit [Quit: leaving]
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
<rgrinberg> Drup: what's he copy pasting?
<Drup> I'll show you the patch, you'll facepalm
<dmbaturin> Sometimes boilerplate is unavoidable though.
<Drup> in this case, it was
<Drup> really
<dmbaturin> Drup: I'm still to see the code in question so I'm just making a mostly correct statements for the sake of it. :)
<Drup> ocsigenserver: ocsigen:ext: host = localhost:8080 does not match 127.0.0.1
<Drup> wait, what ?
struktured has joined #ocaml
<dmbaturin> Drup: Now I agree that it was an advanced case of boilerplate proliferation.
Simn has quit [Read error: Connection reset by peer]
* Drup stares at dinosaure.
<SGrondin> haha :)
<nicoo> >>= return is indeed a bit silly :3
Haudegen has quit [Ping timeout: 245 seconds]
mengu has joined #ocaml
BitPuffin has joined #ocaml
ygrek has quit [Ping timeout: 250 seconds]
seanmcl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<rgrinberg> >|= (fun x -> x)
* Drup plugs ppx_deriving just for debuging
<rgrinberg> *yuck*
MrScout has joined #ocaml
<smondet> Drup: yeah, just drop 4.01 :)
<companion_cube> yeah, ≥ 4.03 only
<rgrinberg> Drup: optcomp + ppx + camlp4 \o/
<companion_cube> noes
<Drup> rgrinberg: cppo > optcomp
<rgrinberg> cppo + optcomp + ppx + camlp4 + revised syntax
<rgrinberg> better?
* Drup refuses to answer.
<companion_cube> :D
<companion_cube> I prefer indentation based syntax
olibjerd has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest30566
Guest30566 has quit [Ping timeout: 245 seconds]
Haudegen has joined #ocaml
kakadu has quit [Remote host closed the connection]
jwatzman|work has quit [Quit: jwatzman|work]
badkins has quit []
Hannibal_Smith has quit [Remote host closed the connection]
agarie has quit []
MrScout has quit [Remote host closed the connection]
mengu has quit [Remote host closed the connection]
<Drup> rgrinberg: help
<rgrinberg> Drup: with what?
<Drup> bug*
<Drup> when asked for the path, it returns the beginning too.
<Drup> I don't want to debug this thing T_T
<rgrinberg> "when asked for the path" - explain
<Drup> here is the type
<Drup> but for "localhost:8080/foo"
<Drup> the path returned is: [""; "127.0.0.1:8080"; "foo"]
<Drup> but everyone in ocsigen expect ["foo"]
manizzle has joined #ocaml
<companion_cube> why isn't there a more descriptive type? a record {base:string; path:string list} or something ?
<rgrinberg> Drup: you mean a tuple
<rgrinberg> companion_cube: that's how uri does it
<Drup> companion_cube: The only answer I have is swearing :<
<rgrinberg> Drup: the easiest thing is to stop trying to parse it manually
<rgrinberg> just get the components using Uri accessors
<Drup> rgrinberg: I agree, how do I retrieve individual parts with Uri ?
<rgrinberg> Uri.host, Uri.scheme, etc.
<Nijikokun> :( when you have to make helper methods to pipe
swgillespie has joined #ocaml
<rgrinberg> Drup: be careful though, there's an annoying bit with Uri taht it parses the damn query string eagerly
<Drup> it's incorect ?
<rgrinberg> it's correct query string <-> (string * (string list)) list is not bijective
<rgrinberg> b/c of some odd special cases
<rgrinberg> we'll fix that in uri eventually
<rgrinberg> for now you can just regex out the query string yourself with a much simpler regex (which is what ocsigen does)
<rgrinberg> or just re-encode and break the fools who rely on crazy corner cases
<rgrinberg> by re-encoding it encoded_of_query
<Drup> rgrinberg: well, for now, we go through Uri anyway
<rgrinberg> Drup: yeah
<rgrinberg> so it's fine
<Drup> I mean, there is a Uri.of_string earlier
<rgrinberg> just a little inefficient as well
<Drup> and then a parse ...
<rgrinberg> Ypep.
<Drup> >_>
<rgrinberg> I've been thinking about this and having a good representation for Uri is not that easy
<rgrinberg> you want the original string components in some cases
<rgrinberg> and you don't want to parse anything eagerly
<rgrinberg> companion_cube: any suggestions :D
averell has quit [Changing host]
averell has joined #ocaml
<Drup> rgrinberg: is there a garantie about the form of the path ?
<Drup> (starting with / splited by / ?)
nojb has quit [Quit: nojb]
<rgrinberg> handles that for you
<Drup> that's not what I'm asking
<rgrinberg> so what's the question :O
<Drup> if Uri.path always start with a /
<Drup> Url*
<Drup> and end without one
<Drup> can end with one, ok
<rgrinberg> Drup: yes it can end with one
<Drup> (why doesn't it returns a string list ?)
<rgrinberg> Drup: why should it?
<rgrinberg> Uri.path starts with / unless its empty
<Drup> In practice, it's a string list, splited by /
<Drup> it just means you have to resplit it
<rgrinberg> Drup: why should uri split it eagerly?
<rgrinberg> many cases where you don't care
<Drup> isn't it already splited inside ?
<rgrinberg> oh, i guess
<rgrinberg> I don't like that though :P
<Nijikokun> path is generally a string in uri libraries
<Nijikokun> its usually up to the developer to split it
<rgrinberg> Nijikokun: it's a string here too the fact that it's split is an implementation detail :P
<Drup> Nijikokun: the popular choice is not always the good one
* Drup gesture at the whole pile of programming languages
<Nijikokun> I guess I would need a good reason to not return a string
<rgrinberg> Nijikokun Drup: in reality both accessors should be available
<Drup> let me open a ticket to request it
<Nijikokun> usually a split path is called fragments or something of that sort
<rgrinberg> there's already a ticket for a raw query string courtesy of whitequark
<Drup> isn't the fragment the "#foo" part ?
<rgrinberg> Drup: but go ahead :D
<rgrinberg> Drup: yeah
<Nijikokun> yes drup i was talking more... parts fragments
<Nijikokun> semantics
<Drup> https://github.com/mirage/ocaml-uri/issues/53 doesn't that pretty much cover it ?
<rgrinberg> Drup: oh that's right
nojb has joined #ocaml
<Drup> rgrinberg: the get params are parsed eagerly, it seems ?
<Drup> (it's not the case in ocsigen)
<Drup> (there are lazys everywhere :O)
seanmcl has joined #ocaml
<Drup> rgrinberg: how do I get a (string * string) list for query ?
srcerer has joined #ocaml
srcerer has quit [Client Quit]
srcerer has joined #ocaml
rgrinberg has quit [Ping timeout: 255 seconds]
rgrinberg has joined #ocaml
<rgrinberg> Drup: Uri.query
<rgrinberg> and then join snd with a comma
seanmcl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<rgrinberg> or List.hd if you're feeling brave :P
<rgrinberg> uri |> Uri.query |> List.map (fun (k, v) -> (k, String.concat "," v))
<rgrinberg> Drup: and yep, uri does everything eagerly it's obnoxious
<rgrinberg> brb in an hour
seanmcl has joined #ocaml
ontologiae has quit [Ping timeout: 264 seconds]
MrScout has joined #ocaml
jwatzman|work has joined #ocaml
madroach has quit [Ping timeout: 264 seconds]
natrium1970 has joined #ocaml
madroach has joined #ocaml
Nijikokun has quit [Ping timeout: 252 seconds]
<natrium1970> I am confused about the statement in the OCaml refman that “The use of #t-types to abbreviate polymorphic variant types is deprecated.” Is that statement talking about something different from “let f = function #myvariant -> “myvariant” | `Tag3 -> “Tag3” ?
olibjerd has quit [Ping timeout: 250 seconds]
<natrium1970> (myvariant is defined as type myvariant = [`Tag1 of int | `Tag2 of bool])
MrScout has quit [Read error: Connection reset by peer]
<Drup> yes
MrScout has joined #ocaml
<Drup> It's the use of #foo instead of [< foo] that is deprecated
<Drup> the use as a pattern is not
<natrium1970> Just making sure. Thank you Drup
cesar_ has joined #ocaml
cesar_ is now known as Guest15848
<struktured> oops I posted garbage in #math that that was meant for here lol
<natrium1970> No one will notice.
<struktured> thats exactly what happened
<SGrondin> haha, they probably thought it was some math notation they hadn't encountered before
Guest15848 has quit [Ping timeout: 245 seconds]