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
_obad_ has quit [Ping timeout: 255 seconds]
_obad_ has joined #ocaml
clog has quit [Read error: Connection reset by peer]
Sorella has joined #ocaml
ontologiae_ has joined #ocaml
struktured has joined #ocaml
small-wolf has joined #ocaml
_obad_ has quit [Ping timeout: 252 seconds]
ncthom91 has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
keen____ has joined #ocaml
badkins has quit []
keen___ has quit [Ping timeout: 256 seconds]
<lewis1711> going to trying to tackle the Univ type thing again. didn't understand how to use it at all last time I tried to read the module
small-wolf has quit [Ping timeout: 250 seconds]
small-wolf has joined #ocaml
ontologiae_ has quit [Ping timeout: 250 seconds]
<struktured> lewis1711: what are you up to exactly?
<lewis1711> struktured, trying to use an emulated in advanced concept I saw in C - (void*)
<lewis1711> ;)
<lewis1711> I basically want a field in a struct that can hold anything
<lewis1711> er... record
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<lewis1711> my other option would be to write a huge sum type, and just add a case to it every time I use another type, I guess.
<struktured> sum type seems like obvious choice I'd say
<struktured> why do you need such a type out of curiousity?
<lewis1711> interpreter
<struktured> dynamic one I take it?
<lewis1711> no, but it's easier if every "Atom" of the program is the same type in the interpreter
ncthom91 has quit [Quit: Textual IRC Client: www.textualapp.com]
<lewis1711> then when they interact, you do some casting to do the computation - after the type-checking phase of course
<struktured> you could also do an open polymorphic variant..not sure what is best
<lewis1711> that's anothing thing I struggled to understand
<struktured> the annoyance of that approach, among several things, is open types usually require carrying around an 'a type parameter
<struktured> open polymorphic variants
<struktured> but open sum type doesn't which is nice
<lewis1711> open sum type.. which is UNiv?
<struktured> open sum type is the universal one, essentially.
<struktured> type open = ...
<struktured> type open_t += ...
<struktured> sorry
<lewis1711> huh
<lewis1711> I have never seen that before
<lewis1711> these are "variants"?
<struktured> lewis1711: it's new to ocaml 4.02+ I believe
palomer has joined #ocaml
<lewis1711> ah yes, I've come across it before, but failed to understand it. I'll try again
darkf has joined #ocaml
<struktured> lewis1711: ok the syntax is actually type sum_t = ..
<struktured> then type sum_t += Foo
<struktured> et
<struktured> c
<struktured> of course you need to match against anything and in that circumstance you usually have to raise an exception
<lewis1711> hang on no, I understand variants... I was thinking of "Polymorphic Variants" or something else. with the `
<lewis1711> ahhh
<struktured> you famiiliar with typ exn ? its the same semantics. type exn = .. ;; type exn += Exception, ec...
<struktured> *etc..
small-wolf has quit [Ping timeout: 264 seconds]
<lewis1711> I am trying to find the docs for this
<struktured> "extensible variant types" is proper name evidently
<lewis1711> ahh.. your syntax was literal! the "..."
<struktured> yeah but two ..
<struktured> not one
<struktured> not 3
<struktured> sorry been a long day, time for lunch be back in a bit
<struktured> err dinner lol
<lewis1711> I know what it's like :) thanks for your help
<struktured> np
BitPuffin|osx has quit [Ping timeout: 240 seconds]
<lewis1711> "Polymorphic variants" look like what I want, but how do I make a field in a record that can take them? I tried "{ field : [> ] }"
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
n3ss3s has quit [Ping timeout: 264 seconds]
palomer has quit [Quit: palomer]
palomer has joined #ocaml
palomer has quit [Client Quit]
hellome has joined #ocaml
<struktured> if it's open you need a type parameter
<struktured> type 'a foo = {id:int; poly:[> `Bar|`Zed] as 'a}
javamonn has joined #ocaml
ygrek has joined #ocaml
JuggleTux has quit [Quit: leaving]
tnguyen has quit [Quit: tnguyen]
ygrek has quit [Ping timeout: 276 seconds]
jeffmo has quit [Quit: jeffmo]
SomeDamnBody has joined #ocaml
<SomeDamnBody> Is there any way to get more meaningful type errors in ocaml?
<struktured> SomeDamnBody: opam switch to the branch with better type errors..
<SomeDamnBody> struktured, ...what branch is that?
<struktured> SomeDamnBody: 4.02.0+improved-errors
<SomeDamnBody> right now, I swear for the life of me I can't figure out what the compiler is complaining about
<struktured> show me the code / error...I feel generous tonight
darkf_ has joined #ocaml
<SomeDamnBody> struktured, : looks like this
<SomeDamnBody> File "src/bap_mc/bap_mc.ml", line 141, characters 12-31:
<SomeDamnBody> Error: This expression has type
<SomeDamnBody> mem -> Bap_disasm_types.Basic.full_insn -> 'd * int -> 'c
<SomeDamnBody> ('a, 'b, word * int, 'c) Dis.state ->
<SomeDamnBody> but an expression was expected of type
<SomeDamnBody> ('a, 'b, int, 'e) Dis.state ->
<SomeDamnBody> mem -> (Dis.asm, Dis.kinds) Dis.insn -> int -> 'e
<SomeDamnBody> Type word * int is not compatible with type int
darkf has quit [Ping timeout: 265 seconds]
<SomeDamnBody> woops. Didn't mean to flood
<struktured> use gists ideally..
<SomeDamnBody> ok, i'll post it to gist
<struktured> tx
<SomeDamnBody> can you see that message?
<SomeDamnBody> you would have to download a big library to edit it... that might take you a while
ljs has quit [Quit: Be back later ...]
ljs has joined #ocaml
ljs has quit [Ping timeout: 240 seconds]
palomer has joined #ocaml
ljs has joined #ocaml
sdothum has quit [Quit: ZNC - 1.6.0 - http://znc.in]
mengu has joined #ocaml
mengu has joined #ocaml
mengu has quit [Ping timeout: 272 seconds]
idegen has quit [Quit: Leaving.]
palomer has quit [Quit: palomer]
n3ss3s has joined #ocaml
palomer has joined #ocaml
small-wolf has joined #ocaml
palomer has quit [Client Quit]
javamonn has quit [Remote host closed the connection]
javamonn has joined #ocaml
darkf_ is now known as darkf
hilquias has quit [Ping timeout: 272 seconds]
javamonn has quit [Ping timeout: 276 seconds]
<lewis1711> SomeDamnBody, what don't you get about the error message?
<SomeDamnBody> lewis1711, tis solved already mate :)
shinnya has quit [Ping timeout: 276 seconds]
small-wolf has quit [Ping timeout: 245 seconds]
osa1_ has quit [Ping timeout: 265 seconds]
pyon has quit [Ping timeout: 272 seconds]
<SomeDamnBody> ok last question... what can be passed to Bitvector.of_string?
<SomeDamnBody> I'm doing Bitvector.of_string "0" thinking that I should get a bitvector that can hold that, but it isn't working...
<SomeDamnBody> exception:
<SomeDamnBody> Exception: (Failure "Bitvector.of_string: '11111111'").
n3ss3s has quit [Ping timeout: 272 seconds]
ljs has quit [Quit: Be back later ...]
pyon has joined #ocaml
<struktured> I'm sure you looked at bitvector.of_string doc or impl you'd quickly understand why
<struktured> I don't have it though
<SomeDamnBody> I looked at the impl...
<SomeDamnBody> I'll go dig for the doc
n3ss3s has joined #ocaml
palomer has joined #ocaml
matason has joined #ocaml
_obad_ has joined #ocaml
nullcat_ has joined #ocaml
ljs has joined #ocaml
<struktured> I found it I think
<struktured> hehe
<struktured> Core.Std.String.split ~on:':' "0" = [0] right ?
<struktured> will not match for singleton expressions
<struktured> bug I assume
<struktured> or maybe intentional...but either way it expects "true" "false" or "big num : integer "
slash^ has joined #ocaml
<struktured> SomeDamnBody: I wouldn't build bitstring that way anyhow... better to use integer lists, for example
<struktured> (or array, for performance)
SomeDamnBody has quit [Ping timeout: 245 seconds]
_obad_ has quit [Ping timeout: 256 seconds]
ljs has quit [Quit: Be back later ...]
ljs has joined #ocaml
badon has joined #ocaml
ljs has quit [Quit: Be back later ...]
ggole has joined #ocaml
Nijikokun has joined #ocaml
small-wolf has joined #ocaml
MercurialAlchemi has joined #ocaml
<lewis1711> is there anyway to do a Hashtable literal? the module has no from_alist or whatever function
nullcat_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<lewis1711> like Map does
mengu has joined #ocaml
<lewis1711> maybe the stdlib/core designers are trying to punish people for not being functional enough
<lewis1711> (that was supposed to be a joke. sorry if it wasn't funny)
<small-wolf> something potentially useful is missing from Pervasives? I'm shocked.
mengu has quit [Ping timeout: 276 seconds]
Nijikokun_ has joined #ocaml
Nijikokun has quit [Ping timeout: 276 seconds]
pobivan has joined #ocaml
ahabmd has joined #ocaml
<struktured> lewis1711: core has Core.Std.Hash_heap.Hashtbl.Make(...), which has an of_alist function
<struktured> oh wait, you don't nee the heap part
<struktured> its just core's hashtbl version
<struktured> stdlib is very scarce in general though, don't expect much from it
nullcat has joined #ocaml
Nijikokun_ has quit [Ping timeout: 256 seconds]
<lewis1711> struktured, ah right. Here I was looking at String.Table.... etc
matason has quit []
ahabmd has left #ocaml ["Leaving"]
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
avsm has joined #ocaml
<lewis1711> nope, these signatures are way too funky for me. and split across different modules
<lewis1711> "let ht = Core.Std.Hashtbl.of_alist ["three", 3];;" is my best guess
small-wolf has quit [Ping timeout: 255 seconds]
<lewis1711> the sig is
<lewis1711> "val of_alist : ('a key, 'b,
<lewis1711> ('a key * 'b) list -> [ `Duplicate_key of 'a key | `Ok of ('a, 'b) t ])
<lewis1711> create_options"
<struktured> yeah I saw it. it's not that bad
<lewis1711> where create_options is clickable, but does nothing
<struktured> also btw you could use containers version of hash table, probably has something useful of this sort too
<lewis1711> just after a hashtable from an alist
<ggole> Is there of_alist_exn?
<ggole> That might have a friendlier (but more error-prone) interface
steshaw has joined #ocaml
<struktured> yeah there is
<ggole> I actually like that duplicate keys are tested for
redpoppies has joined #ocaml
<lewis1711> well I do too
<lewis1711> it's just that I can't prase the type sig
<lewis1711> how do I go ahead and use "ht"
<lewis1711> what is a "hashable:bytes Pooled_hashtbl.Hashable.t"?
<ggole> A named argument taking a hashtable mapping a pooled hashtable (whatever that is) to a byte string
<lewis1711> right
<ggole> Core hashtables are pretty funky
<lewis1711> I'm happy to use any hashtable
<lewis1711> that takes an alist
n3ss3s has quit [Ping timeout: 256 seconds]
<lewis1711> I could just declare an empty one and fill it up I guess, but I don't know how to work that in an expression language like ocaml
<ggole> You could just write your own tbl_of_alist
<lewis1711> is that possible in the body of a function?
hilquias has joined #ocaml
kakadu_ has joined #ocaml
hilquias has quit [Changing host]
hilquias has joined #ocaml
<ggole> let tbl_of_alist alist = let tbl = Hashtbl.create 8 in List.iter (fun (k, v) -> if Hashtbl.mem tbl k then failwith "duplicate" else Hashtbl.add tbl k v) alist; tbl
xificurC_ has quit [Quit: WeeChat 1.1.1]
xificurC has joined #ocaml
<lewis1711> thinks ggole
<lewis1711> *thanks
ygrek has joined #ocaml
jonludlam has quit [Remote host closed the connection]
nullcat has joined #ocaml
nullcat has quit [Ping timeout: 264 seconds]
antkong has quit [Quit: antkong]
nullcat has joined #ocaml
avsm has quit [Quit: Leaving.]
TheLemonMan has joined #ocaml
TheLemonMan has quit [Changing host]
TheLemonMan has joined #ocaml
Gama11 has joined #ocaml
MercurialAlchemi has quit [Remote host closed the connection]
thomasga has joined #ocaml
matason has joined #ocaml
thomasga has quit [Quit: Leaving.]
Hetu has joined #ocaml
larhat has joined #ocaml
hilquias has quit [Remote host closed the connection]
shinnya has joined #ocaml
dsheets has quit [Ping timeout: 265 seconds]
theblatte has joined #ocaml
lordkryss has joined #ocaml
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
TheLemon1an has joined #ocaml
TheLemon1an has quit [Client Quit]
ljs has joined #ocaml
ljs has quit [Ping timeout: 244 seconds]
dsheets has joined #ocaml
Haudegen has quit [Ping timeout: 240 seconds]
mengu__ has joined #ocaml
Nijikokun has joined #ocaml
Submarine has quit [Quit: Leaving]
Submarine has joined #ocaml
Submarine has quit [Changing host]
Submarine has joined #ocaml
Submarine has quit [Remote host closed the connection]
Haudegen has joined #ocaml
_obad_ has joined #ocaml
freling has joined #ocaml
Submarine has joined #ocaml
Submarine has joined #ocaml
palomer has quit [Quit: palomer]
jonludlam has joined #ocaml
Reventlo1 is now known as Reventlov
ontologiae_ has joined #ocaml
_obad_ has quit [Ping timeout: 240 seconds]
dav- is now known as dav
<theblatte> dora-molly: if I M-. something with emacs (goto tag) with merlin enabled, I get the "Visit tags table" prompt, I think it's not supposed to do that
mic____ has joined #ocaml
<mic____> I am using Str library in my code, and when compiling, I get the error: no implementation provoded for the Str module. How I can fix it?
<adrien> how do you compile?
<mic____> ocamlopt
<mic____> ocamlopt -o name name.ml
<adrien> ocamlopt -o name str.cma name.ml
<adrien> err
<adrien> str.cmxa, sorry
<mic____> worked. Thanks.
gargaml has joined #ocaml
theblatte has quit [Quit: Reconnecting]
theblatte has joined #ocaml
theblatte has quit [Client Quit]
octachron has joined #ocaml
yomimono has joined #ocaml
Nijikokun has quit [Remote host closed the connection]
TheLemon1an has joined #ocaml
<dmbaturin> mic____: Findlib makes it easier. 'ocamlfind ocamlopt -package str -linkpkg -o name name.ml'
<adrien> well, with this example it's longer :P
<adrien> (but yeah, for anything non-trivial it's better and simpler)
<dmbaturin> Longer, but still easier. :)
TheLemon1an has quit [Client Quit]
rand000 has joined #ocaml
_whitelogger has joined #ocaml
larhat has quit [Quit: Leaving.]
Hetu has quit [Remote host closed the connection]
freling has quit [Quit: Leaving.]
sdothum has joined #ocaml
larhat has joined #ocaml
theblatte has joined #ocaml
_obad_ has joined #ocaml
freling has joined #ocaml
freling has left #ocaml [#ocaml]
palomer has joined #ocaml
Hannibal_Smith has joined #ocaml
larhat has quit [Quit: Leaving.]
Hannibal_Smith has quit [Quit: Leaving]
ygrek has quit [Ping timeout: 246 seconds]
dsheets has quit [Ping timeout: 252 seconds]
badkins has joined #ocaml
Submarine has quit [Ping timeout: 272 seconds]
BitPuffin|osx has joined #ocaml
MercurialAlchemi has joined #ocaml
nojb has joined #ocaml
rand000 has quit [Quit: leaving]
Gama11_ has joined #ocaml
Gama11 has quit [Ping timeout: 256 seconds]
nojb has quit [Quit: nojb]
rand000 has joined #ocaml
nojb has joined #ocaml
ljs has joined #ocaml
osa1_ has joined #ocaml
milosn has quit [Quit: leaving]
badkins has quit []
osa1_ has quit [Read error: Connection reset by peer]
osa1_ has joined #ocaml
larhat has joined #ocaml
javamonn has joined #ocaml
mic____ has quit [Ping timeout: 246 seconds]
MercurialAlchemi has quit [Ping timeout: 250 seconds]
MercurialAlchemi has joined #ocaml
osa1_ has quit [Ping timeout: 256 seconds]
kapil___ has joined #ocaml
luzie has quit [Quit: WeeChat 1.2-rc1]
larhat has quit [Quit: Leaving.]
luzie has joined #ocaml
idegen has joined #ocaml
badkins has joined #ocaml
A1977494 has joined #ocaml
osa1_ has joined #ocaml
justgage has joined #ocaml
larhat has joined #ocaml
Gama11 has joined #ocaml
A1977494 has left #ocaml [#ocaml]
Gama11_ has quit [Ping timeout: 276 seconds]
The_Mad_Pirate has quit [Remote host closed the connection]
The_Mad_Pirate has joined #ocaml
larhat has quit [Quit: Leaving.]
larhat has joined #ocaml
luzie has quit [Quit: WeeChat 1.2-rc1]
luzie has joined #ocaml
freling has joined #ocaml
asQuirreL has joined #ocaml
dubosec has quit [Ping timeout: 252 seconds]
nojb has quit [Quit: nojb]
Haudegen has quit [Read error: Connection reset by peer]
octachron has quit [Quit: Leaving]
<osa1_> can anyone help me with this typing problem: http://lpaste.net/131835
darkf has quit [Quit: Leaving]
avsm has joined #ocaml
ygrek has joined #ocaml
osa1__ has joined #ocaml
osa1__ has quit [Read error: Connection reset by peer]
osa1 has joined #ocaml
osa1__ has joined #ocaml
osa1_ has quit [Ping timeout: 256 seconds]
osa1 has quit [Ping timeout: 265 seconds]
Gama11_ has joined #ocaml
larhat has quit [Quit: Leaving.]
uris77 has joined #ocaml
Gama11__ has joined #ocaml
Gama11 has quit [Ping timeout: 246 seconds]
Gama11_ has quit [Ping timeout: 264 seconds]
larhat has joined #ocaml
rand000 has quit [Quit: leaving]
rand000 has joined #ocaml
Submarine has joined #ocaml
Submarine has joined #ocaml
freling has quit [Quit: Leaving.]
JuggleTux has joined #ocaml
osa1__ has quit [Quit: Konversation terminated!]
osa1__ has joined #ocaml
freling has joined #ocaml
freling has quit [Client Quit]
Haudegen has joined #ocaml
jeffmo has joined #ocaml
lyxia_ is now known as lyxia
avsm has quit [Quit: Leaving.]
lobo has joined #ocaml
larhat has quit [Quit: Leaving.]
mengu__ has quit []
thizanne has quit [Ping timeout: 256 seconds]
lewis1711 has quit [Ping timeout: 250 seconds]
Hannibal_Smith has joined #ocaml
rand000 has quit [Ping timeout: 264 seconds]
<struk|work> sweet! utop works fine as an interpreter to run ocaml scripts. this might help me convert some pythonistas in my office
<struk|work> just "#require foo " at top of the script and it feels like a dynamic language
<Drup> utop is not really useful for that
<Drup> just use the regular toplevel with topfind loaded
<struk|work> it did work when I tried it
<struk|work> does topfind support #require and whatnot?
justgage has quit [Ping timeout: 256 seconds]
<Drup> topfind is the thing that support #require
<Drup> utop just load it by default
<struk|work> got it
<struk|work> thanks
<struk|work> and topfind is builtin, so it's preferred I'd imagine
<Drup> topfind is not builtin
<Drup> it's with ocamlfind
<struk|work> ok, that's still more likely to exist than utop I feel like
<Drup> exactly
<Drup> (you might be interested by ocamlscript
<Drup> )
jonludlam has quit [Quit: Leaving]
<ggole> You can reload but not redefine
<ggole> So some of the ways of working from dynamic languages don't really work
jonludlam has joined #ocaml
kdef has joined #ocaml
lordkryss has quit [Quit: Connection closed for inactivity]
<struk|work> I saw ocamlscript earlier, I don't like that it doesn't appear top compatibile
<struk|work> but maybe that's not such a big deal
larhat has joined #ocaml
pippijn has quit [Remote host closed the connection]
s1n4 has joined #ocaml
avsm has joined #ocaml
pippijn has joined #ocaml
ljs has quit [Quit: Be back later ...]
palomer has quit [Quit: palomer]
jonludlam has quit [Ping timeout: 264 seconds]
ygrek has quit [Remote host closed the connection]
ygrek has joined #ocaml
Hannibal_Smith has quit [Quit: Leaving]
redpoppies has quit [Quit: redpoppies]
srcerer has joined #ocaml
BitPuffin|osx has quit [Ping timeout: 265 seconds]
Hannibal_Smith has joined #ocaml
jleroux has joined #ocaml
larhat has quit [Quit: Leaving.]
milosn has joined #ocaml
srcerer has quit [Quit: ChatZilla 0.9.91.1 [Firefox 37.0.1/20150402191859]]
jwatzman|work has joined #ocaml
srcerer has joined #ocaml
ljs has joined #ocaml
nullcat_ has joined #ocaml
Leonidas has joined #ocaml
<Leonidas> hi again
<Leonidas> there is no way to add "development" dependencies to opam packages, is there?
avsm has quit [Quit: Leaving.]
Algebr has joined #ocaml
Haudegen has quit [Ping timeout: 272 seconds]
MercurialAlchemi has quit [Ping timeout: 264 seconds]
TheLemonMan has quit [Remote host closed the connection]
Hannibal_Smith has quit [Quit: Leaving]
A1977494 has joined #ocaml
mic___ has joined #ocaml
ygrek has quit [Ping timeout: 245 seconds]
<Drup> there is a bug report about that
<Drup> otherwise, well, just modify the local opam package in the repository.
Haudegen has joined #ocaml
MrScout has joined #ocaml
The_Mad_Pirate has quit [Remote host closed the connection]
The_Mad_Pirate has joined #ocaml
nullcat_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
yomimono has quit [Ping timeout: 240 seconds]
avsm has joined #ocaml
robink has quit [Ping timeout: 255 seconds]
robink_ has joined #ocaml
uris77 has quit [Read error: Connection reset by peer]
uris77 has joined #ocaml
BitPuffin|osx has joined #ocaml
thizanne has joined #ocaml
<avsm> Leonidas: yeah, your local opam file can have all the latest deps
JuggleTux has quit [Ping timeout: 256 seconds]
nullcat_ has joined #ocaml
ontologiae_ has quit [Ping timeout: 252 seconds]
JuggleTux has joined #ocaml
robink_ is now known as robink
thomasga has joined #ocaml
avsm has quit [Quit: Leaving.]
nullcat_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<Sizur> so functors can evaluate to signatures, so signatures can be parametric. (answering my earlier question)
<Sizur> hm, they must be able to, otherwise how can you express a type of a parametric module. that was a stupid question in retrospect.
justgage has joined #ocaml
thomasga has quit [Quit: Leaving.]
BitPuffin|osx has quit [Ping timeout: 272 seconds]
MrScout_ has joined #ocaml
struk|work has quit [Quit: Page closed]
MrScout has quit [Ping timeout: 256 seconds]
mic___ has quit [Ping timeout: 246 seconds]
struk|work has joined #ocaml
Haudegen has quit [Ping timeout: 256 seconds]
n3ss3s has joined #ocaml
seangrove has joined #ocaml
swgillespie has joined #ocaml
pii4 has quit [Quit: [-.-]...]
osa1__ has quit [Ping timeout: 256 seconds]
pii4 has joined #ocaml
Haudegen has joined #ocaml
rand000 has joined #ocaml
dav has quit [Ping timeout: 264 seconds]
n3ss3s has quit [Ping timeout: 240 seconds]
dav has joined #ocaml
nojb has joined #ocaml
Haudegen has quit [Ping timeout: 272 seconds]
jleroux has quit [Remote host closed the connection]
jleroux has joined #ocaml
Haudegen has joined #ocaml
Anarchos has joined #ocaml
milosn has quit [Ping timeout: 250 seconds]
milosn has joined #ocaml
redpoppies has joined #ocaml
MercurialAlchemi has joined #ocaml
rand000 has quit [Ping timeout: 255 seconds]
slash^ has quit [Read error: Connection reset by peer]
bobry has quit [Quit: Connection closed for inactivity]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
osa1__ has joined #ocaml
osa1__ has quit [Remote host closed the connection]
avsm has joined #ocaml
osa1__ has joined #ocaml
ggole has quit []
matason has quit []
avsm has quit [Quit: Leaving.]
nojb has quit [Quit: nojb]
MrScout_ has quit [Remote host closed the connection]
MrScout has joined #ocaml
MrScout has quit [Ping timeout: 256 seconds]
matason has joined #ocaml
oriba has joined #ocaml
The_Mad_Pirate has quit [Ping timeout: 272 seconds]
swgillespie has joined #ocaml
osa1__ has quit [Ping timeout: 252 seconds]
axiles has quit [Ping timeout: 256 seconds]
osa1__ has joined #ocaml
BitPuffin|osx has joined #ocaml
Haudegen has quit [Ping timeout: 244 seconds]
badkins has quit []
kdef has quit [Ping timeout: 245 seconds]
osa1__ has quit [Ping timeout: 244 seconds]
struk|work has quit [Quit: Page closed]
dubosec has joined #ocaml
TheLemonMan has joined #ocaml
MrScout has joined #ocaml
kdef has joined #ocaml
pobivan has quit [Quit: pobivan]
Haudegen has joined #ocaml
<oriba> the refman speaks about first class module the following way: "This extension makes it possible to pack a module as a first-class value, which can later be dynamically unpacked into a module."
<oriba> what is meant by "dynamically unpacked"?
<oriba> Does it involve runtime-costs?
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
<smondet> oriba: I think the runtime costs are mostly equivalent to the ones you'd have if you had put a bunch of functions into a record (one indirection / no inlining)
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<smondet> (I'm not completely sure, anyone feel free to correct)
thomasga has joined #ocaml
javamonn has quit [Remote host closed the connection]
swgillespie has joined #ocaml
bobry has joined #ocaml
A19774941 has joined #ocaml
A1977494 has quit [Read error: Connection reset by peer]
A19774941 has left #ocaml [#ocaml]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
q66[lap] has joined #ocaml
q66[lap] has quit [Remote host closed the connection]
small-wolf has joined #ocaml
ljs has quit [Quit: Be back later ...]
ljs has joined #ocaml
osa1__ has joined #ocaml
ljs has quit [Ping timeout: 256 seconds]
swgillespie has joined #ocaml
mengu__ has joined #ocaml
redpoppies has quit [Quit: redpoppies]
enquora has joined #ocaml
ljs has joined #ocaml
JuggleTux has quit [Ping timeout: 265 seconds]
JuggleTux has joined #ocaml
enquora has quit [Remote host closed the connection]
enquora has joined #ocaml
enquora has quit [Remote host closed the connection]
jeffmo has quit [Quit: jeffmo]
gargaml has quit [Quit: WeeChat 1.1.1]
rand000 has joined #ocaml
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
kakadu_ has quit [Remote host closed the connection]
Algebr has quit [Ping timeout: 276 seconds]
justgage has quit [Quit: Leaving]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
MercurialAlchemi has quit [Ping timeout: 272 seconds]
seangrove has quit [Ping timeout: 272 seconds]
n3ss3s has joined #ocaml
tanguc_s has joined #ocaml
<tanguc_s> hi
Gama11__ has quit [Read error: Connection reset by peer]
<tanguc_s> Hi i have a little problem : http://pastebin.com/nUyf3Kr2 when i compile i have this error This expression has type ('a * (int * 'b * 'c * 'd)) array array but an expression was expected of type 'c The type variable 'c occurs inside ('a * (int * 'b * 'c * 'd)) array array
jeffmo has joined #ocaml
<tanguc_s> anyone can help me ? thx
<thizanne> tanguc_s: your let define a c
<thizanne> but I suspect the c you want to use in your expressions are your parameter
asQuirreL has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
dubosec has quit [Ping timeout: 264 seconds]
<tanguc_s> thx
jeffmo has quit [Quit: jeffmo]
ljs has quit [Quit: Be back later ...]
ljs has joined #ocaml
small-wolf has quit [Remote host closed the connection]
jeffmo has joined #ocaml
<tanguc_s> ls
kdef has quit [Quit: Leaving]
ljs has quit [Ping timeout: 256 seconds]
ljs has joined #ocaml
MrScout has quit [Ping timeout: 265 seconds]
<adrien> anyone knows if gnu make is always available on mac os x?
<struktured> for a dev machine I would say it's a safe bet, otherwise..no
<struktured> unless you mean always installable, then yeah definitely
uris77 has quit [Remote host closed the connection]
<tanguc_s> anyone has idea ?
<sheijk> adrien: it's not installed by default, and will only come with xcode. so you'll need a multi-gb download
<tanguc_s> nobody ? :'(
thomasga has quit [Quit: Leaving.]
kdef has joined #ocaml
<adrien> sheijk: thanks
<adrien> (crap)
<adrien> sheijk: hmm, but if you have a C compiler on the system, then do you have gnu make?
<adrien> because actually, gcc/llvm won't be installed by default either I guess
<thizanne> tanguc_s: what is your question ?
mengu__ has quit [Remote host closed the connection]
<adrien> tanguc_s: why (_, _, case) in the function?
<adrien> looks like only "case" would be enough
<adrien> (but images aren't the most practical ways to debug code)
<oriba> adrien: there should be "developer tools" available for Mac OS-X in any case. Either they come as dvd, or you can download them.
<tanguc_s> case be enough ?
<adrien> replace
<adrien> (_, _, case)
<adrien> with
<adrien> case
<tanguc_s> i have the same issue
<adrien> oriba: I'm wonder what the default make is
maurer has quit [Remote host closed the connection]
<adrien> tanguc_s: you really should post the code as text; it makes trying impossible otherwide
<adrien> otherwise*
* adrien going to bed soon
<thizanne> tanguc_s: just as a side notice, if you're more comfortable with french, there is also #ocaml-fr (where adrien also happens to procrastinate)
<tanguc_s> ah thx ^
<tanguc_s> ^
<tanguc_s> how do u know that im french XD ?
<sheijk> adrien: for a c compiler you will need to install xcode, too. (well, unless you build your own make/gcc from source and provide an installer)
<bitbckt> tanguc_s: the " ?" is a dead giveaway.
<theblatte> tanguc_s: tanguc_s@gig34-1-78-246-26-183.fbx.proxad.net ^^
<tanguc_s> XD
<adrien> (the video in the screenshot has a french filename)
<tanguc_s> fu server send my informations x')
<thizanne> (your screenshot sent your informations, as adri_en said)
<tanguc_s> so anyone has an idea ?
<Leonidas> Drup: yes, that's exactly what I ended up with. Plus comments like "DON'T YOU DARE CHECKING THIS IN TO OPAM-REPOSITORY" :-)
<thizanne> what is your error ?
maurer has joined #ocaml
<tanguc_s> Error: The implementation Labyrinthe.ml
<tanguc_s> does not match the interface Labyrinthe.cmi:
<tanguc_s> Values do not match:
<tanguc_s> val set_open_wall :
<tanguc_s> int ->
<tanguc_s> int -> int -> 'a -> ('b * ('a * 'a * 'a * 'a)) array array -> unit
<tanguc_s> is not included in
<tanguc_s> val set_open_wall : int -> int -> int -> int -> tlabyrinthe -> unit
<tanguc_s> File "Labyrinthe.ml", line 21, characters 4-17: Actual declaration
<tanguc_s> the same as img
<adrien> actually no
<adrien> looks closer
<adrien> but going to bed now, too tired to think
<Leonidas> flux: shit's fixed, yo! :p
<tanguc_s> :x
<Leonidas> tanguc_s: the one has 3 int params, the other has four
<Leonidas> unless 'a is int, no idea
matason has quit []
<thizanne> tanguc_s: you're affecting (color, (value, b, c, d)) to case.(x).(y)
<tanguc_s> yes
<thizanne> which means case is an array containing values which are 2-tuples, with elements color and (value, b, c, d) - itself being a 4-tuple
<thizanne> that's not what you want according to your definition of labyrinthe
<Leonidas> oh wow, ppx_utf8_lit <3
<Leonidas> dbuenzli is great
badon has quit [Quit: Leaving]
<tanguc_s> how itself being a 4 tuples ?
<thizanne> not 4 tuples, a 4-tuple (a tuple of 4 elements)
<tanguc_s> yeah but i dont see the solution
<thizanne> your type case is int * wall array
<tanguc_s> yes
<thizanne> I guess case.(x).(y) is supposed yo be a case
<thizanne> and here you're trying to affect to case.(x).(y) a int * (int * int * int * int)
<thizanne> which is a int * wall
<thizanne> so I don't know what the solution is, but that is the problem
<tanguc_s> but with inference he dont recognize ?
<tanguc_s> wall is int * int * int * int
<thizanne> yeah but wall array is not
<tanguc_s> int * wall = int * (int * int * int * int) its the same deeply
<tanguc_s> i could to make wall.(0) ?
<thizanne> if you're trying to say type case = (int * wall) array, then you need the parentheses
<tanguc_s> i just need to wall array not the first int
<tanguc_s> i tried it, the same error
madroach has quit [Ping timeout: 264 seconds]
madroach has joined #ocaml
n3ss3s has quit [Ping timeout: 265 seconds]
maurer has quit [Remote host closed the connection]
kdef has quit [Quit: Leaving]
oriba has quit [Quit: WeeChat 1.1.1]
<tanguc_s> i have found the solution
<tanguc_s> i have deleted the array key in the case
jwatzman|work has quit [Quit: jwatzman|work]
maurer has joined #ocaml
bobry has quit [Quit: Connection closed for inactivity]