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
struk|desk has quit [Remote host closed the connection]
struk|desk has joined #ocaml
lobo has quit [Quit: leaving]
jacquev6 has quit [Quit: jacquev6]
madroach has quit [Ping timeout: 240 seconds]
struk|desk is now known as struk|desk|away
madroach has joined #ocaml
ely-se has quit [Quit: Leaving...]
jgjl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
Anarchos has joined #ocaml
NingaLeaf has joined #ocaml
<Anarchos> What is the best unit tests/code coverage framework for ocaml ?
ohama has quit [Ping timeout: 246 seconds]
Stalkr_ has joined #ocaml
<nullcatxxx_> for code coverage
ohama has joined #ocaml
<Anarchos> nullcatxxx_ thanks
<Anarchos> nullcatxxx_ do you use it ?
<nullcatxxx_> no, actually... sorry
<Anarchos> ok
Anarchos has quit [Quit: gone to bed.]
circ-user-CVoNq has joined #ocaml
<circ-user-CVoNq> I'm teaching myself programming on www.hackerrank.com, mainly focused on Python. However, I'm also interested in learning Functional Programming. To two languages, on the list, that seem most interesting are Haskell and Ocmal.
<circ-user-CVoNq> what are some of the pros and cons of Ocmal vs Haskell as a first functional languaga?
nicoo has quit [Remote host closed the connection]
nicoo has joined #ocaml
circ-user-CVoNq is now known as i_am_mahasamoot
<dmbaturin> i_am_mahasamoot: Specifically for the first language, you can write ocaml as if it was python if you feel like it, with mutable variables, loops and all. It's not what more experienced people do most of the time, but for a beginner it's nice to know there's easy way out when you can't come up with a purely functional solution.
<i_am_mahasamoot> less of a learning curve then
sh0t has quit [Ping timeout: 250 seconds]
<dmbaturin> Well, not less, but it can be more gradual.
<Drup> i_am_mahasamoot: as a pythonistas, you might be interested by http://roscidus.com/blog/blog/2014/06/06/python-to-ocaml-retrospective/
<i_am_mahasamoot> thanks for the link
<dmbaturin> Also, ML doesn't limit side effects. If you want a debug print, you can have it.
<i_am_mahasamoot> no debug printing in haskell?
<dmbaturin> Yes, the 0install author's series is very nice.
<dmbaturin> i_am_mahasamoot: Well, there is. But you don't talk about it in a polite company. ;)
<dmbaturin> Inserting a debug print in an otherwise pure function can only be done through breaking the effect limiting model.
Stalkr_ has quit [Read error: Connection reset by peer]
psy_ has quit [Ping timeout: 260 seconds]
<i_am_mahasamoot> that's interesting
psy_ has joined #ocaml
struk|desk|away is now known as struk|desk
<dmbaturin> i_am_mahasamoot: It's a good idea to learn both though. If you like FP, you likely will end up learning both anyway, because they both show up in blog posts and papers a lot. Chances are you'll also learn some Scheme. ;)
<i_am_mahasamoot> dmbaturin: yeah, that's a good thought
<dmbaturin> OCaml and Haskell are not very distant relatives, and many techniques are applicable in both.
<i_am_mahasamoot> They say to be a true scottsmen you need to know about five languages
<dmbaturin> Well, not as distant as any of them and python anyway.
<i_am_mahasamoot> I don't suppose you can write apps for Chrome or Android in either
<dmbaturin> Chrome? I think not. Android? I think there are NDK bindings for both.
<i_am_mahasamoot> Really?
<i_am_mahasamoot> Of course on my Chromebook I've got Ubuntu in a chroot
Algebr`` has quit [Remote host closed the connection]
Algebr`` has joined #ocaml
<dmbaturin> I think there are iOS cross-compilers for both too. I never tried though.
<i_am_mahasamoot> dmbaturin: thanks for the links that's very interesting.
<Drup> yeah, there is opam-android too
<Drup> so it should work okay
<Drup> (and you can do mobile Html app just fine too)
<please_help> what rule of thumb should be used to decide whether to use a polymorphic or non-polymorphic variant?
<Drup> always use non poly unless you don't have the choice :D
<dmbaturin> please_help: If you want unlimited variants and don't mind runtime errors when an unsupported variant is passed, use polymorphic.
<dmbaturin> i_am_mahasamoot: I'm not sure what Chrome apps are, but if they are in JS, there's an OCaml to JS compiler. It can even compile OCaml itself, that's how http://try.ocamlpro.com works.
<Mirry> dmbaturin, I was wondering, can you write react (the fb library) apps using ocaml_to_js?
<i_am_mahasamoot> dmbaturin: that's really Kool. Yeah, I think you need to compile to js which is what google does with dart
<dmbaturin> i_am_mahasamoot: Said polymorphic variant are a fallback to dynamic typing essentially. You can write OCaml literally as if it was python (though it's a good practice to limit its use to cases when it's absolutely necessary).
<Drup> Mirry: I don't think anyone did it yet, but no reason that's not possible
<Mirry> I'll give it a try when I'm more comfortable with OCaml then
<dmbaturin> Mirry: There are no theoretical obstacles, but I don't know how much impendance matching it will need in practice. :)
<Mirry> I see
<Drup> that's the problem yes
<Mirry> I'd be pretty damn cool to be able to write a full stack web app using only OCaml
<Drup> some js libraries are pretty much impossible to type, which makes them annoying to use in OCaml
<Drup> React should be fine. Not sure how much you actually need it in ocaml though
<Drup> Mirry: http://ocsigen.org/ :)
<Mirry> Is it anything like yesod?
<Drup> I just linked it
<Algebr``> Mirry: Its possible, I started to wrap React with js_of_ocaml but stopped
<Mirry> why did you?
<Algebr``> stop or start?
<Mirry> stop
<Algebr``> because it was a side project and I had done enough wrapping of stuff for js_of_ocaml, ie node and many libraries. https://github.com/fxfactorial/ocaml-nodejs
<Algebr``> and plus I don't know React itself, which is a substantial learning process as well...not a front end dev so little gain for me there.
<Mirry> Looks like you did a tremendous work!
<Algebr``> yes, spent a lot of time on it.
<Algebr``> and along the way got 2 patches in on the js_of_ocaml itself so that was nice
<Mirry> very nice indeed
Guest19627 has quit [Quit: Guest19627]
NingaLeaf has quit [Quit: Textual IRC Client: www.textualapp.com]
tnguyen has joined #ocaml
tnguyen is now known as Guest4885
ygrek has quit [Ping timeout: 260 seconds]
FreeBirdLjj has joined #ocaml
i_am_mahasamoot has quit [Remote host closed the connection]
<Algebr``> Drup: I can't seem to get Tyxml_js to come up in ocp-browser
lolisa has joined #ocaml
<Drup> Algebr``: you are sure you have it ?
<Drup> you need jsoo, tyxml and react
<Algebr``> I see, can I specifiy this with opam, like opam install js_of_ocaml with all extras
<Drup> not really, just add the 3 as dependency
<Algebr``> still doesn't come up
<Drup> ah
<Drup> oh, yes, sorry
<Drup> you need tyxml and reactiveData
<nullcatxxx_> Drup : are you still awake? got a question
ygrek has joined #ocaml
<Drup> apparently
<nullcatxxx_> say ``type t = C of char * char``
<nullcatxxx_> we have a function ``let f = fun c1 c2 -> C (c1, c2)``
<nullcatxxx_> is it possible to use MetaOCaml to generate a function ``let r = fun g c1 c2 -> g (C (c1, c2))``
groovy2shoes has joined #ocaml
<Drup> what would be the problem ?
<Drup> (you do know you know metaocaml better than I do ?)
<nullcatxxx_> is it possible to ...?
<nullcatxxx_> apparently I constantly hit the limit of my knowledge about it
<nullcatxxx_> well, you know MetaOCaml. so ...
<nullcatxxx_> and I believe i can't get an answer on SO...
<Drup> but, hum, why doesn't it just work ?
<Drup> what happens when you just try that ?
<nullcatxxx_> i don't get it... why it should just work...
<nullcatxxx_> oh i forgot to mention...
<nullcatxxx_> f can have any shape
<nullcatxxx_> let f = fun ... -> ...
<nullcatxxx_> the output should be let r = fun g ... -> g ...
<Drup> ok, maybe I'm tired, but I don't understand a single thing of what you are saying.
<nullcatxxx_> that's fine... good night..
<Drup> I don't understand what is the problem, I don't even understand why there is a f function, since it's not used in r
<nullcatxxx_> ...
<nullcatxxx_> never mind...
br01 has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
<br01> hello there, what are the possible reasons that lead a code runnig under ocaml 4.01 does not work under ocaml 4.02?
<Algebr``> like not compiling? or what
<Algebr``> I would say the easiest way to find out is the look at the compiler changelog between those versions
govg has quit [Ping timeout: 264 seconds]
govg has joined #ocaml
mac10688 has quit [Ping timeout: 260 seconds]
Sorella has quit [Quit: Connection closed for inactivity]
FreeBirdLjj has joined #ocaml
xyh has joined #ocaml
darkf has joined #ocaml
pierpa has quit [Ping timeout: 245 seconds]
<br01> Algebr`` yeah exactly not compiling anymore
<br01> I am trying to find out
govg has quit [Ping timeout: 245 seconds]
ril has joined #ocaml
KiChjang has joined #ocaml
<KiChjang> can anyone tell me whether there are statements in OCaml?
<KiChjang> i.e. does OCaml treat everything as an expression?
govg has joined #ocaml
blub has quit [Quit: bye]
<Algebr``> pretty sure that's the case
<Algebr``> stuff like open is a compiler directive.
<Algebr``> KiChjang: the for loop and while loop evaluate to unit
psy_ has quit [Ping timeout: 272 seconds]
br01 has quit [Ping timeout: 250 seconds]
luzie is now known as tei
br01 has joined #ocaml
ril is now known as ril[away]
ril[away] is now known as ril
ygrek has quit [Ping timeout: 250 seconds]
KiChjang has quit [Quit: Leaving]
ril is now known as ril[away]
br01 has quit [Ping timeout: 250 seconds]
JacobEdelman has quit [Quit: Connection closed for inactivity]
ril[away] is now known as ril
darkf_ has joined #ocaml
darkf has quit [Disconnected by services]
darkf_ is now known as darkf
slash^ has joined #ocaml
Mirry has quit [Ping timeout: 245 seconds]
MercurialAlchemi has joined #ocaml
groovy2shoes has quit [Quit: Leaving]
ril has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
huza has joined #ocaml
mort___ has joined #ocaml
struk|desk is now known as struk|desk|away
MercurialAlchemi has quit [Ping timeout: 250 seconds]
tmtwd has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
cody` has quit [Quit: Connection closed for inactivity]
FreeBirdLjj has joined #ocaml
jacquev6 has joined #ocaml
d0nn1e has quit [Ping timeout: 265 seconds]
d0nn1e has joined #ocaml
kakadu has joined #ocaml
huza has quit [Ping timeout: 265 seconds]
cyraxjoe has joined #ocaml
cyraxjoe_ has quit [Ping timeout: 260 seconds]
kakadu has quit [Remote host closed the connection]
FreeBird_ has joined #ocaml
kakadu has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 264 seconds]
tane has joined #ocaml
larhat1 has quit [Read error: Connection reset by peer]
larhat1 has joined #ocaml
tei is now known as luzie
kakadu has quit [Remote host closed the connection]
kakadu has joined #ocaml
FreeBird_ has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
Algebr`` has quit [Remote host closed the connection]
tmtwd has quit [Ping timeout: 272 seconds]
Haudegen has quit [Ping timeout: 250 seconds]
cody` has joined #ocaml
jacquev6 has quit [Quit: jacquev6]
xyh has quit [Remote host closed the connection]
tmtwd has joined #ocaml
Haudegen has joined #ocaml
luzie has quit [Remote host closed the connection]
luzie has joined #ocaml
sh0t has joined #ocaml
xyh has joined #ocaml
MercurialAlchemi has joined #ocaml
zpe has joined #ocaml
kushal has joined #ocaml
sbrouf has joined #ocaml
govg has quit [Quit: leaving]
Sorella has joined #ocaml
xyh is now known as yhxhn
yhxhn is now known as xyh
mac10688 has joined #ocaml
cody` has quit [Quit: Connection closed for inactivity]
nicoo has quit [Remote host closed the connection]
nicoo has joined #ocaml
eikke has quit [Ping timeout: 245 seconds]
eikke has joined #ocaml
eikke has quit [Ping timeout: 245 seconds]
eikke has joined #ocaml
JacobEdelman has joined #ocaml
lobo has joined #ocaml
demonimin has joined #ocaml
psy_ has joined #ocaml
jacquev6 has joined #ocaml
jacquev6 has quit [Client Quit]
nicoo has quit [Remote host closed the connection]
mfp_ is now known as mfp
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
<mfp> any cmxs/Dynlink experts around?
<mfp> getting this error when trying to Dynlink nocrypto.cmxs: error loading shared library: /home/mfp/.opam/4.02.3+fp/lib/nocrypto/nocrypto.cmxs: undefined symbol: ml_z_of_int32
<mfp> also happens if I load zarith.cmxs before
<mfp> trivially reproduced with http://paste.debian.net/363690/
nicoo has joined #ocaml
jacquev6 has joined #ocaml
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
zpe has quit [Remote host closed the connection]
FreeBirdLjj has quit [Ping timeout: 272 seconds]
psy__ has joined #ocaml
psy_ has quit [Ping timeout: 240 seconds]
Recurseur has joined #ocaml
psy__ has quit [Max SendQ exceeded]
psy__ has joined #ocaml
monod has joined #ocaml
<sh0t> no/join #name.com
<sh0t> ops :)
sh0t has left #ocaml ["Leaving"]
br01 has joined #ocaml
jacquev6 has quit [Quit: jacquev6]
struk|desk|away is now known as struk|desk
jacquev6 has joined #ocaml
jacquev6 has quit [Client Quit]
monod has quit [Quit: Sto andando via]
jacquev6 has joined #ocaml
jacquev6 has quit [Quit: jacquev6]
jacquev6 has joined #ocaml
<mfp> FTR: zarith.cmxs was essentially empty since it was generated without -linkall
jacquev6 has quit [Client Quit]
Recurseur has quit [Quit: Page closed]
zpe has joined #ocaml
ncthom91 has joined #ocaml
malc_ has joined #ocaml
ncthom91 has quit [Client Quit]
ollehar has joined #ocaml
sh0t has joined #ocaml
struk|desk is now known as struk|desk|away
br01 has quit [Ping timeout: 260 seconds]
kushal has quit [Quit: Leaving]
br01 has joined #ocaml
mort___ has quit [Quit: Leaving.]
sbrouf has quit [Quit: Quitte]
ygrek has joined #ocaml
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
ollehar has quit [Quit: ollehar]
lolisa has quit [Quit: meow]
ollehar has joined #ocaml
jgjl has joined #ocaml
ollehar has quit [Remote host closed the connection]
nullcatxxx_ has quit [Quit: ZNC 1.6.2 - http://znc.in]
nullcatxxx_ has joined #ocaml
xyh has quit [Remote host closed the connection]
pierpa has joined #ocaml
pierpa` has joined #ocaml
pierpa has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
pierpa has joined #ocaml
mort___ has joined #ocaml
pierpa has quit [Client Quit]
sbrouf has joined #ocaml
ygrek has quit [Ping timeout: 240 seconds]
Stalkr_ has joined #ocaml
Mirry has joined #ocaml
darkf has quit [Quit: Leaving]
ely-se has joined #ocaml
pierpa` is now known as pierpa
tmtwd has quit [Ping timeout: 240 seconds]
mort___ has left #ocaml [#ocaml]
ril has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
zpe has quit [Remote host closed the connection]
jacquev6 has joined #ocaml
zpe has joined #ocaml
jacquev6 has quit [Client Quit]
sbrouf has quit [Ping timeout: 260 seconds]
jacquev6 has joined #ocaml
zpe has quit [Remote host closed the connection]
psy__ has quit [Ping timeout: 240 seconds]
BitPuffin|osx has joined #ocaml
jacquev6 has quit [Quit: jacquev6]
jgjl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
Haudegen has quit [Ping timeout: 255 seconds]
jacquev6 has joined #ocaml
ril has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
MercurialAlchemi has quit [Ping timeout: 260 seconds]
Haudegen has joined #ocaml
Stalkr_ has quit [Quit: Leaving...]
pierpa has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
mort___ has joined #ocaml
mort___ has quit [Client Quit]
jacquev6 has quit [Quit: jacquev6]
ril has joined #ocaml
pierpa has joined #ocaml
jacquev6 has joined #ocaml
d0nn1e has quit [Ping timeout: 240 seconds]
ncthom91 has joined #ocaml
d0nn1e has joined #ocaml
ncthom91 has quit [Client Quit]
malc_ has quit [Quit: leaving]
ncthom91 has joined #ocaml
ncthom91 has quit [Client Quit]
jacquev6 has quit [Quit: jacquev6]
jacquev6 has joined #ocaml
sbrouf has joined #ocaml
tane has quit [Quit: Verlassend]
jacquev6 has quit [Quit: jacquev6]
ncthom91 has joined #ocaml
Simn has quit [Read error: Connection reset by peer]
damason has quit [Ping timeout: 240 seconds]
ely-se has quit [Quit: Leaving...]
sh0t has quit [Remote host closed the connection]
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
lobo has quit [Quit: leaving]