adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.07.1 release notes: https://caml.inria.fr/pub/distrib/ocaml-4.07/notes/Changes | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml | Due to ongoing spam, you must register your nickname to talk on the channel
q9929t has quit [Remote host closed the connection]
q9929t has joined #ocaml
AtumT has quit [Quit: AtumT]
mfp has quit [Ping timeout: 246 seconds]
medusa_0 has joined #ocaml
medusa_0 has quit [Remote host closed the connection]
Haudegen has quit [Remote host closed the connection]
amiloradovsky has quit [Ping timeout: 245 seconds]
q9929t has quit [Quit: q9929t]
unyu has joined #ocaml
jrcloud0 has joined #ocaml
jrcloud0 has quit [Remote host closed the connection]
AnAverageHuman has joined #ocaml
ygrek has quit [Ping timeout: 245 seconds]
ILEoo13 has joined #ocaml
ILEoo13 has quit [Remote host closed the connection]
assemblyman has joined #ocaml
silver_ has quit [Read error: Connection reset by peer]
ygrek has joined #ocaml
fireduck25 has joined #ocaml
fireduck25 has quit [Remote host closed the connection]
LorD_n1c0w17 has joined #ocaml
LorD_n1c0w17 has quit [Remote host closed the connection]
negaduck13 has joined #ocaml
negaduck13 has quit [Remote host closed the connection]
jimt has quit [Quit: WeeChat 1.9.1]
andrijans has joined #ocaml
andrijans has quit [Remote host closed the connection]
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
kvda has joined #ocaml
zyffer21 has joined #ocaml
zyffer21 has quit [Remote host closed the connection]
<cemerick> Which came first, the explicit `functor` and `->` syntax for module functors, or the more "implicit" syntax for the same?
ygrek has quit [Ping timeout: 245 seconds]
tormen has joined #ocaml
tormen_ has quit [Ping timeout: 250 seconds]
gordonDrogon24 has joined #ocaml
AnAverageHuman has quit [Ping timeout: 256 seconds]
gordonDrogon24 has quit [Remote host closed the connection]
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<_y> if anyone is interested in my troubles with opam and md5 checksums: i found (by accident) the reason why opam checked the archive for compiler 4.06.1+multicore against a wrong md5
kvda has joined #ocaml
gravicappa has joined #ocaml
<_y> this was an outdated md5 which came from ~/.cache/opam-compilers-to-packages/url-hashes ; when creating the repo, opam pulled this file into its internal state, so the solution was to remove the repo completely (opam repo remove --all), remove ~/.opam/state.cache, remove ~/.cache/opam-compilers-to-packages/, and create the repo again
jimt has joined #ocaml
<_y> i guess that opam is not to blame here because compilers in opam repositories are supposed never to change
<_y> so their md5 remain the same
<_y> but this is not true of the multicore compiler, which points to the latest development version
jao has quit [Ping timeout: 245 seconds]
<_y> since i already played with Multicore OCaml some time ago, i had an outdated version in cache (in fact the outdated md5 was exactly that of 4.02.2+multicore, so the version i first played with must have been that one)
<_y> (what a fascinating story)
assemblyman has quit [Quit: ™]
caltelt_ has quit [Ping timeout: 245 seconds]
mal`` has quit [Quit: Leaving]
mal`` has joined #ocaml
mengu has joined #ocaml
mengu has quit [Remote host closed the connection]
gravicappa has quit [Ping timeout: 245 seconds]
nullifidian has quit [Read error: Connection reset by peer]
nullifidian_ has joined #ocaml
mengu has joined #ocaml
mengu has quit [Ping timeout: 255 seconds]
Haudegen has joined #ocaml
freyr69 has joined #ocaml
Birdface has joined #ocaml
_whitelogger has joined #ocaml
mengu has joined #ocaml
nopf has joined #ocaml
mengu has quit [Read error: Connection timed out]
Birdface has quit [Remote host closed the connection]
Birdface has joined #ocaml
mengu has joined #ocaml
mal`` has quit [Quit: Leaving]
Netsu has quit [Ping timeout: 256 seconds]
mal`` has joined #ocaml
mfp has joined #ocaml
gravicappa has joined #ocaml
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Birdface> https://pastebin.com/2shYYNF8 Can anyone explain to me what the purpose of the "with type t = string" is in the module description StringSet?
<Birdface> I have a hard time finding an explanation in the official documentation; it looks redundant to me.
Birdface has quit [Remote host closed the connection]
Birdface has joined #ocaml
mengu has quit [Remote host closed the connection]
<def`> In Set, t is abstract type, not a string.
<def`> You don't want the t to be abstract for StringSet.
<def`> look for opaque ascription, for instance on https://en.wikipedia.org/wiki/Standard_ML
<def`> (the with type t = string would be redundant with transparent ascription)
mengu has joined #ocaml
<Birdface> Thanks, I'm starting to wrap my head around it.
mengu has quit [Ping timeout: 246 seconds]
al-damiri has quit [Quit: Connection closed for inactivity]
freyr69 has quit [Ping timeout: 245 seconds]
freyr69 has joined #ocaml
dmiles has quit [Ping timeout: 246 seconds]
dmiles has joined #ocaml
mengu has joined #ocaml
freyr69 has quit [Ping timeout: 246 seconds]
AtumT has joined #ocaml
freyr69 has joined #ocaml
silver has joined #ocaml
mengu has quit [Read error: Connection reset by peer]
mengu_ has joined #ocaml
Haudegen has quit [Read error: Connection reset by peer]
freyr69 has quit [Ping timeout: 246 seconds]
Haudegen has joined #ocaml
spew has joined #ocaml
nullifidian_ has quit [Ping timeout: 246 seconds]
<reynir> I think my vim setup is broken - when I start vim it takes a few seconds and I see some opam processes -.-
johnelse has quit [Ping timeout: 246 seconds]
nullifidian has joined #ocaml
<_y> what’s your setup reynir?
johnelse has joined #ocaml
johnelse_ has joined #ocaml
johnelse has quit [Ping timeout: 268 seconds]
jao has joined #ocaml
Enjolras has quit [Remote host closed the connection]
Ankhers has quit [Quit: ZNC 1.7.1 - https://znc.in]
Ankhers has joined #ocaml
okuu has joined #ocaml
AnAverageHuman has joined #ocaml
mildtaste has quit [Remote host closed the connection]
AnAverageHuman has quit [Ping timeout: 256 seconds]
AnAverageHuman has joined #ocaml
yomimono has joined #ocaml
mengu_ has quit [Quit: Leaving...]
keep_learning has quit [Ping timeout: 246 seconds]
AnAverageHuman has quit [Ping timeout: 256 seconds]
Haudegen has quit [Remote host closed the connection]
zolk3ri has joined #ocaml
gaze___ has quit [Max SendQ exceeded]
gaze__ has joined #ocaml
tane has joined #ocaml
okuu has quit [Ping timeout: 250 seconds]
Serpent7776 has joined #ocaml
jnavila has joined #ocaml
spew has quit [Quit: going home]
assemblyman has joined #ocaml
Haudegen has joined #ocaml
ticonderoga has joined #ocaml
spew has joined #ocaml
jim7j1ajh has joined #ocaml
jimt has quit [Ping timeout: 268 seconds]
jnavila has quit [Ping timeout: 246 seconds]
<ticonderoga> hi, can OCaml cannot do "type expr_t = | SpecialInt of int | Exponent of expr_t * SpecialInt" ? This gets a syntax error.
jnavila has joined #ocaml
yomimono has quit [Ping timeout: 250 seconds]
gaze__ has quit [Max SendQ exceeded]
gaze__ has joined #ocaml
<octachron> ticonderoga, indeed, SpecialInt is a variant constructor not a type.
jnavila has quit [Ping timeout: 258 seconds]
kakadu_ has joined #ocaml
okuu has joined #ocaml
zolk3ri has quit [Remote host closed the connection]
_whitelogger has joined #ocaml
jnavila has joined #ocaml
yomimono has joined #ocaml
<ticonderoga> Ankhers: Try `string_of_float 3000.0`. string_of_int for int -> string
okuu has quit [Quit: ERC (IRC client for Emacs 26.1)]
okuu has joined #ocaml
jbrown has joined #ocaml
Jesin has quit [Quit: Leaving]
<ticonderoga> octachron: If we were to create a function that returns a^b: SpecialInt -> SpecialInt -> Exponent. Ideally we would have Exponent(SpecialInt, SpecialInt). But it seems like we would have to convert SpecialInt to int, and have Exponent(int, int) instead? What if it's not SpecialInt, but something more complex? Is there a way to express this in OCaml?
<ticonderoga> Exponent expr_t * expr_t would be one way, but what if Exponent will only have SpecialInt * SpecialInt?
Jesin has joined #ocaml
<octachron> then you can define a separate type "type special_int = ..."
jnavila has quit [Ping timeout: 246 seconds]
<ticonderoga> octachron: Yes, that makes sense. Thank you, octachron.
gravicappa has quit [Ping timeout: 250 seconds]
themsay has joined #ocaml
<Ankhers> ticonderoga: That will not give me the comma separation for the string.
sonologico has joined #ocaml
<ticonderoga> Ankhers: True, I misread. As far as I know, there is no locale-based number formatting in the standard library. You could try using Printf with a custom printer and %a modifier.
yomimono has quit [Ping timeout: 250 seconds]
nishantagrawal has joined #ocaml
yomimono has joined #ocaml
nishantagrawal has quit [Client Quit]
okuu has quit [Ping timeout: 250 seconds]
okuu has joined #ocaml
Birdface has quit [Ping timeout: 244 seconds]
okuu has quit [Ping timeout: 246 seconds]
Jesin has quit [Quit: Leaving]
okuu has joined #ocaml
assemblyman has quit [Quit: ™]
<Ankhers> ticonderoga: Thanks.
Jesin has joined #ocaml
Serpent7776 has quit [Quit: leaving]
jnavila has joined #ocaml
jnavila has quit [Remote host closed the connection]
bartholin has joined #ocaml
tarptaeya has joined #ocaml
stylewarning has joined #ocaml
<stylewarning> Are there any good references on the implementation of pattern matching, specifically things like exhaustiveness checking & the like?
<companion_cube> there are some papers, yes
<stylewarning> Thanks! I'll take a look. I'd like to implement pattern matching without just shotgunning it.
keep_learning has joined #ocaml
tane has quit [Quit: Leaving]
kakadu_ has quit [Remote host closed the connection]
ticonderoga has quit [Ping timeout: 256 seconds]
sonologico has quit [Ping timeout: 246 seconds]