adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | Current MOOC: https://huit.re/ocamlmooc | OCaml 4.04.0 release notes: http://ocaml.org/releases/4.04.html | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
sillyotter has joined #ocaml
sillyotter has quit [Client Quit]
<def`> for Lwt.return () :
<def`> let return x = if Obj.repr x == Obj.repr () then return_unit else return x;;
tmtwd has joined #ocaml
FreeBirdLjj has joined #ocaml
govg has quit [Ping timeout: 250 seconds]
<aantron> btw companion_cube: flexdll 0.35 is in cygwin now, if it still matters to you :)
<rgrinberg> Drup: how come something like this doesn't work in tyre: exec (compile (separated_list ~sep:(char ',') float)) "4.2";;
<rgrinberg> Gives me an empty list
nomicflux has quit [Quit: nomicflux]
tmtwd has quit [Ping timeout: 248 seconds]
<rgrinberg> def`: and I also recall you had some idea to improve backtraces in lwt
<rgrinberg> def`: I don't quite get your snippet however
<rgrinberg> Obj.repr () == Obj.repr false is true for example
rgrinberg has quit [Ping timeout: 244 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
wu_ng has quit [Ping timeout: 252 seconds]
petroav has quit [Remote host closed the connection]
mfp has quit [Ping timeout: 245 seconds]
fraggle_ has quit [Ping timeout: 250 seconds]
vramana has left #ocaml [#ocaml]
vramana has joined #ocaml
vramana has quit [Quit: vramana]
vramana has joined #ocaml
michbad has joined #ocaml
FreeBirdLjj has joined #ocaml
cpdean has joined #ocaml
fraggle_ has joined #ocaml
wu_ng has joined #ocaml
wu_ng has quit [Read error: Connection reset by peer]
wu_ng has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
TarVanimelde has quit [Quit: TarVanimelde]
FreeBirdLjj has joined #ocaml
TarVanimelde has joined #ocaml
TarVanimelde has quit [Client Quit]
TarVanimelde has joined #ocaml
nomicflux has joined #ocaml
jao has quit [Ping timeout: 250 seconds]
average is now known as justachesuckmyd
justachesuckmyd is now known as SmyD
SmyD is now known as average
ocamlsrazor has joined #ocaml
planet_en has joined #ocaml
<ocamlsrazor> hi, does anyone know if it's possible to implement a type for propositional equality like in Haskell? https://hackage.haskell.org/package/base-4.9.0.0/docs/Data-Type-Equality.html
<ocamlsrazor> or a way to write such a type in the intuitionistic type-theoretic sense
<ocamlsrazor> (for context, I'm attempting to implement this as well as type-level naturals to simulate type-level peano arithmetic in OCaml)
planet_en has quit [Quit: planet_en]
fraggle_ has quit [Ping timeout: 260 seconds]
noddy has quit [Ping timeout: 244 seconds]
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
fraggle_ has joined #ocaml
noddy has joined #ocaml
michbad has quit [Ping timeout: 250 seconds]
infinity0 has quit [Ping timeout: 245 seconds]
infinity0 has joined #ocaml
michbad has joined #ocaml
infinity0 has quit [Remote host closed the connection]
TarVanimelde has quit [Read error: Connection reset by peer]
infinity0 has joined #ocaml
TarVanimelde has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
axiles has quit [Ping timeout: 256 seconds]
axiles has joined #ocaml
ocamlsrazor has quit [Quit: Page closed]
FreeBirdLjj has quit [Remote host closed the connection]
cpdean has quit [Quit: Leaving.]
govg has joined #ocaml
FreeBirdLjj has joined #ocaml
jonasen has joined #ocaml
larhat has quit [Quit: Leaving.]
pierpa has quit [Ping timeout: 244 seconds]
groovy3shoes has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
TarVanimelde has quit [Quit: TarVanimelde]
TarVanimelde has joined #ocaml
wu_ng has quit [Read error: Connection reset by peer]
wu_ng has joined #ocaml
dxtr has joined #ocaml
Aruseus has joined #ocaml
isd has quit [Remote host closed the connection]
isd has joined #ocaml
copy` has quit [Quit: Connection closed for inactivity]
cheater has quit [Ping timeout: 252 seconds]
FreeBirdLjj has joined #ocaml
planet_en has joined #ocaml
cheater has joined #ocaml
nomicflux has quit [Quit: nomicflux]
planet_en has quit [Quit: planet_en]
FreeBirdLjj has quit [Remote host closed the connection]
jonasen has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 268 seconds]
AlexDenisov has joined #ocaml
noddy has quit [Ping timeout: 258 seconds]
noddy has joined #ocaml
jonasen has joined #ocaml
govg has quit [Ping timeout: 245 seconds]
TarV has joined #ocaml
TarVanimelde has quit [Ping timeout: 258 seconds]
govg has joined #ocaml
Mercuria1Alchemi has joined #ocaml
AlexDeni_ has joined #ocaml
AlexDenisov has quit [Read error: Connection reset by peer]
jnavila has joined #ocaml
groovy3shoes has quit [Quit: Leaving]
cheater has quit [Ping timeout: 256 seconds]
Aruseus has quit [Quit: Leaving]
govg has quit [Ping timeout: 246 seconds]
cheater has joined #ocaml
TarV has quit [Quit: Leaving]
michbad has quit [Remote host closed the connection]
AlexDeni_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
alfredo has joined #ocaml
JarthB has joined #ocaml
Jarth has quit [Read error: Connection reset by peer]
FreeBirdLjj has joined #ocaml
k1000 has quit [Ping timeout: 245 seconds]
FreeBirdLjj has quit [Ping timeout: 248 seconds]
infinity0 has quit [Ping timeout: 240 seconds]
JarthB has quit [Read error: Connection reset by peer]
infinity0 has joined #ocaml
<def`> type (_, _) eq = Refl : ('a, 'a) eq
dhil has joined #ocaml
cheater has quit [Ping timeout: 260 seconds]
malc_ has joined #ocaml
cheater has joined #ocaml
TarVanimelde has joined #ocaml
recv has joined #ocaml
ygrek has joined #ocaml
larhat has joined #ocaml
AltGr has joined #ocaml
dhil has quit [Ping timeout: 268 seconds]
AlexDenisov has joined #ocaml
fre has joined #ocaml
fre has quit [Client Quit]
axiles has quit [Ping timeout: 256 seconds]
<companion_cube> aantron: it doesn't, but thanks ^^
Algebr has joined #ocaml
cataska has joined #ocaml
freusque has joined #ocaml
zpe has joined #ocaml
maattdd has joined #ocaml
axiles has joined #ocaml
k1000 has joined #ocaml
yegods has quit [Remote host closed the connection]
k1000 has quit [Read error: Connection reset by peer]
k1000 has joined #ocaml
copy` has joined #ocaml
rand__ has joined #ocaml
<def`> ls
<Algebr> ocaml merlin emacs
freusque has quit [Ping timeout: 246 seconds]
mpenet has joined #ocaml
mpenet has left #ocaml [#ocaml]
<def`> :)
jonasen has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
freusque has joined #ocaml
Simn has joined #ocaml
d0nn1e has quit [Ping timeout: 250 seconds]
d0nn1e has joined #ocaml
mfp has joined #ocaml
johnelse has joined #ocaml
cataska has quit [Quit: Textual IRC Client: www.textualapp.com]
<Leonidas> xyproto: could you maybe update https://github.com/ocaml/opam/wiki/Distributions w/ your new OPAM package?
yegods has joined #ocaml
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 250 seconds]
jao has joined #ocaml
ocaml615 has joined #ocaml
<ocaml615> let rec insertletters l length word = match word with | word -> insert l length; insertletters l (length + 1) (String.sub word (length + 1) (String.length word - 1)); in insertletters [] 0;
<ocaml615> Question about the code.
<ocaml615> I am not getting how to return the list returned by "insert l length" at the end of the recursion.
<Leonidas> ocaml615: why are you matching word with word?
<Leonidas> that does… nothing?
<ocaml615> Ok. I've tried using "function" by removing the match clause.
sepp2k has joined #ocaml
<ocaml615> The list returned by insert l length; should be the return type. I don't know how to return it finally at the end of the recursion.
<ocaml615> let rec insertletters l length = function | word -> insert l length; insertletters l (length + 1) (String.sub word (length + 1) (String.length word - 1)); in insertletters [] 0;
<ocaml615> This function is inside another one with parameter "word"
<lyxia> ocaml615: Is l a list, or is it a reference to a list? What is the type of insert?
<Leonidas> ocaml615: let foo = insert l length in insertletters …; foo to return the value
<Leonidas> ocaml615: but overall it kinda looks… wrong what you're doing. you shouldn't need ; at all
wu_ng has quit [Remote host closed the connection]
<Leonidas> ocaml615: what is the function supposed to do?
AlexRussia has quit [Ping timeout: 246 seconds]
<ocaml615> "mnn" [('m',1),('n',2)]
<ocaml615> Let me the new let syntax .
<Leonidas> Algebr: heh :)
<ocaml615> I am new to OCaml. Java background :-)
<Leonidas> ocaml615: btw, the point still stands, if you `match word with | word ->` that's just like saying `word`.
jwatzman|work has joined #ocaml
<Leonidas> like `if word then word else word`
<Leonidas> 1) figure out what you're recursing over
<Leonidas> 2) figure out when the recursion stops
<Leonidas> 3) figure out what the return value is in that case
<Leonidas> 4) write the code
<ocaml615> How do I iterate over a string and process each char without using imperative code ?
<ocaml615> Should I use String.get ?
<lyxia> Is not using imperative code really your objective
<vramana> ocaml615: First split the string into a list and use List.map
ygrek has quit [Ping timeout: 250 seconds]
<lyxia> String.iter "iter"ates over a string.
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Algebr> hmm, melpa release of tuareg mode broke tuareg mode, get (error "Too many arguments")
<Algebr> the joys of elisp.
<ocaml615> String.iter ( fun x -> insert l x;() ) word I couldn't return the final list from insert back from this function.
<ocaml615> let syntax ?
AlexDenisov has joined #ocaml
<lyxia> insert does not do any mutation
<lyxia> I guess, since you didn't tell us how it's defined
<lyxia> if you use iter, you need a reference to mutate
<ocaml615> let f = insert in String.iter ( fun x -> f l x;() ) word
<ocaml615> insert mutates
<ocaml615> f refers to a function. Not the mutated list :-)
<lyxia> what is the type of insert
<ocaml615> list -> char -> list
<lyxia> Now I doubt that mutates anything.
<lyxia> ocaml615: Can you show the definition of insert
<ocaml615> It does. It creates tuples in the list. [('a',1); ('b',3)]
<Drup> ocaml615: No. It returns a *new* list with additional elements
<ocaml615> Yes. Understand. No mutation. Java background :-)
<Algebr> ocaml615: maybe something like this? http://pastebin.com/mP9MmfEn
jonasen has joined #ocaml
<ocaml615> f str.[spot]; This is the insert function that returns the list. I think.
<Algebr> that example was just to do something with each char
_andre has joined #ocaml
noddy has quit [Ping timeout: 252 seconds]
TarVanimelde has quit [Quit: TarVanimelde]
TarVanimelde has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
<ocaml615> I will fix it later anyway.
noddy has joined #ocaml
dhil has joined #ocaml
<Leonidas> ocaml615: that is a side-effect, it just causes printing of the character
freehck has joined #ocaml
AlexRussia has joined #ocaml
AlexRussia has quit [Ping timeout: 260 seconds]
AlexRussia has joined #ocaml
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
FreeBirdLjj has joined #ocaml
TarVanimelde has quit [Quit: TarVanimelde]
yegods has quit [Read error: Connection reset by peer]
shinnya has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 248 seconds]
TarVanimelde has joined #ocaml
cheater has quit [Ping timeout: 246 seconds]
sillyotter has joined #ocaml
cheater has joined #ocaml
sillyotter has quit [Quit: WeeChat 1.4]
TarVanimelde has quit [Ping timeout: 250 seconds]
silver has joined #ocaml
vramana has quit [Ping timeout: 265 seconds]
TarVanimelde has joined #ocaml
vramana has joined #ocaml
AlexDenisov has joined #ocaml
dhil has quit [Ping timeout: 244 seconds]
jwatzman|work has joined #ocaml
pierpa has joined #ocaml
ocaml615 has quit [Ping timeout: 260 seconds]
dhil has joined #ocaml
yegods has joined #ocaml
zirman has joined #ocaml
zirman has joined #ocaml
zirman has quit [Changing host]
ocaml207 has joined #ocaml
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 248 seconds]
al-damiri has joined #ocaml
AlexDenisov has quit [Quit: Textual IRC Client: www.textualapp.com]
AlexDenisov has joined #ocaml
ocaml223 has joined #ocaml
<ocaml223> Is there any set of instructions to install OCaml/emacs on Windows ? Do I just search ?
<ocaml223> I came across emacs and tuareg mode.
recv has quit [Quit: Page closed]
ocaml223 has quit [Ping timeout: 260 seconds]
cheater has quit [Ping timeout: 256 seconds]
zirman has quit [Remote host closed the connection]
jao has quit [Ping timeout: 252 seconds]
zirman has joined #ocaml
guy238 has joined #ocaml
cheater has joined #ocaml
sh0t has joined #ocaml
NingaLeaf has quit [Read error: Connection reset by peer]
jlongster has joined #ocaml
shinnya has quit [Ping timeout: 256 seconds]
jnavila has quit [Ping timeout: 256 seconds]
marsam has joined #ocaml
marsam has quit [Remote host closed the connection]
ocaml207 has quit [Ping timeout: 260 seconds]
noddy has quit [Ping timeout: 248 seconds]
TarVanimelde has quit [Ping timeout: 258 seconds]
cataska has joined #ocaml
rgrinberg has joined #ocaml
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
TarVanimelde has joined #ocaml
AlexDenisov has joined #ocaml
troydm has quit [Ping timeout: 260 seconds]
rgrinberg has quit [Remote host closed the connection]
rgrinberg has joined #ocaml
Mercuria1Alchemi has quit [Ping timeout: 265 seconds]
sfri has quit [Remote host closed the connection]
troydm has joined #ocaml
sfri has joined #ocaml
cataska has quit [Quit: Textual IRC Client: www.textualapp.com]
johnelse_ has joined #ocaml
zpe_ has joined #ocaml
zpe has quit [Read error: Connection reset by peer]
marsam has joined #ocaml
johnelse has quit [Ping timeout: 244 seconds]
johnelse_ is now known as johnelse
FreeBirdLjj has joined #ocaml
elazul has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 248 seconds]
zpe_ has quit [Remote host closed the connection]
AlexRussia has quit [*.net *.split]
freusque has quit [*.net *.split]
rand__ has quit [*.net *.split]
groovy2shoes has quit [*.net *.split]
SIGILL has quit [*.net *.split]
jmiven has quit [*.net *.split]
regnt[m] has quit [*.net *.split]
M-jimt has quit [*.net *.split]
srenatus[m] has quit [*.net *.split]
elazul has quit [*.net *.split]
cyraxjoe has quit [*.net *.split]
ohama has quit [*.net *.split]
andyc1 has quit [*.net *.split]
mcspud has quit [*.net *.split]
vbmithr has quit [*.net *.split]
igitoor has quit [*.net *.split]
andreypopp has quit [*.net *.split]
jeroud has quit [*.net *.split]
breitenj has quit [*.net *.split]
ggherdov has quit [*.net *.split]
asmanur_ has quit [*.net *.split]
ra4king has quit [*.net *.split]
_2can has quit [*.net *.split]
vodkaInf1rno has quit [*.net *.split]
Drup has quit [*.net *.split]
vbmithr has joined #ocaml
breitenj has joined #ocaml
rand__ has joined #ocaml
elazul has joined #ocaml
andyc has joined #ocaml
Drup has joined #ocaml
SIGILL has joined #ocaml
srenatus[m] has joined #ocaml
ohama has joined #ocaml
jmiven has joined #ocaml
groovy2shoes has joined #ocaml
asmanur has joined #ocaml
freusque has joined #ocaml
igitoor has joined #ocaml
ra4king has joined #ocaml
M-jimt has joined #ocaml
AlexRussia has joined #ocaml
regnt[m] has joined #ocaml
cyraxjoe has joined #ocaml
madroach has quit [Ping timeout: 264 seconds]
TarVanim_ has joined #ocaml
freusque has quit [Client Quit]
madroach has joined #ocaml
TarVanimelde has quit [Ping timeout: 248 seconds]
alfredo has quit [Quit: Textual IRC Client: www.textualapp.com]
guy238 has quit [Ping timeout: 260 seconds]
ggherdov has joined #ocaml
vodkaInferno has joined #ocaml
_2can has joined #ocaml
mcspud has joined #ocaml
jeroud has joined #ocaml
andreypopp has joined #ocaml
igitoor has quit [Changing host]
igitoor has joined #ocaml
sh0t has quit [Quit: Leaving]
sh0t has joined #ocaml
TarVanim_ has quit [Quit: TarVanim_]
TarVanimelde has joined #ocaml
nomicflux has joined #ocaml
nore has quit [Ping timeout: 240 seconds]
nore has joined #ocaml
FreeBirdLjj has joined #ocaml
SIGILL has quit [Quit: WeeChat 1.4]
larhat has quit [Quit: Leaving.]
SIGILL has joined #ocaml
larhat has joined #ocaml
larhat has quit [Client Quit]
<cheater> hi
<cheater> is there a standard way to find docs for a package that's on opam? it seems everyone hosts their docs on their own, right?
rgrinberg has quit [Ping timeout: 268 seconds]
freusque has joined #ocaml
<companion_cube> yes indeed
<flux> I just look at the .mli files.. I guess this is not the hip way ;)
johnf_ has joined #ocaml
malc_ has quit [Remote host closed the connection]
<companion_cube> also, for packages that install .cmt(i?) you have ocp-browser
<companion_cube> but it's sad that we don't have a centralized hosting of all docs
<cheater> thank you companion_cube
<cheater> :)
freusque has quit [Ping timeout: 248 seconds]
Sorella has quit [Quit: Connection closed for inactivity]
rgrinberg has joined #ocaml
<def`> rgrinberg: yes Obj.repr false == Obj.repr ()
<def`> so it is ok if Lwt.return_unit == Lwt.return_false
<def`> And you remember well, I did work for adding backtraces to lwt, but it requires a specific version of Lwt, I wonder if people would be interested.
<flux> ..are you kidding, "if people would be interested" :-), though personally I make very little use of Lwt.
<flux> I'm guessing though Ocsigen folks would be VERY happy with such a thing.
Algebr has quit [Ping timeout: 250 seconds]
<aantron> ocsigen folks aside, i would be happy with such a thing
<aantron> if you have a good improvement to backtraces in mind, i definitely want it in lwt, and will aid getting it in
<companion_cube> is there, per chance, a *very* fast hashconsing library somewhere?
<companion_cube> (possibly with C inside)
<aantron> def` ^
<Drup> companion_cube: david monnaixu's one ?
<Drup> monniaux*
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<companion_cube> I only find something about Coq…
<companion_cube> yeah, but it doesn't seem to be faster than Weak.Make
<companion_cube> it's probably impossible to be faster without hacking the GC, after all
<def`> aantron: ok, I will write you with all details this week :)
<companion_cube> I should stop wasting time on tis
<companion_cube> this
noddy has joined #ocaml
tane has joined #ocaml
jao has joined #ocaml
infinity0 has quit [Ping timeout: 260 seconds]
infinity0 has joined #ocaml
<aantron> def`: sounds good :)
infinity0 has quit [Remote host closed the connection]
cheater has quit [Ping timeout: 250 seconds]
infinity0 has joined #ocaml
chris2 has quit [Ping timeout: 240 seconds]
<aantron> Drup: how about wrap_exn for that Lwt_stream PR? let the bikeshedding begin :)
srcerer_ is now known as srcerer
<Drup> aantron: ahah, I'll let you do that, I have no real opinion :D
<aantron> honestly id like opinions because i really dont want to choose a name myself :p
cheater has joined #ocaml
<aantron> i guess ill go with wrap_exn by default though. or give it a bit more thought..
<aantron> if anyone has deep convictions about Lwt_stream.map_exn, https://github.com/ocsigen/lwt/pull/295
noddy has quit [Ping timeout: 256 seconds]
infinity0 has quit [Remote host closed the connection]
<Drup> aantron: wrap already means "wrapping exceptions into Lwt.t", so it's a bit redundant
jao has quit [Ping timeout: 250 seconds]
infinity0 has joined #ocaml
<aantron> well Lwt.wrap does a bit more than that, it wraps both values and exceptions..
chris2 has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
Algebr has joined #ocaml
jao has joined #ocaml
cheater has quit [Ping timeout: 240 seconds]
slash^ has joined #ocaml
<hannes> hmm, ocamlbuild questio: is having in _tags a <foo>: -traverse supposed to have the same effect as using an argument on ocamlbuild invocation -tag-line "<foo>: -traverse"? I thought it would be the same, but it doesn't look like it does :/
<hannes> s/does/is/
maattdd has quit [Ping timeout: 268 seconds]
octachron has joined #ocaml
<adrien> I thought it did
<aantron> hrm. is it possible to expand environment variables in commands executed by opam?
jao has quit [Remote host closed the connection]
jao has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
cheater has joined #ocaml
govg has joined #ocaml
cheater has quit [Ping timeout: 260 seconds]
_andre has quit [Quit: leaving]
zpe has joined #ocaml
kakadu has joined #ocaml
freusque has joined #ocaml
AlexDenisov has joined #ocaml
cheater has joined #ocaml
ygrek has joined #ocaml
planet_en has joined #ocaml
planet_en has quit [Client Quit]
freusque has quit [Ping timeout: 260 seconds]
cheater has quit [Ping timeout: 265 seconds]
cheater has joined #ocaml
AlexDeni_ has joined #ocaml
AlexDenisov has quit [Read error: Connection reset by peer]
jnavila has joined #ocaml
planet_en has joined #ocaml
cheater has quit [Ping timeout: 245 seconds]
planet_en has quit [Ping timeout: 245 seconds]
isd has quit [Ping timeout: 265 seconds]
cheater has joined #ocaml
isd has joined #ocaml
rgrinberg has quit [Remote host closed the connection]
orbifx has joined #ocaml
yomimono has joined #ocaml
jnavila_ has joined #ocaml
dhil has quit [Ping timeout: 248 seconds]
jnavila has quit [Ping timeout: 256 seconds]
larhat has joined #ocaml
cheater has quit [Ping timeout: 248 seconds]
cheater has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
nomicflux has quit [Quit: nomicflux]
sepp2k has quit [Quit: Leaving.]
johnf_ has quit [Remote host closed the connection]
namosca has joined #ocaml
<namosca> hi all
freusque has joined #ocaml
nomicflux has joined #ocaml
<zozozo> hi
zirman has quit [Remote host closed the connection]
Sim_n has joined #ocaml
zirman has joined #ocaml
Simn has quit [Ping timeout: 250 seconds]
zirman has quit [Remote host closed the connection]
zirman has joined #ocaml
octachron has quit [Quit: Leaving]
rand__ has quit [Quit: leaving]
<namosca> hey zozozo, I am quite new to Ocaml and I have looked on how to use GLFW with OpenGL, but I just found old stuff
zirman has quit [Remote host closed the connection]
<zozozo> :o
<namosca> zozozo, are you aware of something well supported for working with opengl in ocaml?
<zozozo> I don't much about that
<companion_cube> tgls, I think
<zozozo> namosca: if you go on https://opam.ocaml.org/packages/ and search for opengl, you can find 3 packages
<zozozo> tgls is one of them
<zozozo> and the only one recently updated
yegods has quit [Remote host closed the connection]
<def`> tgls & tsdl (sdl2) instead of glfw
jnavila_ has quit [Quit: Konversation terminated!]
jonasen has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<namosca> def`, I am used to using glfw... it means I have to give up this idea, right?
yegods has joined #ocaml
AltGr has left #ocaml [#ocaml]
<orbifx> I'm trying to make a library
<orbifx> these are the files i'm installing according to my .install:
<orbifx> lib: [ "META" "_build/src/tokenauth.cma" "_build/src/tokenauth.cmxa" "_build/src/tokenauth.cmxs" ]
<orbifx> yet it complains it can't find this module when I try to build it
<orbifx> any ideas?
<orbifx> (when I try to build something using it)
<def`> namosca: I think it's ok if you want to stay with glfw
<def`> but I can only confirm that tsdl2 works well :)
<namosca> def`, do you use it frequently?
<def`> h
zirman has joined #ocaml
zirman has joined #ocaml
zirman has quit [Changing host]
orbifx1 has joined #ocaml
<namosca> def`, h means yes or no? :D
<def`> hmm, I played with it
<def`> however I never did anything serious :)
zirman has quit [Remote host closed the connection]
zirman has joined #ocaml
zirman has joined #ocaml
zirman has quit [Changing host]
<namosca> def`, I am playing too... :D BUt have you at least got some image on the screen?
marsam has quit [Read error: Connection reset by peer]
tane has quit [Quit: Leaving]
AlexDeni_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<orbifx> namosca: http://erratique.ch libraries worked for opengl when I tried the example
<namosca> orbifx, I installed via OPAM the tsdl and tgls... i am learning Ocaml since one day only so it will take some days until I can really test it... i am still on page 50 of "Ocaml from the very beginning" :D
<orbifx> k, yeah you have some way to go
zirmann has joined #ocaml
zirmann has quit [Remote host closed the connection]
zirman has quit [Ping timeout: 265 seconds]
zirman has joined #ocaml
zirman has joined #ocaml
zirman has quit [Changing host]
zirmann has joined #ocaml
yegods has quit [Remote host closed the connection]
nomicflux has quit [Quit: nomicflux]
zirman has quit [Ping timeout: 248 seconds]
namosca has quit [Quit: Leaving]
<orbifx> problem resolved
Sorella has joined #ocaml
yegods has joined #ocaml
yegods has quit [Read error: Connection reset by peer]
rgrinberg has joined #ocaml
yegods has joined #ocaml
<rgrinberg> Is there a way to set a cap on the heap size in OCaml?
<companion_cube> you can play with the Gc params, but I don;'t think you can have a hard limit
<companion_cube> (what would happen? an exception?)
<rgrinberg> companion_cube: Sure. Or a Gc pause :P
zirman has joined #ocaml
zirman has joined #ocaml
zirman has quit [Changing host]
Muzer has quit [Read error: Connection reset by peer]
erblite has joined #ocaml
kakadu has quit [Remote host closed the connection]
zirmann has quit [Ping timeout: 260 seconds]
zirman has quit [Ping timeout: 260 seconds]
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
rgrinberg has quit [Remote host closed the connection]
Sim_n has quit [Quit: Leaving]
yomimono has quit [Ping timeout: 252 seconds]
Muzer has joined #ocaml
<Algebr> couldn't you do that at the OS level
yegods has quit [Remote host closed the connection]
<companion_cube> probably with systemd
FreeBirdLjj has quit [Remote host closed the connection]
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
erblite has quit [Quit: WeeChat 1.5]
zpe has quit [Ping timeout: 268 seconds]
yegods has joined #ocaml
nomicflux has joined #ocaml
<Armael> companion_cube: I can't tell if you're trolling
<Armael> :p
sh0t has quit [Quit: Leaving]
<cheater> i'm reading this... https://caml.inria.fr/pub/docs/u3-ocaml/ocaml-modules.html is "module type" the same thing as haskell's type constructors with polymorphic parameters?
<cheater> like say "data Foo a = Bar a"
freusque has quit [Ping timeout: 250 seconds]
<Drup> No, that's just a type constructor
<Drup> a module type is the type of a module
<cheater> no i meant the syntax that goes "module type ..."
<cheater> like module type PLUS = ... near the end of 4.1.1
<cheater> is that the same as polymorphism in haskell?
<cheater> same/similar
<Drup> the equivalent of the bit of haskell you posted is "type 'a foo = Bar of 'a"
<Drup> I'm not sure what's your syntax question, module types are not directly related to polymorphic types
<cheater> ok look in 4.1.1 where they define module type CURRENCY
<cheater> and compare it to module Float
zirman has joined #ocaml
<cheater> that looks to me like polymorphism in the same way as you'd compare something like... data MyFloat = MyFloat Float vs data Currency a = Currency a
<cheater> in haskell
<Drup> Not really no
isd1 has joined #ocaml
<cheater> why not? what's the difference?
<Drup> first off, in your analogy, Float would be a value, and CURRENCY is the type
<Drup> not two types
isd has quit [Disconnected by services]
<cheater> sorry wait
isd1 is now known as isd
<cheater> you mean in the OCaml example, where it says module Float = ..., Float is a value?
<Drup> Yeha, it is, but that's not the important bit
<cheater> go on
<Drup> the same as 3 as type int, module Float as a type (which is compatible with CURRENCY)
<Drup> has*
zirman has quit [Ping timeout: 268 seconds]
<Drup> your comparison with polymorphic types is incorrect: MyFloat is not a compatible type with Currency, and modules are not just types, they are a thing that contains several declarations (types, values, other modules)
<cheater> sure, modules contain values and other modules, i was just focusing on the types
<cheater> but i see what you mean now about value vs type
<Drup> The fact that Float is compatible with CURRENCY is just structural typing. You can always make a type abstract in the signature, since it exposes strictly less information.
<cheater> sorry, i don't understand those two statements. what is structural typing in the way you use it here and how does the compatibility follow from that? what does it mean to make a type abstract in the signature? what does it mean it exposes less information?
<cheater> i'm a bit of a newbie with ocaml