silver has quit [Read error: Connection reset by peer]
mengu has joined #ocaml
mengu has quit [Ping timeout: 240 seconds]
sz0 has joined #ocaml
al-damiri has quit [Quit: Connection closed for inactivity]
mfp has quit [Ping timeout: 248 seconds]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 256 seconds]
KV has joined #ocaml
nomicflux has joined #ocaml
KV has quit [Ping timeout: 252 seconds]
<cheater>
hey guys
<cheater>
what are .merlin files?
tane_ has joined #ocaml
tane has quit [Ping timeout: 240 seconds]
mengu has joined #ocaml
mengu has quit [Ping timeout: 248 seconds]
<cheater>
copy`: nice, thanks
<cheater>
Algebr: check out copy`'s file
mengu has joined #ocaml
<cheater>
hey guys, i have run into an issue. in some places in my project, I can use the Lwt_io module, whereas in other places I have the compiler telling me it's an unbound module. I can't open the module by name either. what gives? do i need to somehow make the Lwt_io module accessible to the modules / files where it doesn't work by default?
average has quit [Remote host closed the connection]
<cheater>
oh i see, in this one place they do some sort of weird mli based magic which only gives the programmer access to non-io functions and other safe stuff...
mengu has quit [Ping timeout: 260 seconds]
KV has joined #ocaml
tane_ has quit [Quit: Leaving]
KV has quit [Ping timeout: 255 seconds]
jao has quit [Ping timeout: 252 seconds]
mengu has joined #ocaml
mengu has quit [Ping timeout: 276 seconds]
nomicflux has quit [Quit: nomicflux]
jeffmo has quit [Quit: jeffmo]
wtetzner has quit [Remote host closed the connection]
KV has joined #ocaml
jerme has joined #ocaml
KV has quit [Ping timeout: 255 seconds]
snhmib has quit [Ping timeout: 248 seconds]
ygrek_ has quit [Ping timeout: 255 seconds]
sz0 has quit [Quit: Connection closed for inactivity]
snhmib has joined #ocaml
tonyle has joined #ocaml
tonyle has quit [Client Quit]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 240 seconds]
KV has joined #ocaml
KV has quit [Ping timeout: 276 seconds]
copy` has quit [Quit: Connection closed for inactivity]
govg has joined #ocaml
MercurialAlchemi has joined #ocaml
FreeBirdLjj has joined #ocaml
snhmib has quit [Read error: Connection reset by peer]
mengu has joined #ocaml
mengu has quit [Ping timeout: 240 seconds]
KV has joined #ocaml
KV has quit [Ping timeout: 260 seconds]
mengu has joined #ocaml
Mercuria1Alchemi has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 240 seconds]
mengu has quit [Ping timeout: 240 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
govg has quit [Ping timeout: 258 seconds]
snhmib has joined #ocaml
zpe has joined #ocaml
manizzle has joined #ocaml
snhmib has quit [Ping timeout: 240 seconds]
KV has joined #ocaml
KV has quit [Ping timeout: 258 seconds]
snhmib has joined #ocaml
FreeBirdLjj has joined #ocaml
ygrek_ has joined #ocaml
mengu has joined #ocaml
mengu has quit [Ping timeout: 252 seconds]
mengu has joined #ocaml
ygrek_ has quit [Ping timeout: 240 seconds]
william-s has quit [Quit: WeeChat 1.7]
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
jnavila has joined #ocaml
Simn has joined #ocaml
zpe has quit [Ping timeout: 255 seconds]
dhil has joined #ocaml
Rome has quit [Ping timeout: 245 seconds]
KV has joined #ocaml
KV has quit [Ping timeout: 256 seconds]
<Leonidas>
I don't really know what you mean. your buildscripts might be messing up?
kakadu has joined #ocaml
orbifx has joined #ocaml
dhil has quit [Ping timeout: 240 seconds]
<freehck>
cheater: .merlin files are used for merlin ocaml text editor (end therefore for emacs' merlin-mode). This file describes where merlin shall look for sources and build files. It needs it for auto-completion and type inference while coding.
<freehck>
cheater: if the module is not accessible it means you omit some compiler options. If you use ocamlbuild you can try to add -use-ocamlfind and -package lwt.unix (or lwt.syntax, or what you need)
<freehck>
for lwt syntax it could be sane also to add -syntax camlp4o
govg has joined #ocaml
larhat has joined #ocaml
mami has quit [Ping timeout: 240 seconds]
mami has joined #ocaml
<companion_cube>
johnelse: the irc-client auto-reconnection works perfectly, btw ;-)
AltGr has joined #ocaml
KV has joined #ocaml
Rome has joined #ocaml
KV has quit [Ping timeout: 276 seconds]
mengu has quit [Remote host closed the connection]
<johnelse>
companion_cube: oh nice :)
<companion_cube>
and so far, no pb with TLS
<companion_cube>
have you seen the IRC bot framework used for ocabot_?
<johnelse>
ah, calculon? :D
<johnelse>
I got confused because all ocabot's code had disappeared, but there wasn't anything new in the opam file
<companion_cube>
indeed, my bad
dhil has joined #ocaml
<reynir>
!history 3
<johnelse>
looks good though!
<reynir>
Cool! It includes the !history 3 line though :P
<companion_cube>
yes indeed
<companion_cube>
but (at least after I restart it) it will not include query messages :D
<reynir>
\o/
<companion_cube>
so anyway, it's pretty nice to add plugins, imho
KV has joined #ocaml
Algebr has quit [Ping timeout: 240 seconds]
<orbitz>
Is it possible to make one module have the same type as another module but make a type in it private?
mengu has joined #ocaml
<flux>
maybe not. my first stab was module B : module type of A with type t = private int = struct type t = private int end, but it didn't stick
<Onemorenickname>
so i have to make a whole sub-functor, i have to open/include a file with the signature of the argument and so on
<Drup>
It's only 2 or 3 more lines that what you would normaly do, is that such an issue ?
<Onemorenickname>
it's boilerplate code
<Onemorenickname>
if this action requiers 4 lines of code, and an other one requires 3 lines of code, and I do them regularly, I get several dozens lines of code I have to write for no reason
<Drup>
Then keep everything inside the body of the functor. You have to specify your dependencies somehow. inclusion in OCaml is not unchecked syntactic inclusion
<Drup>
it's a wee bit stricter than that, and that's a good thing
srenatus[m] has quit [Remote host closed the connection]
M-jimt has quit [Remote host closed the connection]
M-ErkkiSeppl has quit [Remote host closed the connection]
timclassic has quit [Remote host closed the connection]
M-Illandan has quit [Remote host closed the connection]
aspiwack[m] has quit [Write error: Connection reset by peer]
M-martinklepsch has quit [Write error: Connection reset by peer]
barkmadley[m] has quit [Read error: Connection reset by peer]
Bluddy[m] has quit [Write error: Connection reset by peer]
na9da[m] has quit [Write error: Connection reset by peer]
ktosiek[m] has quit [Write error: Connection reset by peer]
<Onemorenickname>
Drup, a syntactif inclusion could be useful sometimes
<Drup>
Onemorenickname: and what happens if you include said file in another module ?
<Drup>
Welcome to C's template, I guess
balod has joined #ocaml
<Drup>
It's not a good road to go down
<Drup>
(you can do it, of course, with camlp4 or other preprocessor)
<Onemorenickname>
Drup, i don't mind templating for incompressible boilerplate code
<Onemorenickname>
as long as it's clear, i don't see the problem
MercurialAlchemi has joined #ocaml
<Onemorenickname>
well, at least, ocaml module system is coherent
<Onemorenickname>
with a few boilerplate code, i could copy-paste everything, and "make" without error
aspiwack[m] has joined #ocaml
hio has left #ocaml ["Leaving"]
<mengu>
does anyone know if core will be available for 4.04?
KV has quit [Ping timeout: 240 seconds]
Sim_n has joined #ocaml
Simn has quit [Ping timeout: 255 seconds]
FreeBirdLjj has joined #ocaml
Bluddy[m] has joined #ocaml
M-jimt has joined #ocaml
na9da[m] has joined #ocaml
M-martinklepsch has joined #ocaml
timclassic has joined #ocaml
srenatus[m] has joined #ocaml
M-Illandan has joined #ocaml
ktosiek[m] has joined #ocaml
barkmadley[m] has joined #ocaml
M-ErkkiSeppl has joined #ocaml
silver has joined #ocaml
ggole has joined #ocaml
KV has joined #ocaml
sepp2k has joined #ocaml
w1gz has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
KV has quit [Ping timeout: 248 seconds]
malc_ has joined #ocaml
ggole_ has joined #ocaml
ggole has quit [Ping timeout: 260 seconds]
dhil has quit [Ping timeout: 248 seconds]
Onemorenickname has quit [Read error: Connection reset by peer]
ggole__ has joined #ocaml
kakadu has quit [Quit: Konversation terminated!]
ggole_ has quit [Ping timeout: 240 seconds]
freehck has quit [Ping timeout: 260 seconds]
nomicflux has joined #ocaml
agarwal1975 has quit [Quit: agarwal1975]
ggole__ has quit [Quit: ggole__]
KV has joined #ocaml
KV has quit [Ping timeout: 240 seconds]
govg has quit [Ping timeout: 255 seconds]
rwmjones has quit [Ping timeout: 248 seconds]
nomicflux has quit [Quit: nomicflux]
larhat has quit [Quit: Leaving.]
mengu has quit [Remote host closed the connection]
mengu has joined #ocaml
freehck has joined #ocaml
mengu has quit [Ping timeout: 240 seconds]
govg has joined #ocaml
dhil has joined #ocaml
agarwal1975 has joined #ocaml
mengu has joined #ocaml
mengu has quit [Remote host closed the connection]
mengu has joined #ocaml
<cheater>
hi
<cheater>
are ocaml lists like haskell lists in that if i match against a list using x :: xs then xs is shared with the original list?
<cheater>
or are x and xs new values?
<freehck>
no
<freehck>
they are new bindings
<Drup>
cheater: they are shared
<freehck>
well I think in haskell they are new too
mengu has quit [Ping timeout: 255 seconds]
<freehck>
Drup: maybe I didn't got what shared means? There's no way to modify them anyway.
<freehck>
Ah, the question was about memory allocation, right?
<freehck>
yup, sorry, Drup's right.
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
KV has joined #ocaml
zpe has quit [Ping timeout: 255 seconds]
KV has quit [Ping timeout: 240 seconds]
freehck has quit [Ping timeout: 260 seconds]
shinnya has joined #ocaml
infinity0_ has joined #ocaml
infinity0 is now known as Guest3853
infinity0 has joined #ocaml
infinity0_ is now known as infinity0
Guest3853 has quit [Killed (verne.freenode.net (Nickname regained by services))]
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
silver has quit [Read error: Connection reset by peer]
sh0t has joined #ocaml
kakadu has joined #ocaml
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
th5 has joined #ocaml
infinity0 has joined #ocaml
rwmjones has joined #ocaml
freehck has joined #ocaml
hcarty has quit [Ping timeout: 255 seconds]
orbifx has quit [Ping timeout: 255 seconds]
<flux>
so, mSAT. how difficult is it to convert a sat-solver to answer set programming solver and be applicaple for opam?
<Drup>
well, you need solving under optimisation objectives
<companion_cube>
^
<companion_cube>
sadly, it's a difficult problem
<Drup>
(you want "the most recent version of package X"
<Drup>
(not just "any package X")
<Drup>
Z3 does it, that's the only (foss) one, afaik, and it's quite difficult
<Drup>
(and the next question is "is it efficient" ...)
<Drup>
(and honestly, if I have to choose between aspcud and z3, i'm choosing aspcud)
<companion_cube>
:D
<companion_cube>
why so? ins't z3 better supported and with fewer dependencies?
<zozozo>
well, sat are primarily for satsifiability, not optimisation
<Drup>
companion_cube: until we have z3 pre-built in all package distribution, meeeh
<Drup>
z3 is ... not nice to package/build
<Drup>
I mean, yes, it has fewer dependencies, it only takes 30 to 40 minutes to build
orbifx has joined #ocaml
<Drup>
zozozo: I disagree, it's just a slightly distinct community, and the problem is usually called ASP, but that's still "SAT under optim"
KV has joined #ocaml
<zozozo>
you're right
<zozozo>
actually, one solution would be to encode the constraints into sat, try and find and model, and if one has been found re-try adding a constraint to force the sat to chose a newer version for at least one package
yomimono has joined #ocaml
<Drup>
Z3's way is to use simplex-like phase in the middle of the smt solving
KV has quit [Ping timeout: 245 seconds]
<companion_cube>
Drup: hu, z3 is packaged on more distributions than aspcud, I think
<Drup>
the issue is that, sometimes, you need to jump from one polyhedron to the next, simplex doesn't help for that
rwmjones has quit [Ping timeout: 264 seconds]
<Drup>
only in testing on debian, not in arch, only in ubuntu since the last version
<Drup>
(and yes, it will be in all distros eventually, I agree)
rwmjones has joined #ocaml
<flux>
can I use z3 instead of aspcud already?
<flux>
ie. does it work with cudf
<Drup>
not as far as I know, you need to make the encoding
<flux>
z3 cudf gave me zip on google :)
shinnya has quit [Ping timeout: 252 seconds]
<companion_cube>
so anyway, msat is not designed for this kind of stuff
<companion_cube>
we're not closer to have a pure-ocaml opam
<flux>
;-((
orbifx has quit [Ping timeout: 240 seconds]
orbifx has joined #ocaml
jao has joined #ocaml
abeaumont has quit [Read error: Connection reset by peer]
sepp2k has quit [Quit: Leaving.]
copy` has joined #ocaml
w1gz has quit [Quit: WeeChat 1.6]
infinity0 has quit [Remote host closed the connection]
ziyourenxiang has quit [Quit: Leaving]
KV has joined #ocaml
orbifx has quit [Ping timeout: 252 seconds]
w1gz has joined #ocaml
KV has quit [Ping timeout: 276 seconds]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 255 seconds]
w1gz has left #ocaml ["WeeChat 1.6"]
yomimono has quit [Ping timeout: 240 seconds]
mfp has quit [Ping timeout: 240 seconds]
yomimono has joined #ocaml
hcarty has joined #ocaml
infinity0 has joined #ocaml
AltGr has left #ocaml [#ocaml]
average has joined #ocaml
william-s has joined #ocaml
malc_` has joined #ocaml
malc_ has quit [Ping timeout: 255 seconds]
KV has joined #ocaml
KV has quit [Ping timeout: 240 seconds]
<seliopou>
yoyoyo
mfp has joined #ocaml
snowcrshd has joined #ocaml
jnavila has quit [Quit: It was time]
<snowcrshd>
I'm using (trying) topkg to build a small library, but I ran into a problem: After I successfully build with topkg and opam install, when I go to utop and try to #require "library", I get a reference error. The "library.ml" file contains an `open Internal_module`
<snowcrshd>
and this is where I get the error
<snowcrshd>
Why is `Internal_module` not available when I #require "library" ?
<companion_cube>
if it's not in some foo.mllib, it's probably not linked in the library?
<companion_cube>
(assuming you use topkg on top of ocamlbuild)
<companion_cube>
otoh maybe topkg handles that for you, don't know
<snowcrshd>
companion_cube: yeah, I was expecting it to be the later, but doesn't seem to be the case :P
ygrek_ has joined #ocaml
KV has joined #ocaml
<hcarty>
seliopou: Hello
<hcarty>
companion_cube: \o
<hcarty>
companion_cube: containers 1.0 is looking quite promising! :-)
<companion_cube>
yay \o/
octachron has joined #ocaml
FreeBirdLjj has joined #ocaml
P4Titan has joined #ocaml
<P4Titan>
Hi all. Is there a way I can create a type `Bytes`, but have it be a pre-specified, constant length?
FreeBirdLjj has quit [Ping timeout: 240 seconds]
<P4Titan>
somthing like "uint8_t[32] hash;" in C
<justin_smith>
Bytes.create N
<P4Titan>
but can that be somehow bound to the type though>
yomimono has quit [Ping timeout: 240 seconds]
<justin_smith>
oh, I see what you mean now
<P4Titan>
or how could I implement something that prevents overwriting or expanding this type
<P4Titan>
for example?
<P4Titan>
I want hashes to guarentee 32 byte arrays for instance
KV has quit [Ping timeout: 252 seconds]
kakadu has quit [Quit: Konversation terminated!]
<justin_smith>
I think you might need dependent types for that?
<P4Titan>
what does that imply?
<companion_cube>
P4Titan: you can make a private alias somewhere, and only build 32-bytes-long strings
<justin_smith>
oh, right, hide the implementation and expose something that returns an opaque instance
<companion_cube>
module Bytes32 : sig type t = private bytes val make : char -> t end = struct type t = bytes let create c = Bytes.make 32 c end
<companion_cube>
not necessarily opaque, juste a private alias
<justin_smith>
ahh, thanks for clarifying
<companion_cube>
so you can upcast to bytes
<companion_cube>
but since you can't downcast, it's safe
<P4Titan>
I'll look into this
<P4Titan>
thanks!
<companion_cube>
the invariant is not enforced by the type system, but you can enforce it yourself
<P4Titan>
invariant?
<companion_cube>
assuming Bytes32 is correct, the invariant will hold in the rest of the program
<companion_cube>
that Bytes32.t has length 32
<justin_smith>
and with dependent typing we could express that directly, if I understand correctly
<companion_cube>
this will be true if you write Bytes32 properly (i.e. only building instances of the correct length)
<companion_cube>
justin_smith: maybe, yes
<companion_cube>
but that's really too complicated for OCaml
dhil has quit [Ping timeout: 256 seconds]
al-damiri has joined #ocaml
ciniglio has quit [Ping timeout: 255 seconds]
dhil has joined #ocaml
average has quit [Ping timeout: 245 seconds]
yomimono has joined #ocaml
axon has joined #ocaml
average has joined #ocaml
_andre has quit [Quit: leaving]
KV has joined #ocaml
Xadnem has joined #ocaml
fraggle_ has quit [Remote host closed the connection]
kakadu has joined #ocaml
KV has quit [Ping timeout: 252 seconds]
malc_` has quit [Quit: ERC (IRC client for Emacs 25.0.50.2)]
orbifx has joined #ocaml
snowcrshd has quit [Ping timeout: 264 seconds]
jnavila has joined #ocaml
yomimono has quit [Ping timeout: 240 seconds]
fraggle_ has joined #ocaml
yomimono has joined #ocaml
Soni is now known as CTCP-S
CTCP-S is now known as Go-Away-OC
Go-Away-OC is now known as APNG
APNG is now known as Soni
<Xadnem>
ktosiek[m] reynir zv
<Xadnem>
n/
<companion_cube>
?
KV has joined #ocaml
zpe has joined #ocaml
fraggle_ has quit [Read error: Connection reset by peer]
KV has quit [Ping timeout: 258 seconds]
mengu has joined #ocaml
mengu has quit [Remote host closed the connection]
mengu has joined #ocaml
axon has quit [Ping timeout: 255 seconds]
mengu has quit [Remote host closed the connection]
fraggle_ has joined #ocaml
mengu has joined #ocaml
mengu has quit [Remote host closed the connection]
mengu has joined #ocaml
mengu has quit [Remote host closed the connection]
mengu has joined #ocaml
<pitastrudl>
we are taking ocaml at a uni course soon, my 2nd attempt ;_;
<companion_cube>
good luck! hold on it, it's not that hard :)
MercurialAlchemi has quit [Ping timeout: 240 seconds]
zpe has quit [Remote host closed the connection]
mengu has quit [Remote host closed the connection]
mengu has joined #ocaml
axon has joined #ocaml
FreeBirdLjj has joined #ocaml
<Drup>
hum, the visitor package, I wanted to write that for quite some time
KV has joined #ocaml
<Armael>
the 28pages documentation :D
<Armael>
François
<Armael>
™
<Drup>
true, but the documentation is very nice to read
<Armael>
but I'm not complaining !
<Armael>
I think its remarkable
<companion_cube>
so it's a ppx deriving visitor?
<Drup>
companion_cube: yes
<Drup>
with lot's of options
<Drup>
it looks extremly well made
FreeBirdLjj has quit [Ping timeout: 240 seconds]
<companion_cube>
good for the users
KV has quit [Ping timeout: 240 seconds]
fraggle_ has quit [Remote host closed the connection]
fraggle_ has joined #ocaml
octachron has quit [Quit: Leaving]
jao has quit [Remote host closed the connection]
th5 has quit []
jnavila has quit [Remote host closed the connection]
kakadu has quit [Remote host closed the connection]
dhil has quit [Ping timeout: 240 seconds]
wtetzner has joined #ocaml
KV has joined #ocaml
KV has quit [Ping timeout: 248 seconds]
jao has joined #ocaml
<reynir>
Xadnem: huh?
Xadnem has quit [Quit: leaving]
shinnya has joined #ocaml
axon has quit [Quit: Leaving]
Sim_n has quit [Read error: Connection reset by peer]