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
lopex_ has quit [Client Quit]
moei has quit [Quit: Leaving...]
sivoais_ has quit [Quit: leaving]
badkins has joined #ocaml
sivoais has joined #ocaml
<tobiasBora> Hello !
<tobiasBora> I would like to run as root a program installed with opam (ocsigenserver), is it possible ? Because when I do that the program isn't in the path, and even if I use the full path it cannot find the libraries...
q66 has joined #ocaml
rgrinberg has joined #ocaml
AlexRussia has joined #ocaml
<smondet_> tobiasBora: on linux at least `su` has a `-p` option to pass environment variables
<smondet_> you can also redo eval `opam config env` but you need to tell opam which root directory to use (I think with the variable `OPAMROOT`)
<ousado_> tobiasBora: you might want to consider authbind
zwer_v has joined #ocaml
lopex has joined #ocaml
zwer has quit [Ping timeout: 250 seconds]
madroach has joined #ocaml
badon has quit [Remote host closed the connection]
zwer_v is now known as zwer
<tobiasBora> Ok thank you !
<tobiasBora> ousado_: I didn't know this program, but it's pretty interesting !
<tobiasBora> But the problem is that the doc specity it doesn't work with ipv6
<tobiasBora> hum
<ousado_> strange
<tobiasBora> my last sentence is maybe wrong
<tobiasBora> This doc is outdated : http://manpages.ubuntu.com/manpages/hardy/man1/authbind.1.html now ipv6 works
<ousado_> I seem to remember that I used it with ipv6 addresses
<ousado_> that's good
<tobiasBora> authbind ocsigenserver -c run_server.xml -v
<tobiasBora> ocsigenserver: main: Fatal - Uncaught exception: Unix.Unix_error(Unix.EPERM, "bind", "")
<ousado_> you ight need --deep
<tobiasBora> Still the same error with authbind --deep ocsigenserver -c run_server.xml -v
<ousado_> maybe ocsigenserver doesn't pass the environment variables
kdef has joined #ocaml
<tobiasBora> Their is a section in the doc about this error... Let's read it !
hekmek has quit [Quit: Verlassend]
ygrek has joined #ocaml
<tobiasBora> Hum... I create a file /etc/authbind/byport/80 and chown 755 it, but now I've an error : ocsigenserver: main: Fatal - You are not allowed to use port 80.
demonimin has joined #ocaml
enitiz has joined #ocaml
huza has joined #ocaml
<tobiasBora> It works !!!
<tobiasBora> sudo chmod 500 /etc/authbind/byport/80
<tobiasBora> sudo chown tobias /etc/authbind/byport/80
<ousado_> nice
<tobiasBora> and it works. Thank you !
icicled has joined #ocaml
rock_neurotiko has joined #ocaml
MotorMe has joined #ocaml
lambdahands has joined #ocaml
lu324__ is now known as lu324
jwatzman|work has quit [Quit: jwatzman|work]
bytbox has joined #ocaml
Pepe_ has quit [Remote host closed the connection]
lambdahands has quit [Ping timeout: 252 seconds]
badkins has quit [Read error: Connection reset by peer]
rock_neurotiko has quit [Read error: Connection reset by peer]
rock_neurotiko has joined #ocaml
ygrek has quit [Ping timeout: 244 seconds]
q66 has quit [Quit: Leaving]
rgrinberg has quit [Quit: Leaving.]
darkf has joined #ocaml
rgrinberg has joined #ocaml
huza has quit [Quit: WeeChat 0.3.8]
kapil__ has joined #ocaml
bcuccioli has joined #ocaml
decaf has joined #ocaml
manizzle has quit [Ping timeout: 272 seconds]
lostman_ has joined #ocaml
<lostman_> hi all. when dealing with monads in ocaml I find it annoying to write >>= fun () -> all the time. what's the established way of dealing with this? is there an equivalent of haskell's >> ?
badkins has joined #ocaml
rgrinberg has quit [Quit: Leaving.]
<lostman_> and an unrelated question: Fortuna.Unseeded_generator; I'm getting this when running a simple websocket program on my VM. No clue what to do about it
rgrinberg has joined #ocaml
burgobianco has joined #ocaml
chinglish has joined #ocaml
moei has joined #ocaml
_5kg has joined #ocaml
enitiz has quit [Quit: Leaving]
MotorMe has quit [Remote host closed the connection]
MotorMe has joined #ocaml
MrScout_ has joined #ocaml
MotorMe has quit [Remote host closed the connection]
MotorMe has joined #ocaml
MrScout has quit [Ping timeout: 245 seconds]
_5kg has quit [Ping timeout: 264 seconds]
MrScout_ has quit [Ping timeout: 272 seconds]
MotorMe has quit [Remote host closed the connection]
MotorMe has joined #ocaml
MotorMe has quit [Remote host closed the connection]
_5kg has joined #ocaml
MotorMe has joined #ocaml
badkins has quit [Remote host closed the connection]
pyon has joined #ocaml
madroach has quit [Ping timeout: 264 seconds]
AlexRussia has quit [Ping timeout: 245 seconds]
manizzle has joined #ocaml
badkins has joined #ocaml
badkins has quit [Remote host closed the connection]
badkins has joined #ocaml
decaf has quit [Quit: Leaving]
AlexRussia has joined #ocaml
badkins has quit [Remote host closed the connection]
kdef has quit [Remote host closed the connection]
_5kg has quit [Ping timeout: 245 seconds]
ygrek has joined #ocaml
92AAABFC2 is now known as brendan
_5kg has joined #ocaml
shinnya_ has quit [Ping timeout: 264 seconds]
samrat has joined #ocaml
matason has joined #ocaml
_5kg has quit [Ping timeout: 276 seconds]
WanderingGlitch has quit [Changing host]
WanderingGlitch has joined #ocaml
madroach has joined #ocaml
lambdahands has joined #ocaml
Guest46246 has quit [Changing host]
Guest46246 has joined #ocaml
MercurialAlchemi has joined #ocaml
lambdahands has quit [Ping timeout: 264 seconds]
Guest46246 is now known as reynir
madroach has quit [Ping timeout: 264 seconds]
madroach has joined #ocaml
madroach has quit [Ping timeout: 264 seconds]
mcc has joined #ocaml
teiresias has joined #ocaml
madroach has joined #ocaml
chinglish has quit [Quit: Nettalk6 - www.ntalk.de]
badkins has joined #ocaml
keen__________33 has quit [Read error: Connection reset by peer]
keen__________33 has joined #ocaml
badkins has quit [Ping timeout: 245 seconds]
ggole has joined #ocaml
_5kg has joined #ocaml
AlexRussia has quit [Ping timeout: 244 seconds]
_5kg has quit [Ping timeout: 265 seconds]
Reventlo1 is now known as Reventlov
Reventlov has quit [Changing host]
Reventlov has joined #ocaml
7GHAAMC08 has quit [Changing host]
7GHAAMC08 has joined #ocaml
7GHAAMC08 is now known as pgas
madroach has quit [Ping timeout: 264 seconds]
zwer has quit [Ping timeout: 250 seconds]
Haskron has joined #ocaml
hhugo has joined #ocaml
matason has quit [Ping timeout: 244 seconds]
MercurialAlchemi has quit [Remote host closed the connection]
rgrinberg has quit [Quit: Leaving.]
MercurialAlchemi has joined #ocaml
psy_ has joined #ocaml
hhugo has quit [Quit: Leaving.]
burgobianco has quit [Remote host closed the connection]
madroach has joined #ocaml
burgobianco has joined #ocaml
rgrinberg has joined #ocaml
madroach has quit [Ping timeout: 264 seconds]
rock_neurotiko has quit [Ping timeout: 252 seconds]
madroach has joined #ocaml
vanila has joined #ocaml
Haskron has quit []
Thooms has joined #ocaml
burgobianco has quit [Ping timeout: 244 seconds]
Antoine59 has joined #ocaml
burgobianco has joined #ocaml
Kakadu has joined #ocaml
Antoine59 has quit [Ping timeout: 255 seconds]
Haudegen has quit [Ping timeout: 264 seconds]
Haudegen has joined #ocaml
_5kg has joined #ocaml
shinnya_ has joined #ocaml
psy_ has quit [Quit: Leaving]
Simn has joined #ocaml
rgrinberg has quit [Quit: Leaving.]
_5kg has quit [Read error: Connection reset by peer]
ollehar has joined #ocaml
_5kg has joined #ocaml
tane has joined #ocaml
oscar_toro has joined #ocaml
Guest45195 has quit [Quit: leaving]
govg has joined #ocaml
govg has quit [Ping timeout: 252 seconds]
AltGr has left #ocaml [#ocaml]
Antoine59 has joined #ocaml
matason has joined #ocaml
mort___ has joined #ocaml
larhat has joined #ocaml
matason has quit [Quit: leaving]
Guest35253 is now known as dch
dch has quit [Changing host]
dch has joined #ocaml
ingsoc has joined #ocaml
madroach has quit [Ping timeout: 264 seconds]
madroach has joined #ocaml
_andre has joined #ocaml
madroach has quit [Ping timeout: 264 seconds]
dsheets has joined #ocaml
govg has joined #ocaml
ygrek has quit [Remote host closed the connection]
ygrek has joined #ocaml
<struktured> lostman_: in some cases you don't need the function wrapper if you use a partially applied function on the right hand side
ygrek has quit [Ping timeout: 272 seconds]
madroach has joined #ocaml
araujo has quit [Ping timeout: 276 seconds]
araujo has joined #ocaml
manizzle has quit [Ping timeout: 272 seconds]
madroach has quit [Ping timeout: 264 seconds]
Thooms has quit [Quit: WeeChat 1.0.1]
Thooms has joined #ocaml
araujo has quit [Ping timeout: 240 seconds]
jonludlam has joined #ocaml
araujo has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
madroach has joined #ocaml
araujo has quit [Ping timeout: 256 seconds]
araujo has joined #ocaml
araujo has quit [Max SendQ exceeded]
araujo has joined #ocaml
Thooms has quit [Quit: WeeChat 1.0.1]
samrat has joined #ocaml
lostman_ has quit [Quit: Connection closed for inactivity]
endiruna has joined #ocaml
<endiruna> hi i have a stupid begginers question: when i create something with "let .... in" is it lazely evaluated?
<ggole> No.
<dsheets> endiruna, let x = lazy (print_endline "hi"; 5);; let (lazy y) = x;;
<endiruna> thanks! and the [] parenthesis are used to separate the block of instructions of a subfunction defined in a function, right?
<MercurialAlchemi> yeah, OCaml has an opt-in philosophy when it ocmes to laziness
<ggole> endiruna: no, [] is (most) used for list literals
<MercurialAlchemi> [] are for lists -> [ 1; 2; 3 ]
<ggole> *mostly
<MercurialAlchemi> [] is the empty list
<MercurialAlchemi> arrays have a syntax that is close ([| |] instead of [])
<MercurialAlchemi> if you need to group things in ocaml you use () most of the time
<endiruna> thanks!
pdewacht has joined #ocaml
lordkryss has joined #ocaml
keen__________34 has joined #ocaml
keen__________33 has quit [Ping timeout: 265 seconds]
<endiruna> i am reading real world ocaml, but there are some libraries seem not to be present my ocaml installation. like Time.now etc are those in some library that is not installed by default?
darnuria has joined #ocaml
<MercurialAlchemi> endiruna: if you have Core installed, you should have the Time module
samrat has quit [Quit: Computer has gone to sleep.]
<endiruna> i have installed ocaml from the package manager so i assumed that core was inside
<endiruna> but it is obviously not :(
<endiruna> installed it with opam :)
thorsten2 has quit [Quit: WeeChat 1.1-dev]
thorsten` has joined #ocaml
<endiruna> another stupid question i have installe ocaml and llvm-ocaml in archlinux. does that mean that by default it will use llvm as backend to compile wit ocamlopt? should I want that or is it better to compile with ocalm's default compiler
zwer has joined #ocaml
MotorMe has quit [Remote host closed the connection]
MotorMe has joined #ocaml
Haudegen has quit [Ping timeout: 272 seconds]
Haudegen has joined #ocaml
<Drup> llvm-ocaml is a binding to use llvm as a library from ocaml
<Drup> not a compiler backend
badkins has joined #ocaml
w0rp has quit [Quit: GONE]
badkins has quit [Ping timeout: 245 seconds]
w0rp has joined #ocaml
BitPuffin has joined #ocaml
JuggleTux has quit [Ping timeout: 244 seconds]
tani has joined #ocaml
JuggleTux has joined #ocaml
rock_neurotiko has joined #ocaml
BitPuffin has quit [Ping timeout: 240 seconds]
ousado has joined #ocaml
enitiz has joined #ocaml
tani has quit [Quit: Verlassend]
BitPuffin has joined #ocaml
<endiruna> for some reason i can not intall anymore lwt which is needed by utop. what i would like to install is core utop and merlin. i can install merlin and utop without core. are they conflicting
<companion_cube> do you have opam 1.2? it provides some way to obtain more details from the solver (I don't remember exactly)
<Drup> well, start by pastebin-ing the error messages you have ...
<MercurialAlchemi> (the next obvious question is "do you have aspcud?")
<Drup> :D
mahem1__ has joined #ocaml
<companion_cube> didn't know of this optimization
<endiruna> Drup: should i pastebin the whole opam install core merlin utop or just the lwt bit?
<endiruna> i have opam 1.2
mahem1_ has quit [Ping timeout: 265 seconds]
<bbc> endiruna: if you use arch, there seem to be an issue with the system compiler, I've worked around it by using one from opam (opam switch 4.02.1)
<Drup> the ones that fail.
<endiruna> i have arch
<bbc> but fixing the underlying problem could be nice
<endiruna> bbc I am following your hint! seems to work on some of the packages that failed before!
vanila has quit [Remote host closed the connection]
Hannibal_Smith has joined #ocaml
nojb has joined #ocaml
tristero has joined #ocaml
nojb has quit [Quit: nojb]
nojb has joined #ocaml
<ggole> companion_cube: it's pretty much the fixnum/bignum trick for strings
<ggole> (Although spread across a few more words.)
struktured has quit [Ping timeout: 245 seconds]
vanila has joined #ocaml
Rebelion has quit [Ping timeout: 252 seconds]
nojb has quit [Quit: nojb]
struktured has joined #ocaml
pyon has quit [Quit: goddammit emacs is *REALLY* stupid]
pyon has joined #ocaml
Rebelion has joined #ocaml
chinglish has joined #ocaml
<companion_cube> anyone ever tried http://ocaml-gnuplot.sourceforge.net/ ?
<companion_cube> doesn't look packaged for opam...
<MercurialAlchemi> haven't tried
<companion_cube> there's also "archimedes" apparently
kalzz has quit [Ping timeout: 276 seconds]
badkins has joined #ocaml
AlexRussia has joined #ocaml
ViciousPlant has joined #ocaml
<MercurialAlchemi> companion_cube: looks like pure Ocaml this one
<MercurialAlchemi> a bit on the unmaintained side
planetlarg has joined #ocaml
MotorMe has quit [Ping timeout: 246 seconds]
Haudegen has quit [Ping timeout: 264 seconds]
Haudegen has joined #ocaml
zwer has quit [Remote host closed the connection]
zwer has joined #ocaml
<companion_cube> Troestler is among the maintainer, it must be good quality
<adrien> :)
<MercurialAlchemi> OCaml forge is fantastic when you absolutely don't want to see any documentation about a project
<MercurialAlchemi> come to think of it, this may explain some things...
<tane> MercurialAlchemi, i second that, haha :)
<tane> which reminds me.. how about that central opam based documentation page, is it coming forward?
<adrien> MercurialAlchemi: or that no-one tried to make some
<Leonidas> if so, they are in good company on the forge
ViciousPlant has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
slash^ has joined #ocaml
<dsheets> tane, we're somewhere around alpha. it builds docs but there are lots of small details to take care of. see https://github.com/dsheets/codoc
<tane> ah, nice, thanks
<Leonidas> oh, it works on CMTs?
<Leonidas> interesting
<MercurialAlchemi> adrien: after finding the 'docs' tab in the OASIS project page on the forge, I can understand why you wouldn't want to
<dsheets> it will... but not yet
<Drup> dsheets: what is the difference between the two ?
<dsheets> doc-ock-lib is cmti -> types
<dsheets> doc-ock-xml is types -> xml and xml -> types
<MercurialAlchemi> (complete with a Javascript-powered Windows-explorer look alike, dear god)
<dsheets> codoc is a front-end to these functions and an HTML renderer for types
<Drup> ok
<dsheets> the idea is that if you don't want the front-end, you can still get some benefit from the lower libs
<adrien> MercurialAlchemi: that page is merely a link to a file storage
<adrien> nothing more
<dsheets> and maybe we can interop better
<Drup> dsheets: an opam repository is set up or do I pin all the things ? :p
<adrien> no-one hosts doc through that anyway
<adrien> it's always websites or the like and github doesn't provide anything better for instance
<dsheets> https://github.com/ocaml/platform-dev might work for you
<Drup> weee
<dsheets> it's not really been hammered out or released or announced in any way so if you want to give it a spin, feel free
lambdahands has joined #ocaml
<MercurialAlchemi> well, Github has a decent-looking wiki
<MercurialAlchemi> and it renders markdown with syntax highlighting
<Drup> MercurialAlchemi: doesn't really help for documentation.
<MercurialAlchemi> it depends what you call documentation
<MercurialAlchemi> if you mean API documentation, I agree
<Drup> even for documentation. I want autolinking to modules and all that too.
<adrien> documentation on github is rarely done through through markdown
<adrien> intro stuff, yes
<adrien> doc, no
<MercurialAlchemi> If you mean end-user documentation, then the wiki is decent
<dsheets> wiki can't do directories even though it's a git repo...
<MercurialAlchemi> adrien: well, I'll be happy with a decent readme to start with
<MercurialAlchemi> *mutters at some OCaml projects where a two lines-long README was clearly too much work*
<adrien> only thing I meant is that it's not an issue with the hosting but with the project itself
<Drup> the hosting is not helping.
<Drup> it may not be responsible, but it's clearly not helping.
<adrien> it's an excuse
<MercurialAlchemi> in a world where most developers don't want to do documentation, an excuse is an excuse too much :)
rgrinberg has joined #ocaml
<adrien> yeah, spoonfeeding
darkf has quit [Quit: Leaving]
<Drup> dsheets: "ocaml-version: [= "4.02.0"]" <- No >= ?
<Drup> (at least 4.02.1 ?)
<dsheets> Drup, where?
kapil__ has quit [Quit: Connection closed for inactivity]
<Drup> Oh, I think that's a bug in opam
<Drup> opam tells me 4.02.0 for opam-doc-base while it's 4.02.0-doc in the repository
<dsheets> Drup, don't need opam-doc-base anyway. 4.02.1+doc is the dev switch you want
<Drup> ok.
<Drup> (still weird)
psy_ has joined #ocaml
Rebelion has quit [Ping timeout: 276 seconds]
ollehar has quit [Ping timeout: 252 seconds]
Rebelion has joined #ocaml
<Drup> still getting the same error
<dsheets> Drup, file an issue
<dsheets> oh, oops
<dsheets> i never use that, yet :-P
<Drup> yeah, that's why the duplication of opam file is annoying
<Drup> (there is an issue about that somwhere)
<dsheets> cool, thanks for the opam report
iZsh has quit [Ping timeout: 245 seconds]
<dsheets> Drup, should be fixed in a767271e8472e10bcdcfa0a365f62d6935647218
iZsh has joined #ocaml
<Drup> .1*
<dsheets> Drup, updated? should be on dumpast.42
<Drup> weird, I should have my opam setting correct
nojb has joined #ocaml
cdidd has joined #ocaml
Haudegen has quit [Remote host closed the connection]
Haudegen has joined #ocaml
<Drup> dsheets: "Error: Unbound value Webmaster_file.output_type" which is indeed not there https://github.com/dsheets/webmaster/blob/master/cli/webmaster_file.mli
<dsheets> Drup, yeah, one sec
<Drup> no problem, just bug reporting :D
<dsheets> Drup, try now
Haudegen has quit [Ping timeout: 265 seconds]
<Drup> installed !
<dsheets> cool
<Drup> let's try to use it now
<dsheets> I recommend setting OPAMKEEPBUILDDIR=1 and using the little opam-doc.ml script
Haudegen has joined #ocaml
<dsheets> in the doc switch and then you can see the cross-package links for the switch
<dsheets> some things will just fail, though
<dsheets> like lwt right now :-(
<dsheets> but there's an issue tracking it and that one in particular is the highest priority
<Drup> hum, you don't compile/install opam-doc apparently
<dsheets> also, you might want to use -b on the opam switch
<dsheets> no, it's just a hacky little script in the codoc root
<dsheets> because the cli is still in flux and it's not clear what's happening with the old opam-doc integration atm as we've not yet reached parity
<dsheets> mostly i use it to find bugs
<dsheets> you might also be interested in https://github.com/dsheets/ocamlary-test-library which collects test cases (in a rather so-so manner)
<Drup> "ocamlary" ?
<dsheets> old name for codoc
<dsheets> just roll with it
endiruna has quit [Ping timeout: 265 seconds]
<Drup> I like ocamlary :D
<dsheets> better than codoc? nahhh
<Drup> codoc is a bit weird
<dsheets> too palindromic?
<companion_cube> hey, no readme!
<dsheets> oh no! unreleased software is unreleased!
<Drup> The O is not in the front, It confuses me.
<companion_cube> do you mean it collects test cases from comments?
<companion_cube> dsheets: come on, a 2-lines readme isn't hard to write ;)
<companion_cube> Drup: in my todolist, there's "remove crap from containers" ;)
psy_ has quit [Remote host closed the connection]
<dsheets> companion_cube, test cases from comments? it just has a couple interfaces with different features of the signature language and ocamldoc markup
<Drup> dsheets: arg, I need to recompile the whole switch :x
<dsheets> Drup, yes, don't do anything serious in that switch
<Drup> dsheets: I mean, for -b
<dsheets> I'm not even sure I'd recommend building the tool itself
<Drup> you should have told me in the beginning :(
<dsheets> yes, i know, it's awful.
<dsheets> I have some patches...
<companion_cube> dsheets: I don't know, I was trying to guess what's ocamlary's about
<Drup> dsheets: don't worry, I lived in the opam trunk for a while, bleeding edges don't affray me anymore.
<companion_cube> hope the rent was less expensive than in Paris
<Drup> companion_cube: it's opam-doc
<dsheets> but it can stand alone, too
<dsheets> doesn't need opam
<dsheets> layers and all that
fraggle-boate has quit [Remote host closed the connection]
<Drup> yep
<pippijn> initial experiments don't suggest that jenga is faster than my optimised omake code
psy_ has joined #ocaml
<pippijn> sad :(
<pippijn> maybe after I optimise the jeng acode
<Drup> ahah
fraggle-boate has joined #ocaml
<companion_cube> dsheets: ♥
<rks`> pippijn: I've seen that there's been some work on omake recently (from Gerd, was it?)
<rks`> are you using that version or?
<rks`> (and what is your "optimised omake code" ?)
<Drup> dsheets: this is very weird, I know have "The files ../../stdlib/pervasives.cmi and ../../utils/misc.cmi make inconsistent assumptions over interface Pervasives" when compiling 4.02.1+doc
<adrien_znc> I'll never forget that omake's intro documentation has a section on how to make GTK+ bindings using omake
<Drup> which is typical lack of bootstrap error.
<adrien_znc> not building them
<dsheets> Drup, unset OCAMLPARAM
<adrien_znc> making them with omake's language
<dsheets> Drup, 4.02.1+doc modifies formats but isn't re-bootstrapped
<Drup> meh.
pyon has quit [Ping timeout: 245 seconds]
_andre has quit [Ping timeout: 240 seconds]
_andre has joined #ocaml
<Drup> dsheets: I'm a bit confused at why it worked the first time
<dsheets> Drup, you were in a switch that didn't have OCAMLPARAM including doc=1
lpw25 has joined #ocaml
<Drup> but I switched back before recompiling
<pippijn> rks`: no, my omake code was last used about 1.5 years ago
<dsheets> then, you left the doc switch (which set OCAMLPARAM and maybe leaked it to other switches) and then tried to rebuild the doc switch
<lpw25> The issue is that whilst +doc is bootstrapped, it isn't bootstrapped with the "-doc" option set.
<pippijn> rks`: I'll try the new one maybe this weekend
<Drup> my question is more : why did -doc was set in another switch
<dsheets> because opam doesn't unset environment parameters for switches....
<Drup> well, opam bug report time then.
psy_ has quit [Remote host closed the connection]
<lpw25> I reported it a while back: https://github.com/ocaml/opam/issues/1866
<Drup> ok.
<rks`> pippijn: alright, I'm curious about your results, ping me (in query if possible, I don't have logs of the channels) when you have some results
<dsheets> It's a similar but not the same as the environment leaking issue which is a precursor to the desired warning... dunno if it's feasible to stop the leaking, though
psy_ has joined #ocaml
WraithM has joined #ocaml
<Drup> (the nice part is that there are lots of assemblage examples I can copy in these libraries :D)
WraithM has quit [Client Quit]
<lpw25> unfortunately they all use the old assemblage API, which has since been largely rewritten by Daniel
<dsheets> (the bad part is they are all for 0.4.0 which is out of date and all of these libraries are dropping their dependencies on release)
<Drup> arg
pyon has joined #ocaml
<Drup> I know several people in this chan who are going to cringe so hard at this :D
<Drup> I think codoc is trying to look into .opam/doc instead of .opam/4.02.1+doc
<Drup> (I'm using the opam-doc script)
boogie has joined #ocaml
<dsheets> Drup, indeed, i keep 4.02.1+doc around for testing and development and doc is my play switch
<dsheets> use -A
<dsheets> Quite soon, that script will probably grow up and move into a repository of its own.
rgrinberg has quit [Quit: Leaving.]
rgrinberg has joined #ocaml
<Drup> reinstalling everything o_o
<dsheets> Drup, you don't need to reinstall, just use the --switch option and do your switch-testing in doc but your dev in 4.02.1+doc
<dsheets> or find a nice and simple solution to switch naming and make a PR
madroach has quit [Ping timeout: 264 seconds]
<Drup> or just kick and dirty edit on the script because I want to try it :O
<Drup> hum
<Drup> (I tried to ask for cmdliner's documentation)
<rks`> "kick & dirty"
<rks`> nice one
<Drup> meh.
planetlarg has quit [Quit: Ex-Chat]
<dsheets> Drup, errrr? just tell it the output dir and it'll build all the docs it can
<dsheets> what command line did you issue? should be very simple
<dsheets> or are you running codoc directly?
<Drup> I though the script wanted a package name, I was wrong. Doesn't change much in fact, it fails all the same regardless of what argument I give
<dsheets> need more details
<Drup> I changed https://github.com/dsheets/codoc/blob/master/opam-doc.ml#L34 this line "doc/build" into "4.02.1+doc/build"
<Drup> apparently, it doesn't like it
MrScout has joined #ocaml
jonludlam has quit [Quit: Coyote finally caught me]
<dsheets> Drup, dunno... stack trace? printf sprinkling? never seen this and i don't immediately see what might cause it
<Drup> dsheets: the script doesn't split the list given by "opam list" and treat the whole string as a single package name, it seems
<dsheets> Drup, what opam you using? they are newline delimited for me
<Drup> last stable
<dsheets> what does opam list -S -s do?
<Drup> no newlines
<dsheets> wtf
<dsheets> i'm on 23d6b7863b44f20bc7b1a20c4a63d925158129aa which doesn't have that bug
<Drup> time to live in opam trunk again, I suppose.
<Drup> :]
<Drup> but yeah, 1.2.0 doesn't have newlines here
<dsheets> that seems like a regression... i think 1.1.1 did it right?
<Drup> I don't remember
<MercurialAlchemi> (I think I found systemd's true purpose: it's not an init system, it's a flamewar generator)
<Drup> dsheets: it's indeed newline-separated in trunk.
<Drup> dsheets: https://bpaste.net/show/2884369b901a. Should I put it somewhere ? (bug report github ?)
<lpw25> could you add it to https://github.com/lpw25/doc-ock-lib/issues/41, which looks like the same issue
q66 has joined #ocaml
<Drup> it works \O/
rand000 has joined #ocaml
<Drup> (except automatic redirection to index.html is not enabled locally, and the link points to the directory, on the index.html
<Drup> where should I report that ?
ygrek has joined #ocaml
<dsheets> Drup, use --scheme file
<dsheets> or a local web server
<Drup> on codoc ?
<dsheets> Drup, yes
sivoais has quit [Ping timeout: 265 seconds]
<Drup> still the same
<dsheets> Drup, did you delete the old stuff? the overwrite/not features are broken
<Drup> I did
<dsheets> and passed --scheme file to the codoc commands in opam-doc.ml?
<Drup> oh, I did only one, not the other
<dsheets> maybe should abstract those into a function.... PR?
ygrek has quit [Ping timeout: 256 seconds]
rgrinberg has quit [Quit: Leaving.]
MercurialAlchemi has quit [Remote host closed the connection]
pdewacht has quit [Quit: Lost terminal]
rgrinberg has joined #ocaml
jwatzman|work has joined #ocaml
MercurialAlchemi has joined #ocaml
jwatzman|work has quit [Changing host]
jwatzman|work has joined #ocaml
<Drup> right, working now !
<dsheets> \o/
<Drup> Now, trying tyxml è_é
<Drup> It's having some difficulties with functor arguments link
<dsheets> Drup, this issue <https://github.com/dsheets/codoc/issues/17>?
<Drup> sorry, I did it the wrong order
<Drup> > omg it's so much better than ocamldoc <<3
<dsheets> also, the ordering problem will be fixed soon
<dsheets> hahaha except for all the sharp edges....
<dsheets> lpw25 did a ton of work to get the language support top notch
<Drup> "module Make : functor (Xml : Xml_sigs.T) → Svg_sigs.Make(Xml).T with type +'a elt = Xml.elt and type +'a attrib = Xml.attrib"
<Drup> in this documentation line
samrat has joined #ocaml
<Drup> plenty of links that should traverse the functor argument Xml back to Xml_sigs.T
<dsheets> erm... tell me the exact interface in the version of tyxml in a new issue
<Drup> huhu
rock_neurotiko has quit [Ping timeout: 265 seconds]
<Drup> tyxml.3.4.0
<Drup> Svg_f
<dsheets> please file an issue... i have to go soon and i still am drafting a pre-release email
<Drup> sure !
<dsheets> Drup, thanks for trying it out! Hopefully, a lot of these issues will start getting resolved soon. :-)
<Drup> yep, I'm happy to see it taking shape too
jao has joined #ocaml
jao has quit [Changing host]
jao has joined #ocaml
<dmbaturin> Is there a lib for multiplexed sockets that hides underlying poll/epoll/whatever details?
<companion_cube> Lwt?
jonludlam has joined #ocaml
mcc has quit [Quit: This computer has gone to sleep]
<dmbaturin> companion_cube: Oh, so Lwt provides it? Cool, will have a look, I've just started with it.
<companion_cube> hmmm, not sure for multiplexed sockets
mort___ has quit [Ping timeout: 272 seconds]
enitiz has quit [Ping timeout: 264 seconds]
<dmbaturin> companion_cube: I'm not sure if I want to have a thread per connection. Those connections can last long, but there's no constant traffic flow.
<companion_cube> Lwt threads are really cheap
<dmbaturin> But they map to POSIX threads? Or not?
<Drup> no
rgrinberg has quit [Quit: Leaving.]
<Drup> you can use Lwt_preemptive to spawn one, though.
rgrinberg has joined #ocaml
<Drup> http://i.imgur.com/YGFBmoe.png utf8, it's so cute <3
<Drup> ♥ even.
<Drup> (in opam dev)
<companion_cube> pff
<companion_cube> :D
pdewacht has joined #ocaml
<dmbaturin> Good to know, thanks. Guess I can use a thread per connection then.
<Drup> dmbaturin: relevant: Lwt_pool
<companion_cube> \o/
<dmbaturin> I certainly don't want to mess up with select/poll by hand in any case. :)
<nojb> now that strings in ocaml are immutable, why not represent them as {data : string; off : int; len : int} so that we can take substrings seamlessly, like bigarrays ?
<adrien> memleak
<Drup> it would add an overhead for small strings, I think
<nojb> yeah sure but we could always copy if we wanted under a certain ratio
<adrien> it would keep a reference to the main string
<nojb> yeah sure
<adrien> if it's 1MB and your substring is 10o, you've lost almost a full MB
<nojb> there should be a way to configure when to copy instead of keeping a reference
<adrien> 10B*
<adrien> and consider that...
<adrien> java did that
<adrien> yes *did*
<adrien> if event java decides something is a bad idea... :)
<Drup> nojb: it seems to me that since bigarray is already doing it, it's not really needed for strings
<MercurialAlchemi> doesn't Rust do that?
<Drup> a better way would be to have generalized array handling (like the last blog post by alain frish) and be able to be polymorphic over the various array-like structures
chinglish has quit [Ping timeout: 276 seconds]
dsheets has quit [Ping timeout: 252 seconds]
<pippijn> Drup: that's a good use of unicode
<nojb> pippijn: what do you mean ?
<pippijn> 19:45 < Drup> http://i.imgur.com/YGFBmoe.png utf8, it's so cute <3
<pippijn> Drup: your hostname has an uppercase letter?
<Drup> yes, why ?
<pippijn> adrien: what keyboard layout do you have that o and b are close together?
<pippijn> Drup: a better thing would be higher kinded types
<Drup> pippijn: it's not unreleated.
<Drup> (I didn't say *how* you would have generalized array handling :3)
<pippijn> right
<pippijn> I want higher kinded types
<pippijn> then the functions operating on "array-like" would use that
<pippijn> also bytes and string being string-like
<Drup> be array-like*
<pippijn> also array-like
<pippijn> I guess they can just be array-like
<pippijn> any operations on strings should also be available on arrays
<pippijn> can that be efficient?
<whitequark> array-like strings is a bad idea
<pippijn> whitequark: why?
<whitequark> indexing a string by characters is not something you often want to do with unicode
<pippijn> ocaml string has no encoding requirements, as far as I know
<pippijn> it's a byte array
<whitequark> `bytes` is byte array
<pippijn> string is an immutable byte array
olauzon has joined #ocaml
<Drup> string is immutable
<whitequark> still, storing anything except utf-8 is madness, and indexing unicode strings is not useful
<Drup> nothing is promised from how it's implemented
<Drup> about*
<pippijn> whitequark: it's absolutely useful
<pippijn> having a type to store arbitrary immutable byte arrays is great
<whitequark> don't call it "string" :]
<pippijn> string *is* an arbitrary immutable byte array
<Drup> implementation detail :p
<pippijn> if you're unhappy about that, change string and rename the current thing to something else
<Drup> (note: it's not true in js_of_ocaml :D)
<whitequark> yes, I think that should be done
<pippijn> Drup: what is it in js_of_ocaml?
<Drup> it's... complicated
<whitequark> lol
<Drup> a string is both an array of bytes and a utf16 rope
<pippijn> at the same time?
<Drup> and there are lazy conversions between the two representation depending of what operation you use (for efficiency)
<pippijn> I see
<whitequark> *rope*?
<Drup> yes
<Drup> I think
<whitequark> i mean, javascript strings are not ropes
<Drup> jerome explained it to me once
rand000 has quit [Ping timeout: 240 seconds]
nojb has quit [Ping timeout: 264 seconds]
lpw25 has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
<adrien> pippijn: b = bit/byte, o = octet
madroach has joined #ocaml
mort___ has joined #ocaml
rgrinberg has quit [Quit: Leaving.]
IbnFirnas has quit [Read error: Connection reset by peer]
IbnFirnas has joined #ocaml
tani has joined #ocaml
tane has quit [Killed (morgan.freenode.net (Nickname regained by services))]
tani is now known as tane
vanila has quit [Quit: Leaving]
slash^ has quit [Read error: Connection reset by peer]
mort___ has quit [Quit: Leaving.]
mort___ has joined #ocaml
Rebelion has quit [Ping timeout: 276 seconds]
mort___ has quit [Ping timeout: 245 seconds]
Rebelion has joined #ocaml
araujo has quit [Ping timeout: 245 seconds]
badon has joined #ocaml
mort___ has joined #ocaml
WraithM has joined #ocaml
araujo has joined #ocaml
ggole has quit []
_andre has quit [Quit: leaving]
mort___ has quit [Quit: Leaving.]
rgrinberg has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
Simn has quit [Quit: Leaving]
<pippijn> adrien: ok
kalzz has joined #ocaml
nullcat has joined #ocaml
dsheets has joined #ocaml
Rebelion has quit [Ping timeout: 245 seconds]
<Drup> dsheets: ah! I found out why "codoc" was weird. I'm trying to apply the usual rules of co prefix to "documentation" to obtain codoc and it doesn't work.
<dsheets> huh? co- is dual, this is a tool that takes the result of documenting (documentation text) and returns the thing being documented...
<Drup> Huum, it's a weird dual.
<dsheets> also, it is a palindrome and is code+doc and internally uses polymorphic variants in gadts to construct and class hierarchy to destruct
<Drup> polymorphic variants in gadts ? No variance issue with that ?
<dsheets> is it? it's the roundtrip... you doc, it codocs, you get back something like the original (semantic not lexical)
bytbox has quit [Remote host closed the connection]
Rebelion has joined #ocaml
<dsheets> not variance but it does use the open/closed poly vars
<dsheets> look at DocOckPaths in doc-ock-lib
manizzle has joined #ocaml
<Drup> ok, it's not a recursive data type, so subtyping doesn't propagate
<Drup> so it works without variance annotation
<Drup> (quite nice)
rand000 has joined #ocaml
patronus has quit [Remote host closed the connection]
<Drup> cairo2 seems quite encoding-messy. =')
<Drup> rgrinberg: you would love it, I bet you can't open a single file in the repository :D
rock_neurotiko has joined #ocaml
<rgrinberg> Drup: :(
mort___ has joined #ocaml
nojb has joined #ocaml
arj has joined #ocaml
bytbox has joined #ocaml
sivoais has joined #ocaml
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
jave has joined #ocaml
mearnsh has joined #ocaml
badkins has quit [Read error: Connection reset by peer]
mort___ has quit [Quit: Leaving.]
mearnsh has quit [Ping timeout: 272 seconds]
mearnsh has joined #ocaml
MrScout_ has joined #ocaml
MrScout has quit [Ping timeout: 245 seconds]
icicled has quit [Quit: Leaving]
mv has joined #ocaml
<mv> Is this channel only for discussions *about* OCaml, or is it for general OCaml help?
<cmtptr> I'm no authority here but I've seen a lot of ocaml help taking place
badkins has joined #ocaml
<Drup> mv: both
<Guest69411> speaking of help:
<mv> thanks
pyon has quit [Ping timeout: 245 seconds]
Guest69411 is now known as j0sh
<j0sh> im seeing this weird behavior where match-statements exit a block before its expected
<nojb> the print_endline “after” only gets executed if B matches
<j0sh> nojb: that's not what i was expecting, why's that?
<nojb> precedence of “;”
<nojb> just put a begin .. end around the match expression
<j0sh> nojb: yeah thats what i've been doing, just seems a little clunky
<nojb> you can also use ( and ) if you want :)
<Drup> j0sh: which indentation engine are you using ?
<bernardofpc> it is a bit confusing because it's the opposite from if/else
<Drup> a correct indentation would have hinted at the issue.
mv has quit [Ping timeout: 255 seconds]
<j0sh> Drup: not using one, supposedly i have ocp-indent installed with vim but it doesnt seem enabled
<j0sh> im trying to figure out how ; precedence gives this behavior
sivoais has quit [Ping timeout: 240 seconds]
<Drup> slightly easier to understand.
<j0sh> Drup: yeah, i saw that... but i don't see how those precedence rules apply
<j0sh> a match statement is an expr, and exprs can be chained together via ';', seems obvious to me
<nojb> if you look at the mly you will see that a seq_expr (a sequence of exprs separated by a ‘;’) is *not* and expr and is only allowed in certain contexts (like, for example, in match cases)
pyon has joined #ocaml
<j0sh> nojb: ah, okay. i'm not too familiar with how to read the compiler source code yet
Kakadu has quit [Remote host closed the connection]
<nojb> whitequark: are there ocaml bindings for libclang ?
<whitequark> yes
<Drup> there is also https://github.com/Antique-team/clangml, did you had a look at both ?
<nojb> oclang doesn’t seem to have been updated in a while …
araujo has quit [Ping timeout: 245 seconds]
sivoais has joined #ocaml
araujo has joined #ocaml
smondet_ is now known as smondet
MercurialAlchemi has quit [Ping timeout: 246 seconds]
RossJH has joined #ocaml
rgrinberg has quit [Quit: Leaving.]
<whitequark> oh, yeah, clangml is nicer
struktured has quit [Ping timeout: 245 seconds]
enitiz has joined #ocaml
<whitequark> ... it really should be using ppx_deriving :]
rgrinberg has joined #ocaml
Haudegen has quit [Ping timeout: 245 seconds]
<j0sh> i always thought expr ; expr was sugar for let () = expr in expr
<whitequark> you could say it is
<j0sh> but it doesnt behave that way with a ; delimited match expression
lambdahands has quit [Ping timeout: 246 seconds]
<nojb> expr ; expr has the same semantics as let () = expr in expr, but as far as syntax is concerned they behave differently …
Haudegen has joined #ocaml
<smondet> nojb: not exactly the same semantics: with `;` type mismatches are warnings
patronus has joined #ocaml
<j0sh> hmm. figuring this out now is kinda disturbing, i wonder how much of my old code has the match ... ; bug
MrScout_ has quit [Remote host closed the connection]
MrScout has joined #ocaml
<Drup> j0sh: run ocp-indent on everything, check for changes.
<j0sh> Drup: yeah. is vim supposed to auto-indent when ocp-indent is active? it doesn't seem to be doing that here
<Drup> I don't know about vim.
<Drup> (know only about the plugin I linked you, but I don't use vim)
WraithM has quit [Quit: leaving]
olauzon has quit [Quit: olauzon]
<def`> j0sh: what's the value of :set indentexpr?
<smondet> j0sh: (i've switched, again, to emacs since but) that Vim setup used to work not long ago for me: https://gist.github.com/smondet/bebdf28877b94ffac1de
tane has quit [Quit: Verlassend]
regnat has joined #ocaml
<j0sh> def`: indentexpr=GetOCamlIndent()
<j0sh> smondet: thanks, i'll try out some of those snippets
rgrinberg has quit [Quit: Leaving.]
rgrinberg has joined #ocaml
arj has quit [Quit: Leaving.]
nojb has quit [Quit: nojb]
ingsoc has quit [Ping timeout: 245 seconds]
AltGr has joined #ocaml
<def`> j0sh: ok, so you are not yousing ocp-indent-vim
endiruna has joined #ocaml
<j0sh> def`: then i don't know what i'm using ;)
<j0sh> i had the ocp-indent.vim script loaded thats bundled with ocp-indent in opam, disabled that
nojb has joined #ocaml