adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml MOOC http://1149.fr/ocaml-mooc | OCaml 4.02.3 announced http://ocaml.org/releases/4.02.html | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
misterme_ has quit [Remote host closed the connection]
snhmib has quit [Ping timeout: 246 seconds]
mistermetaphor has joined #ocaml
mistermetaphor has quit [Remote host closed the connection]
silver has quit [Quit: rakede]
inr has joined #ocaml
infinity0 has quit [Ping timeout: 244 seconds]
infinity0 has joined #ocaml
jackweirdy has quit [Ping timeout: 268 seconds]
BitPuffin|osx has quit [Ping timeout: 260 seconds]
Haudegen has joined #ocaml
<Algebr`> What's a clean way to do a minor opam release, say you only have to change one line. Does that literally mean having to go through the whole github release + opam publishing process?
<Algebr`> also is \ still preserved in the parsetree? when you break a string with \
Vintila has joined #ocaml
ygrek has quit [Ping timeout: 252 seconds]
noddy has joined #ocaml
<Algebr`> I have a custom style.css to use for ocamldoc and oasis but it won't take my style.css, also tried XOCamlbuildExtraArgs: "-docflags '-colorize-code -css-style doc/style.css ..." but no luck there.
FreeBirdLjj has joined #ocaml
badon_ has joined #ocaml
badon has quit [Disconnected by services]
badon_ is now known as badon
mistermetaphor has joined #ocaml
Haudegen has quit [Ping timeout: 250 seconds]
struk|desk is now known as struk|desk|away
struk|desk|away is now known as struk|desk
yunxing has quit [Ping timeout: 268 seconds]
dsheets has joined #ocaml
noddy has quit [Ping timeout: 260 seconds]
dsheets has quit [Ping timeout: 248 seconds]
pierpa has quit [Ping timeout: 260 seconds]
misterme_ has joined #ocaml
mistermetaphor has quit [Ping timeout: 248 seconds]
struk|desk is now known as struk|desk|away
struk|desk|away is now known as struk|desk
tmtwd has joined #ocaml
mcint has joined #ocaml
jeffmo has quit [Quit: jeffmo]
<Algebr`> Okay figured it out with a PostCommand: cp
Haudegen has joined #ocaml
nicholasf has quit [Remote host closed the connection]
jeffmo has joined #ocaml
mcint has quit [Quit: hibernating...]
mistermetaphor has joined #ocaml
misterme_ has quit [Ping timeout: 240 seconds]
nicholasf has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 250 seconds]
FreeBirdLjj has joined #ocaml
mcint has joined #ocaml
darkf has quit [Ping timeout: 250 seconds]
mcint has quit [Quit: hibernating...]
dsheets has joined #ocaml
aantron has quit [Quit: Leaving...]
tmtwd has quit [Ping timeout: 244 seconds]
dsheets has quit [Ping timeout: 250 seconds]
pyon has quit [Ping timeout: 276 seconds]
infinity0 has quit [Ping timeout: 246 seconds]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
tmtwd has joined #ocaml
pyon has joined #ocaml
yunxing has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
A1977494 has joined #ocaml
AltGr has joined #ocaml
pyon has quit [Ping timeout: 248 seconds]
darkf has joined #ocaml
yunxing has quit [Quit: Leaving...]
kushal has joined #ocaml
mistermetaphor has quit [Remote host closed the connection]
pyon has joined #ocaml
MercurialAlchemi has joined #ocaml
tmtwd has quit [Ping timeout: 252 seconds]
tmtwd has joined #ocaml
tmtwd has quit [Ping timeout: 260 seconds]
<Algebr`> on the bright side, opam is updating so much faster nowadays.
Mercuria1Alchemi has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 276 seconds]
Algebr` has quit [Read error: Connection reset by peer]
copy` has quit [Quit: Connection closed for inactivity]
Algebr` has joined #ocaml
dsheets has joined #ocaml
dsheets has quit [Ping timeout: 250 seconds]
tane has joined #ocaml
tmtwd has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
Algebr` has quit [Ping timeout: 250 seconds]
badon has quit [Disconnected by services]
badon_ has joined #ocaml
badon_ is now known as badon
mcint has joined #ocaml
tmtwd has quit [Ping timeout: 248 seconds]
AltGr has left #ocaml [#ocaml]
infinity0 has quit [Ping timeout: 264 seconds]
Mercuria1Alchemi has quit [Ping timeout: 244 seconds]
tmtwd has joined #ocaml
badon has quit [Disconnected by services]
badon_ has joined #ocaml
badon_ is now known as badon
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
Haudegen has quit [Ping timeout: 276 seconds]
mcint has quit [Quit: hibernating...]
tane has quit [Quit: Verlassend]
_gt has joined #ocaml
tmtwd has quit [Ping timeout: 246 seconds]
matason has quit [Ping timeout: 248 seconds]
Simn has joined #ocaml
infinity0 has quit [Ping timeout: 246 seconds]
MercurialAlchemi has joined #ocaml
larhat has joined #ocaml
ontologiae has joined #ocaml
AltGr has joined #ocaml
ia0 has quit [Quit: reboot]
ia0 has joined #ocaml
mistermetaphor has joined #ocaml
infinity0 has joined #ocaml
mistermetaphor has quit [Ping timeout: 244 seconds]
yegods has joined #ocaml
yegods has quit [Client Quit]
infinity0 has quit [Ping timeout: 252 seconds]
th000 has joined #ocaml
dwillems has joined #ocaml
infinity0 has joined #ocaml
nicholasf has quit [Remote host closed the connection]
nicholasf has joined #ocaml
infinity0 has quit [Remote host closed the connection]
antkong has quit [Ping timeout: 260 seconds]
infinity0 has joined #ocaml
infinity0 has quit [Ping timeout: 248 seconds]
scrabcakes has joined #ocaml
scrabcakes has joined #ocaml
<scrabcakes> how do you specify the value type of a Map?
infinity0 has joined #ocaml
<reynir> int MyMap.t ?
jwatzman|work has joined #ocaml
Vintila has quit [Ping timeout: 250 seconds]
<scrabcakes> reynir: where do you use that?
<reynir> I don't understand
<scrabcakes> so like I have my type module which has a struct with t = mytype, and I want it to store int values
<reynir> When you apply Map.Make you get a module that has a type t. That type is parameterized with the type of the values
<scrabcakes> so when I declare that type in the struct I need to say int too?
<reynir> What struct?
<scrabcakes> Map.Make(MyType) and module MyType = struct...
infinity0 has quit [Remote host closed the connection]
<scrabcakes> etc, if that makes sense
infinity0 has joined #ocaml
<scrabcakes> the struct contains MyType's t and compare
<reynir> Oh, ok
badon has quit [Ping timeout: 240 seconds]
<reynir> The result of Map.Make(MyType) has a type "'a t" which is the map type. The type parameter 'a is the value type
<dwillems> Any idea why when I pin this repo, it doesn't compile ? (I didn't find the answer yesterday) https://github.com/dannywillems/ocaml-cordova-plugin-activityindicator
<scrabcakes> reynir: oh so the value type doesn't need to be specified?
<reynir> scrabcakes: Correct
<scrabcakes> reynir: do all the values of a map have to be of the same type?
<reynir> So, if you bind [module MyMap = Map.Make(MyType)] you can use the map like this [let x : string MyMap.t = MyMap.singleton MyType.someValue "horse"]
<reynir> scrabcakes: Yes, for a map instance they have to be the same type, but you can create maps with different value types from the same Map instance
<reynir> (I don't know if you should call it a Map instance or not)
<scrabcakes> reynir: yes I understand, cheers
<reynir> Great :) Don't hesitate to ask again
<scrabcakes> reynir: oh also, is the value type decided on the first add?
<th000> do I have to use let rec ... and ... and ... ;; when I have a lot of mutual recursive functions ?
mistermetaphor has joined #ocaml
<th000> can .mli helps mutual recursive function ?
mistermetaphor has quit [Ping timeout: 248 seconds]
th000 is now known as xyh
<lyxia> xyh: there's a trick with higher-order functions, it's a bit more verbose though.
<reynir> scrabcakes: Hmm. I don't know if it makes sense to think of it that way. You can write [let empty_int : int MyMap.t = MyMap.empty], for example
<scrabcakes> reynir: okay I'll try that, thanks
dsheets has joined #ocaml
kushal has quit [Ping timeout: 268 seconds]
<lyxia> xyh: but that's probably not worth the trouble compared to using "and"
kushal has joined #ocaml
d0nn1e has quit [Ping timeout: 246 seconds]
d0nn1e has joined #ocaml
silver has joined #ocaml
cow-orker has quit [Ping timeout: 264 seconds]
cow-orker has joined #ocaml
A19774941 has joined #ocaml
rand__ has joined #ocaml
Vintila has joined #ocaml
A1977494 has quit [Ping timeout: 252 seconds]
kushal has quit [Ping timeout: 248 seconds]
<xyh> thx lyxia
AltGr has left #ocaml [#ocaml]
kushal has joined #ocaml
dhil has joined #ocaml
scrabcakes has quit [Ping timeout: 268 seconds]
tane has joined #ocaml
nicholasf has quit [Remote host closed the connection]
nicholasf has joined #ocaml
nicholasf has quit [Remote host closed the connection]
nicholasf has joined #ocaml
mistermetaphor has joined #ocaml
yomimono has joined #ocaml
Kakadu has joined #ocaml
chindy has joined #ocaml
mistermetaphor has quit [Ping timeout: 246 seconds]
BitPuffin has joined #ocaml
Vintila has quit [Ping timeout: 264 seconds]
dhil has quit [Ping timeout: 268 seconds]
_gt has quit [Quit: leaving]
nicholasf has quit [Remote host closed the connection]
AltGr has joined #ocaml
rand__ has quit [Ping timeout: 240 seconds]
larhat has quit [Read error: Connection reset by peer]
larhat1 has joined #ocaml
larhat has joined #ocaml
larhat1 has quit [Read error: Connection reset by peer]
sepp2k has joined #ocaml
rossberg has quit [Ping timeout: 264 seconds]
rossberg has joined #ocaml
ggole has joined #ocaml
Maxdamantus has quit [Ping timeout: 244 seconds]
nicholasf has joined #ocaml
darkf has quit [Quit: Leaving]
Maxdamantus has joined #ocaml
hcarty1 has joined #ocaml
hcarty1 is now known as hcarty
apluke has joined #ocaml
dhil has joined #ocaml
nicholasf has quit [Ping timeout: 276 seconds]
hydan has joined #ocaml
AltGr has left #ocaml [#ocaml]
Maxdamantus has quit [Ping timeout: 248 seconds]
dhil has quit [Quit: Leaving]
Maxdamantus has joined #ocaml
scrabcakes has joined #ocaml
<scrabcakes> how do you find the origin of a thrown error?
<Kakadu> backtrace
<Kakadu> OCAMLRUNPARAM=b
<Kakadu> and -g compilation switch
boegel|quassel is now known as boegel
boegel has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
boegel has joined #ocaml
demonimin has joined #ocaml
scrabcakes has quit [Ping timeout: 246 seconds]
scrabcakes has joined #ocaml
scrabcakes has quit [Client Quit]
scrabcakes has joined #ocaml
<scrabcakes> does print_string guarantee an order? my prints seem to have a strange order
sh0t has joined #ocaml
<hcarty> scrabcakes: Can you show an example? pastebin/gist if it's more than a line or two
<scrabcakes> never mind, fixed it. was something dumb :P
noddy has joined #ocaml
lokien_ has joined #ocaml
copy` has joined #ocaml
MercurialAlchemi has quit [Remote host closed the connection]
MercurialAlchemi has joined #ocaml
luz1e has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 240 seconds]
luzie has quit [Ping timeout: 276 seconds]
MercurialAlchemi has joined #ocaml
scrabcakes has quit [Quit: leaving]
dhil has joined #ocaml
mistermetaphor has joined #ocaml
pierpa has joined #ocaml
Algebr` has joined #ocaml
mistermetaphor has quit [Ping timeout: 276 seconds]
struktured has joined #ocaml
noddy has quit [Ping timeout: 268 seconds]
infinity0 has quit [Ping timeout: 268 seconds]
dwillems has quit [Ping timeout: 260 seconds]
thomasga has joined #ocaml
infinity0 has joined #ocaml
noddy has joined #ocaml
infinity0 has quit [Ping timeout: 252 seconds]
dwillems has joined #ocaml
seangrove has joined #ocaml
wiredsister has joined #ocaml
infinity0 has joined #ocaml
mistermetaphor has joined #ocaml
jeffmo has quit [Quit: jeffmo]
infinity0 has quit [Ping timeout: 244 seconds]
infinity0 has joined #ocaml
dwillems has quit [Ping timeout: 260 seconds]
gfixler has quit [Ping timeout: 276 seconds]
slash^ has joined #ocaml
FreeBird_ has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 246 seconds]
FreeBird_ has quit [Ping timeout: 246 seconds]
dance-bot has joined #ocaml
dance-bot has left #ocaml [#ocaml]
demonimin has quit [Ping timeout: 268 seconds]
dsheets has quit [Remote host closed the connection]
dsheets has joined #ocaml
thomasga has quit [Quit: Leaving.]
Mich__ has joined #ocaml
Mich__ has quit [Ping timeout: 250 seconds]
seangrove has quit [Ping timeout: 276 seconds]
Algebr` has quit [Remote host closed the connection]
jwatzman|work has quit [Quit: jwatzman|work]
hcarty has quit [Ping timeout: 248 seconds]
yomimono has quit [Quit: Leaving]
Mich__ has joined #ocaml
dwillems has joined #ocaml
Algebr` has joined #ocaml
seangrove has joined #ocaml
seangrove has quit [Ping timeout: 244 seconds]
apluke has quit [Ping timeout: 244 seconds]
<Algebr`> I want to do this Unix.Unix_error(Unix.ECONNREFUSED | Unix.ENOENT, _, _) but apparently can't in a pattern match
<flux> you can, you need more parens
Mich__ has quit [Ping timeout: 250 seconds]
ontologiae has quit [Ping timeout: 268 seconds]
<Algebr`> nice! why more parens..
<flux> Unix.Unix_error(Unix.ECONNREFUSED | (Unix.ENOENT, _, _))
<Algebr`> ha, I ended up doing this and it worked as well: Unix_error((ECONNREFUSED | ENOENT), _, _)
<flux> my example was the way it parsed without parens and wouldn't work
<Algebr`> oh
jeffmo has joined #ocaml
dsheets_ has joined #ocaml
thomasga has joined #ocaml
dsheets has quit [Ping timeout: 276 seconds]
lokien_ has quit [Quit: Connection closed for inactivity]
shinnya has joined #ocaml
rwmjones is now known as rwmjones_hols
dsheets_ has quit [Remote host closed the connection]
dsheets has joined #ocaml
A1977494 has joined #ocaml
A19774941 has quit [Ping timeout: 240 seconds]
sh0t has quit [Remote host closed the connection]
sfri has quit [Remote host closed the connection]
dsheets has quit [Remote host closed the connection]
ygrek has joined #ocaml
dsheets has joined #ocaml
mcint has joined #ocaml
dsheets has quit [Ping timeout: 248 seconds]
sfri has joined #ocaml
dsheets has joined #ocaml
dsheets has quit [Ping timeout: 250 seconds]
dsheets has joined #ocaml
NingaLeaf has quit [Read error: Connection reset by peer]
NingaLeaf has joined #ocaml
thomasga has quit [Quit: Leaving.]
<flux> cool, the inline record thing in 4.03 also covers exceptions
dhil has quit [Ping timeout: 260 seconds]
<copy`> inline record thing?
mcint has quit [Quit: hibernating...]
mcint has joined #ocaml
shinnya has quit [Ping timeout: 248 seconds]
<flux> exception Foo of { i : int }
<copy`> Oh, definition of records as part of variants?
<copy`> Nice
<flux> well, it's also a more efficient memory representation and comes with some limitations compared to just giving them names
<flux> caml_named_exception("FFmpeg exception" returns 0 though I'm calling let _ = Callback.register_exception "FFmpeg exception" (Exception (ContextAlloc, 0)), is there something additional I should do?-o
Kakadu has quit [Quit: Page closed]
hcarty has joined #ocaml
<ggole> It would be pretty off if it didn't
TheLemonMan has joined #ocaml
<flux> it would be pretty off if it didn't return 0?
<flux> oops, the function is of couse called "caml_named_value"
<ggole> Currently exceptions and open variants are pretty much the same thing with slightly different syntax
<ggole> So everything supported by (open) variants should be supported by exceptions
<flux> well, it really seems my file isn't evaluated. yet I seem to be calling functions from it..
<flux> I guess the 'external' definitions don't require a reference to the file.ml
kushal has quit [Ping timeout: 276 seconds]
kushal has joined #ocaml
<flux> wrapped a couple 'entry' functions with ocaml definitons like: let create x = create_ x and now the file gets evaluated
dwillems has quit [Ping timeout: 240 seconds]
<flux> hello my old friend, segmentation fault..
mcint has quit [Quit: hibernating...]
dwillems has joined #ocaml
<struktured> flux: I always found seg faulting such a rude way to end a program
<flux> I wonder if Rust would allow writing more safe "native" extensions to OCaml. though I'm not sure if it helps at all for interfacing C libs..
infinity0 has quit [Ping timeout: 244 seconds]
ggole has quit []
<flux> so this issue was because I was in "blocking section" when I was throwing the exception
<flux> I guess I should familiarize myself with some testing framework instead of trying just my end-app ;)
<flux> what are the ones to try first?-o
chindy has quit [Remote host closed the connection]
<struktured> flux: yeesh, sounds like some annoying bugs to find
malc_ has joined #ocaml
ousado has joined #ocaml
seangrove has joined #ocaml
<flux> I'll try OUnit2
infinity0 has joined #ocaml
alexst has joined #ocaml
alexst has quit [Client Quit]
slash^ has quit [Read error: Connection reset by peer]
<flux> at least it's quite suitable for this purpose, because it deals with tested functions dying with SIGSEGV :)
natimic has joined #ocaml
Kakadu has joined #ocaml
dsheets has quit [Remote host closed the connection]
seangrove has quit [Ping timeout: 250 seconds]
seirl has left #ocaml ["WeeChat 1.2"]
xyh has quit [Quit: ChatZilla 0.9.92 [Firefox 45.0.1/20160319124722]]
BitPuffin has quit [Ping timeout: 248 seconds]
dhil has joined #ocaml
demonimin has joined #ocaml
sepp2k has quit [Quit: Leaving.]
<flux> OUnit2 is pretty sweet, though two enhancements come to mind: capture stdout/err to logs, store core dumps with nice names
seangrove has joined #ocaml
thomasga has joined #ocaml
matason has joined #ocaml
john51_ has joined #ocaml
john51 has quit [Ping timeout: 276 seconds]
seangrove has quit [Ping timeout: 260 seconds]
dwillems has quit [Ping timeout: 244 seconds]
noddy has quit [Ping timeout: 240 seconds]
nicholasf has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 252 seconds]
<struktured> flux: is ounit2 relatively new? I feel like I never heard of it
apluke has joined #ocaml
<hcarty> struktured: It's been out for a while, with (I think) a backwards compatibility layer for ounit 1.x
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
dwillems has joined #ocaml
<struktured> hcarty: ah ok, tx
pyon has quit [Remote host closed the connection]
sfri has quit [Remote host closed the connection]
pyon has joined #ocaml
<Maelan> Drup, maybe a dumb question: can i use js_of_ocaml to write e·g· a firefox addon?
<Drup> I don't even know how firefox addon are written
<Maelan> :p
<Maelan> neither do i, actually
julian_ has joined #ocaml
cat5e has quit [Read error: Connection reset by peer]
julian_ has quit [Client Quit]
Soni has joined #ocaml
<Maelan> i wrote a minimal one years ago to hack firefox’ interface (what taught me there is no such thing as a clean, neat or even rational css), and it worked just fine all those years
chindy has joined #ocaml
<Maelan> and
nicholasf has quit [Remote host closed the connection]
sfri has joined #ocaml
<Maelan> and as it was doomed to, it was eventually broken by a new release of firefox
<Algebr`> Maelan: yes
<Algebr`> I was thinking about auto generating chrome's extensions
Soni is now known as cat5e
A1977494 has quit [Read error: No route to host]
A1977494 has joined #ocaml
<Maelan> i know very few about js, and i remember few about what it looked like for fx addons
<Maelan> but i guess the difference between js for addons and js for the web is only the available api
<Maelan> so i don’t know how js_of_ocaml works, but if it simply generates js code it should work fine :-)
hcarty has quit [Ping timeout: 264 seconds]
<cat5e> how can I learn ocaml coming from rust and scala?
<struktured> cat5e: take the good parts of scala and run with it
sh0t has joined #ocaml
sh0t has quit [Remote host closed the connection]
sh0t has joined #ocaml
sh0t has quit [Remote host closed the connection]
sh0t has joined #ocaml
dwillems has quit [Ping timeout: 268 seconds]
BitPuffin|osx has joined #ocaml
apluke has quit [Ping timeout: 246 seconds]
sh0t has quit [Remote host closed the connection]
sh0t has joined #ocaml
<Algebr`> cat5e: the same way you learn any other language, just start doing a project with it
hydan has quit [Remote host closed the connection]
dhil has quit [Ping timeout: 268 seconds]
malc_ has quit [Remote host closed the connection]
chindy has quit [Remote host closed the connection]
seangrove has joined #ocaml
nicholasf has joined #ocaml
tane has quit [Quit: Verlassend]
matason has quit [Ping timeout: 252 seconds]
<seako> I liked John Wittington's books on OCaml http://ocaml-book.com/ and http://ocaml-book.com/more-ocaml-algorithms-methods-diversions/ Real World OCaml was also good (and free)
<ygrek> > store core dumps with nice names
<ygrek> sysctl kernel.core_pattern = core_%e_%t_%p
<ygrek> I don't think OUnit can do anything about it on its own
johnf_ has quit [Read error: Connection reset by peer]
darkf has joined #ocaml
fs4lv1n1 has joined #ocaml
johnf_ has joined #ocaml
wiredsister has quit [Remote host closed the connection]
A1977494 has quit [Remote host closed the connection]
demonimin has quit [Remote host closed the connection]
demonimin has joined #ocaml
demonimin has quit [Remote host closed the connection]
Simn has quit [Read error: Connection reset by peer]
madroach has quit [Ping timeout: 244 seconds]
madroach has joined #ocaml
jeffmo has quit [Quit: jeffmo]
dsheets has joined #ocaml
dsheets has quit [Ping timeout: 246 seconds]