kakadu has quit [Remote host closed the connection]
tautologico has quit [Ping timeout: 244 seconds]
silver has quit [Quit: rakede]
tautologico has joined #ocaml
wtetzner has joined #ocaml
tautologico has quit [Ping timeout: 258 seconds]
adelbertc has joined #ocaml
MercurialAlchemi has joined #ocaml
tmtwd has joined #ocaml
wtetzner has quit [Remote host closed the connection]
MercurialAlchemi has quit [Ping timeout: 252 seconds]
smkz has joined #ocaml
<smkz>
does anyone know what causes "The actions to process have cyclic dependencies: - ∗ ocaml.4.03.0 -> ∗ ocaml-base-compiler.4.03.0 -> ∗ ocaml.4.03.0" or how to fix it?
sh0t has joined #ocaml
copy` has quit [Quit: Connection closed for inactivity]
chinglish has joined #ocaml
sh0t has quit [Ping timeout: 240 seconds]
darkf has joined #ocaml
tmtwd has quit [Ping timeout: 250 seconds]
wtetzner has joined #ocaml
picolino has quit [Ping timeout: 244 seconds]
picolino has joined #ocaml
govg has quit [Ping timeout: 260 seconds]
Algebr` has quit [Remote host closed the connection]
wtetzner has quit [Remote host closed the connection]
tmtwd has joined #ocaml
nicholasf has quit [Remote host closed the connection]
nicholasf has joined #ocaml
picolino has quit [Ping timeout: 264 seconds]
picolino has joined #ocaml
tautologico has joined #ocaml
picolino has quit [Ping timeout: 244 seconds]
picolino has joined #ocaml
picolino has quit [Ping timeout: 244 seconds]
MercurialAlchemi has joined #ocaml
adelbertc has quit [Quit: Connection closed for inactivity]
tautologico has quit [Ping timeout: 240 seconds]
kushal has joined #ocaml
lol_u_phail has joined #ocaml
tmtwd has quit [Ping timeout: 258 seconds]
sdothum has quit [Quit: ZNC - 1.6.0 - http://znc.in]
lol_u_phail has quit [Quit: Leaving.]
lol_u_phail has joined #ocaml
Simn has joined #ocaml
fluter has quit [Ping timeout: 258 seconds]
fluter has joined #ocaml
Mercuria1Alchemi has joined #ocaml
rgrinberg has quit [Ping timeout: 260 seconds]
rossberg_ has quit [Ping timeout: 264 seconds]
ygrek has quit [Ping timeout: 250 seconds]
lol_u_phail has quit [Ping timeout: 276 seconds]
rossberg_ has joined #ocaml
chinglish has quit [Ping timeout: 252 seconds]
chinglish has joined #ocaml
AltGr has joined #ocaml
dexterph has joined #ocaml
lol_u_phail has joined #ocaml
dhil has joined #ocaml
larhat has joined #ocaml
<flux>
smkz, not really, but do you have aspcud for resolving dependencies?
<flux>
I've found the builtin resolver glitchy.
<flux>
smkz, also what's the action? opam switch 4.03.0?
brub has joined #ocaml
martinkl_ has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 258 seconds]
jwatzman|work has joined #ocaml
tg has quit [Ping timeout: 252 seconds]
tg has joined #ocaml
silver has joined #ocaml
jstolarek has quit [Ping timeout: 240 seconds]
tane has joined #ocaml
jstolarek has joined #ocaml
thizanne has joined #ocaml
fraggle_ has quit [Remote host closed the connection]
tane has quit [Ping timeout: 244 seconds]
larhat has quit [Ping timeout: 240 seconds]
sdothum has joined #ocaml
fraggle_ has joined #ocaml
dave24 has joined #ocaml
picolino has joined #ocaml
jstolarek has quit [Ping timeout: 240 seconds]
larhat has joined #ocaml
jstolarek has joined #ocaml
pierpa has joined #ocaml
jstolarek has quit [Ping timeout: 250 seconds]
_andre has joined #ocaml
johnelse has joined #ocaml
larhat1 has joined #ocaml
larhat has quit [Read error: Connection reset by peer]
nicholasf has quit [Remote host closed the connection]
nicholasf has joined #ocaml
jstolarek has joined #ocaml
MercurialAlchemi has joined #ocaml
jstolarek has quit [Remote host closed the connection]
jstolarek has joined #ocaml
tautologico has joined #ocaml
chinglish has quit [Ping timeout: 276 seconds]
MercurialAlchemi has quit [Ping timeout: 258 seconds]
Bluddy[m] has quit [Remote host closed the connection]
Kakadu2[m] has quit [Remote host closed the connection]
barkmadley[m] has quit [Remote host closed the connection]
regnat[m] has quit [Read error: Connection reset by peer]
M-jimt has quit [Remote host closed the connection]
M-pesterhazy has quit [Remote host closed the connection]
M-ErkkiSeppl has quit [Read error: Connection reset by peer]
M-martinklepsch has quit [Write error: Connection reset by peer]
M-Illandan has quit [Read error: Connection reset by peer]
beginner_ has joined #ocaml
beginner has quit [Read error: Connection reset by peer]
ggole has joined #ocaml
tautologico has quit [Ping timeout: 260 seconds]
tane has joined #ocaml
k1000 has quit [Quit: Lost terminal]
k1000 has joined #ocaml
Kakadu2[m] has joined #ocaml
martinkl_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
sepp2k has joined #ocaml
chinglish has joined #ocaml
nicholasf has quit [Remote host closed the connection]
dhil has quit [Ping timeout: 258 seconds]
nicholasf has joined #ocaml
lol_u_phail has quit [Ping timeout: 276 seconds]
regnat[m] has joined #ocaml
M-martinklepsch has joined #ocaml
M-jimt has joined #ocaml
Bluddy[m] has joined #ocaml
M-ErkkiSeppl has joined #ocaml
barkmadley[m] has joined #ocaml
M-pesterhazy has joined #ocaml
M-Illandan has joined #ocaml
rgrinberg has joined #ocaml
rgrinberg has quit [Client Quit]
rgrinberg has joined #ocaml
octachron has joined #ocaml
chinglish has left #ocaml [#ocaml]
freehck has quit [Remote host closed the connection]
martinkl_ has joined #ocaml
lol_u_phail has joined #ocaml
averell has joined #ocaml
<dexterph>
in Cmdliner, does anybody know if it's possible to make an option required only when a certain flag is set? for example, set --eval=blah as required only when --require-eval is present, the Cmdliner has an Err module but it's not exposed so I don't think I can use that strategy
tane has quit [Quit: Verlassend]
<Drup>
It is, hum, not recommended to do that.
<Drup>
Of course, you can always do it yourself after the fact
nicholasf has quit [Remote host closed the connection]
<dexterph>
Drup: not recommended from a UI perspective? or do you just mean in cmdliner
<Drup>
in cmdliner
<Drup>
(I don't think it's recommended for a UI perspective either, though)
reynir is now known as reynir|
reynir| is now known as reynir
k1000 has quit [Quit: .]
<dexterph>
any thoughts on a good way to expose something like this? my use case: the user should have a way to specify an eval function. usually it is optional but if they want the program to optimize over the eval function then it (of course) must be supplied. I can throw my own error but I think it would be prettier if the error looked like all of the other cmdliner errors
k1000 has joined #ocaml
zpe has joined #ocaml
<Drup>
dexterph: from your keys, you get two terms, "eval : eval_function Term.t" and "opt: bool Term.t"
<Drup>
you can combine them to make a term "opt_with_eval_function ret Term.t"
<Drup>
(with ret being defined in the Term module)
<Drup>
then you use Term.ret
<Drup>
(and then you keep composing like you would normally do)
<dexterph>
thanks Drup
nicholasf has joined #ocaml
mcspud has quit [Ping timeout: 250 seconds]
mcspud has joined #ocaml
mcspud has quit [Remote host closed the connection]
dhil has joined #ocaml
jstolarek has quit [Remote host closed the connection]
jstolarek has joined #ocaml
Mercuria1Alchemi has quit [Ping timeout: 244 seconds]
freehck has joined #ocaml
MercurialAlchemi has joined #ocaml
tautologico has joined #ocaml
copy` has joined #ocaml
jstolarek has quit [Ping timeout: 240 seconds]
<beginner_>
has the ocaml compiler a verbosity level which i can set?
jstolarek has joined #ocaml
tane has joined #ocaml
<ggole>
No, but you can dump various info
<ggole>
(Well, there's -verbose, but I don't think will do what you want.)
<beginner_>
i get a lot of "Cannot resolvee symbols" errors, e.g. _caml_acos_float
<beginner_>
i changed my PATH variable, but no i get "Unsupported relocation kind 00b.." for the llvm binding
<ggole>
No idea on that one.
pierpa has quit [Ping timeout: 260 seconds]
<companion_cube>
hmmm, actually, why doesn't opam use symlinks to change bin,lib,etc. upon `opam switch`?
<companion_cube>
it would avoid the case where forgetting to run "eval `opam config env`" makes you scratch your head
jstolarek has quit [Ping timeout: 244 seconds]
jstolarek has joined #ocaml
jstolarek has quit [Ping timeout: 244 seconds]
govg has joined #ocaml
<gasche>
companion_cube: how would you implement (opam config exec --switch=... -- ...) in this setting?
<companion_cube>
I don't care
<companion_cube>
what does it even do?
<gasche>
it runs a command in a switch, without changing the global state
<gasche>
quite a useful command in my usage
<companion_cube>
ok…
<companion_cube>
can we just throw opam into the garbage can and use nix? :/
<gasche>
I think a first step would be to make sure that nix works well with opam packages
<gasche>
but there are also scientific arguments for an opam-like dependency-solving approach instead of a nix-like maximal installation approach
<gasche>
(I think we should have both working well; and Windows; yeah)
<gasche>
how does nix work under Windows and OSX?
<beginner_>
is there some date set for opam on windows?
<gasche>
well it already sort of works
jstolarek has joined #ocaml
<beginner_>
not for 4.03.0
<pippijn>
companion_cube: but opam has colours!
<pippijn>
and uses \r!
<companion_cube>
yay
<gasche>
well opam packages for 4.03.0 don't work suppert well on unix either beginner_
<gasche>
but in any case
<gasche>
right now opam-on-windows is for experimental early-adopter
<gasche>
I think that the plan is to make this a well-supported scenario in either the next opam release (soon) or the one after that
<beginner_>
gasche: the only package i had a problem with so far was zmq 4.0
<pippijn>
nix on windows used to be cygwin
<pippijn>
now it's broken, I think
<pippijn>
if nix on windows happens again at some point, I hope it'll be mingw
<gasche>
companion_cube: are you using nix now?
<Drup>
companion_cube: symlink doesn't work for a rather large amount of reason. It was discussed in opam's infancy, there are rather long discussions on github on the subject.
<gasche>
we need some frequent OCaml users on nix to make it work well
<companion_cube>
Drup: ah.
<Drup>
(also, a lot of opam features don't work with the nix approach)
<companion_cube>
hwo about the feature "not having mixed global/local state"?
<companion_cube>
gasche: no I'm not
<Drup>
have you looked at the proposal for opam local ?
<companion_cube>
but the model is much cleaner than opam imho
<companion_cube>
( a bit convoluted, which is worrying, but well)
<Drup>
well, it's not *that* convoluted
<companion_cube>
I suppose local switches are there to make it easier to avoid `opam sw`
<Drup>
all the tooling is extremly optimized for that use case, weirdly
<Drup>
(merlin works very well, so does ocp-browser and opam user-conf)
<companion_cube>
so the easy command is bad, the same way the system switch is bad
<Drup>
kind of, yes
<companion_cube>
yay
slash^ has joined #ocaml
Ravana has quit [Ping timeout: 244 seconds]
<Drup>
it will work even better with opam local, since you will be able to do exactly that, but without using "eval ...", cd in the right directory will be enough
<Drup>
a la cabal/npm/.. sandboxes
<gasche>
( Drup is defusing the situation, companion_cube may delay changing the language syntax to better write a nix clone by a year or two )
<gasche>
you should really write that blog post
<companion_cube>
oh, right, the syntax change :D
<gasche>
like now
<beginner_>
<companion_cube>
gasche: so how about this -safe-syntax? :D
<Drup>
gasche: I'm trying very hard to work on my deadlines :(
<Drup>
(not with a lot of success, unfortunatly)
<gasche>
companion_cube: I don't know much about that
<gasche>
are you preparing yet another flooded PR?
<companion_cube>
nah
<Drup>
(and I'm kinda waiting for the release of opam 2.0, so that I can show more cool tibits)
<companion_cube>
I'm too lazy to work on the parser
<gasche>
I would like to get back to the menhir one
<gasche>
but no time before mid-August
<companion_cube>
and anyway I have projects to debug^W work on
<gasche>
(the US for you: you get work to do during the first half of August)
<gasche>
(these people are unreasonable)
<companion_cube>
:D
tautologico has joined #ocaml
tane has quit [Quit: Verlassend]
<Drup>
(when I read something from Mickens, I can replace "kernel programmers" by "compiler devs" and it works just the same)
jstolarek has quit [Ping timeout: 244 seconds]
<Drup>
(this insight comes from reading the ocaml typechecker)
<companion_cube>
I'm a bit wondering how people debug their patches to ocamlc
<adrien>
"git push origin test:master"
<adrien>
and wait
<Drup>
companion_cube: i had really weird bug in the typechecker and frankly, I'm still not sure how I debuged them. I involved a lot of staring and cursing.
<Drup>
It*
<companion_cube>
yeah, ok
<Drup>
but pierre chambart has very fun debuging stories, you can ask him :D
<companion_cube>
I can imagine
ygrek has joined #ocaml
Ravana has joined #ocaml
<beginner_>
The windows install readme refers to flexdll version 0.35, but thats not even available at the mentioned github page?
<Drup>
gasche: those links are exactly what I needed, thanks you very much.
wtetzner has quit [Remote host closed the connection]
Orion3k has joined #ocaml
dhil has quit [Ping timeout: 240 seconds]
SpiceGuid has joined #ocaml
johnelse has quit [Ping timeout: 252 seconds]
dexterph has quit [Ping timeout: 244 seconds]
<octachron>
discovery of the day: with a high probability, no one has ever used open sum types in a library/project with an ocamldoc-generated documentation
thizanne has joined #ocaml
<gasche>
octachron: be careful, if you send another pull request on the ocamldoc codebase, people may start asking you to fix bugs :-'
wtetzner has joined #ocaml
tane has joined #ocaml
<Drup>
octachron: I have
<companion_cube>
but did you actually generate the documentation? :D
<Drup>
I just .. accepted the fact that it was a disaster
<Drup>
(along with functors, module signatures, type substitutions ...)
<companion_cube>
accept the pain into your heart
<Drup>
(tyxml is ocamldoc's kryptonite)
<companion_cube>
or mabye ocamldoc is tyxml's kryptonite
<gasche>
functors and module signatures are merely inconvenient, they do work
<companion_cube>
who needs doc anyway
<companion_cube>
people have been using Zarith for years! :D
<Drup>
gasche: I have examples where ocamldoc stop linkifying modules in module type expressions
<Drup>
it just gives up
<Drup>
also, ocamldoc gives wrong module signatures when there are destructive subtitutions involved
<Drup>
octachron: oh, you meant relaly open sum type, not polyvars
<gasche>
did you report that it is still failing?
<gasche>
(extensible variant type)
<Drup>
gasche: it's not failing, it's wrong :)
<gasche>
("open sum type" is kind of a misnomer I think)
<companion_cube>
oh, btw, is Pierre on holiday? no one acknowledged my flambda crash :(
<Drup>
as in, it doesn't propagate down substitutions
<Drup>
if you have "module M = S with ..." and you open M, it shows S without subsitutions
<Drup>
codoc solves that
<gasche>
Drup: is there a bug report against this?
<octachron>
Drup, ah yes, I meant extensible variant type
<companion_cube>
to me `open sum type` is pretty clear
<Drup>
gasche: I'm not sure, but honestly, there are so many bugs with module handling in ocamldoc that the good solution is to push for codoc, not trying to fix ocamldoc
<companion_cube>
the new shiny construct
<gasche>
I'm fine with pushing for codoc
<gasche>
is it usable?
<gasche>
I keep hearing about it every year, but I haven't seen it used in practice so far
<Drup>
the edges are still a bit, hum, rough.
<octachron>
gasche, there is less supported newish-ish feature and there is still having some "assert false" laying on some possible code path for this feature
kushal has quit [Quit: Leaving]
<companion_cube>
I like how gasche is pragmatic and cautious
<companion_cube>
wow wow wow flux, link inference is non trivial
<flux>
indeed it's undecidable in general case, but some particular cases are possible!
zpe has joined #ocaml
<ollehar>
NP? quantum computer?
sh0t has quit [Remote host closed the connection]
johnelse has joined #ocaml
johnelse is now known as Guest79917
<Drup>
hehe, in opam 2, I can do "opam pin edit ocaml-base-compiler" and edit the configuration flag to add whichever combination I want easily. <3
sh0t has joined #ocaml
<companion_cube>
so l33t
<Drup>
companion_cube: you have no idea, compiler as packages are so cool.
<flux>
so I guess @@unwrapped didn't gain enough traction ;)
<gasche>
(they're going to make many things easier)
<companion_cube>
are they going to replace switches ? :D
<companion_cube>
(no ,seriously, why is it so big a deal?)
<Drup>
You can do really nice things
<companion_cube>
... if you're a compiler developer?
<Drup>
No, for everyone
<gasche>
the Coq community is using opam; for them it doesn't make sense to have (one switch == one OCaml compiler version)
<gasche>
companion_cube: there should be a talk covering opam 2.0 at OUD 2016 in Japan
<companion_cube>
yay
<gasche>
come listen for it!
<companion_cube>
seriously? :D
<gasche>
(or watch the youtube videos while I'm eating delicious sushi by myself)
<companion_cube>
yeah, I'll watch the videos
<companion_cube>
I might go to Sweden during the fall, though
<Drup>
fortunatly, I won't be here to screw up sound recording
<flux>
gasche, so does the concept of still stays but it's not tied to an ocaml compiler?
<ollehar>
I'm from Sweden!
<flux>
s/does //
<ollehar>
(don't live there, though)
<Drup>
flux: yes
<Drup>
roughly
dhil has quit [Ping timeout: 244 seconds]
<companion_cube>
Drup: so which nice things are going to be possible?
<companion_cube>
(so far the only exciting things in opam2, to me, are installation tracking and local switches)
<Drup>
Things are still moving a bit, and I expect louis to write a good amount of documentation for it
<companion_cube>
you like to keep me waiting, don't you
<Drup>
companion_cube: :]
<companion_cube>
you'd make a bad salesman
<Drup>
(I mean, it's still an alpha)
shinnya has quit [Ping timeout: 250 seconds]
Guest79917 has quit [Ping timeout: 265 seconds]
<Drup>
companion_cube: so, example: I can create a switch named "last" that tracks the last ocaml version, and it can upgrade the ocaml (and the recompiles things as needed)
<Drup>
I can edit the configure options for a compiler on the fly to add new options (-fPIC, etc) without using new switches
<Drup>
I can pin git repositories that contains an experimental compilers without needing to create a new repository
<companion_cube>
hmmm, ok
<companion_cube>
although it still sounds like features targeted toward compiler developers :)
<Drup>
I can now formally depend on alternative compilers (so, a package can be "metaocaml only")
<gasche>
well if you don't care which compiler version you are using, you probably won't care so much about compiler packaging changes
<Drup>
companion_cube: I remember you ranting about configure options for the compiler ;)
<companion_cube>
huuuu really?!
<Drup>
yes
<companion_cube>
I don't remember… what options anyway? :D
<companion_cube>
maybe fpic actually
<Drup>
yes
<Drup>
anyway, now I can do whichever combination I want easily, instead of relying on existing switches
<gasche>
"support for GC instrumentation" would also be an option that's nice to have without changing the switch
<companion_cube>
hmmmm
<gasche>
but I'm not sure compiler-as-packages edition is the right tool for that need
<companion_cube>
btw, is gdb support merged yet?
<gasche>
as it probably recompiles all packages, which I don't want if I'm just installing a new runtime variant
MercurialAlchemi has quit [Ping timeout: 252 seconds]
<Drup>
gasche: agreed, but at least now it's possible to do it that way. Before, it was really difficult (new opam repository, etc ..)
<gasche>
I think runtime variants could be distributed as separate opam packages that build the variant and then install it somewhere
<Drup>
Also, all that is only if you consider opam primarly supporting an ocaml installation. If you consider other usages (coq for example), it's even better
<gasche>
but other changes that do require recompilation, such as -fPIC, would be nice to have this way
<Drup>
companion_cube: ah, it also allows richer version constraints in packages, for example (ocaml = 4.03 & foo) | bar
<Drup>
people tried to do this kind of things since quite some time now, with ppx for example
strykerkkd has joined #ocaml
strykerkkd has quit [Remote host closed the connection]
dexterph has joined #ocaml
<companion_cube>
ahah, I see
<companion_cube>
(why is my inner voice shouting "fragmentation!" ?)
<Drup>
fragmentation ?
<companion_cube>
well, packages that do not interop, parts of the community that use different flags/compilers, etc.
<Drup>
I'm not sure I see the link. Here is an example : "((ocaml >= 4.02 & ppx_tools) | ocaml < 4.02)"
<Drup>
We already do that, we just use weird encoding (base-no-ppx ...)