companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 4.14.0 released: https://ocaml.org/releases/4.14.0.html | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
spip has quit [Ping timeout: 252 seconds]
bobo has joined #ocaml
tsns has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
tsns has quit [Remote host closed the connection]
John_Ivan_ has joined #ocaml
John_Ivan__ has quit [Ping timeout: 252 seconds]
rgrinberg has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
genpaku has quit [Read error: Connection reset by peer]
genpaku has joined #ocaml
rgrinberg has joined #ocaml
chrisz has quit [Ping timeout: 260 seconds]
chrisz has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
genpaku has quit [Ping timeout: 248 seconds]
genpaku has joined #ocaml
rgrinberg has joined #ocaml
waleee has quit [Ping timeout: 248 seconds]
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
jao has quit [Ping timeout: 260 seconds]
bartholin has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
azimut has quit [Ping timeout: 255 seconds]
np has quit [Remote host closed the connection]
nerdypepper has joined #ocaml
bartholin has quit [Quit: Leaving]
Anarchos has joined #ocaml
wingsorc has quit [Ping timeout: 252 seconds]
Tuplanolla has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Anarchos has joined #ocaml
alexherbo2 has joined #ocaml
olle has joined #ocaml
Anarchos has quit [Quit: Vision[]: i've been blurred!]
alexherbo2 has quit [Remote host closed the connection]
alexherbo2 has joined #ocaml
proportions has joined #ocaml
kakadu_ has joined #ocaml
bobo has quit [Ping timeout: 260 seconds]
spip has joined #ocaml
Haudegen has joined #ocaml
azimut has joined #ocaml
cedric has joined #ocaml
cedric has quit [Client Quit]
olle has quit [Ping timeout: 248 seconds]
proportions has quit [Remote host closed the connection]
troydm has joined #ocaml
Soni has quit [Quit: No Ping reply in 180 seconds.]
Soni has joined #ocaml
Soni has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
Soni has joined #ocaml
proportions has joined #ocaml
count3rmeasure has joined #ocaml
Soni has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
Soni has joined #ocaml
olle has joined #ocaml
Serpent7776 has joined #ocaml
proportions has quit [Remote host closed the connection]
wingsorc has joined #ocaml
olle has quit [Ping timeout: 248 seconds]
kakadu_ has quit [Remote host closed the connection]
gdd has quit [Ping timeout: 265 seconds]
gdd has joined #ocaml
waleee has joined #ocaml
olle has joined #ocaml
jao has joined #ocaml
rgrinberg has joined #ocaml
motherfsck has quit [Ping timeout: 252 seconds]
count3rmeasure has quit [Read error: Connection reset by peer]
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
trev has joined #ocaml
rgrinberg has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
<discocaml> <MasterBuilder> I'm curious why OCaml decided against supporting "clausal function definitions" like in Haskell or Standard ML for example, `function` works but it is definitely more ugly, is there a specific reason why it's like this?
<discocaml> <MasterBuilder> I'm curious why OCaml decided against supporting "clausal function definitions" like in Haskell or Standard ML for example, `function` works but it is definitely more ugly (at least, in my opinion), is there a specific reason why it's like this?
<discocaml> <Gooby> I prefer not using clausal definitions, but I wondered about that as well at some point
<discocaml> <Gooby> I assume it was just something that required effort to implement but didn't provide much
trev has quit [Remote host closed the connection]
<discocaml> <froyo> I'm more interested in the juxtaposition between ocaml and sml where sml provides a curried pattern matching feature but the default is tupled functions, while ocaml only has tupled pattern matching abstractions when the language's default is currying.
<discocaml> <froyo> i mean in sml that abstraction is clauses yea
<discocaml> <froyo> but i'd expect `function` to allow currying
<discocaml> <froyo> instead i get this: `Some Some x` works
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<discocaml> <RegularSpatula> How big of a problem in practice is the memory management when using ctypes? Eg, some of the subtleties of keeping values alive long enough as mentioned in this github issue: https://github.com/yallop/ocaml-ctypes/issues/571 .
<discocaml> <RegularSpatula> It seems like this problem would make working with ctypes code pretty challenging, but I'm not sure
troydm has quit [Ping timeout: 248 seconds]
<discocaml> <Gooby> wym curried pattern matching
<discocaml> <NULL> `let and = function2 true _ | _ true -> true | false false -> false`
<discocaml> <Gooby> 😳😳
<discocaml> <NULL> That's not how it looks in either SML or Haskell
<discocaml> <Gooby> beau
<discocaml> <Gooby> was that SML meant to be ocaml
<discocaml> <NULL> It doesn't exist at all in OCaml
<discocaml> <Gooby> because the message I replied to was talking about sml for curried pattern matcjing
<discocaml> <Gooby> I think?
<discocaml> <NULL> I don't know the language, but apparently it looks like `fun and true _ = true | and _ true = true | and false false = false`
<discocaml> <Gooby> ooo
<discocaml> <Gooby> icic
rgrinberg has joined #ocaml
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
olle has quit [Ping timeout: 246 seconds]
troydm has joined #ocaml
Anarchos has joined #ocaml
alexherbo2 has quit [Remote host closed the connection]
azimut has quit [Quit: ZNC - https://znc.in]
azimut has joined #ocaml
<discocaml> <geoff> It's not too bad, but you do have to be careful of the issue that they mention. I've run into it in the past but if you follow a pattern that avoids it I don't think it's that painful
<discocaml> <geoff> I keep the original typed ptr around, ignoring the typed ptr returned by the C function that takes the void buffer
<discocaml> <geoff> It is definitely a gotcha though
<discocaml> <RegularSpatula> Thanks, I will see that to my list of examples for avoiding the issue
<discocaml> <RegularSpatula> Yeah, was playing around with tsdl, and thought, let me out a finalized on some of these things to free them. But then saw that issue and was thinking maybe just to manually manage the memory instead
<discocaml> <RegularSpatula> *add a finalizer I mean
rgrinberg has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Serpent7776 has quit [Ping timeout: 260 seconds]
malc has joined #ocaml
cedric has joined #ocaml
Haudegen has quit [Quit: No Ping reply in 180 seconds.]
Haudegen has joined #ocaml
oriba has joined #ocaml
cedric has quit [Quit: Konversation terminated!]
rgrinberg has joined #ocaml
<discocaml> <geoff> when the finalizer is called, ocaml is about to free the memory, so destruction is what I attach with it instead
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Anarchos has joined #ocaml
Anarchos has quit [Client Quit]
spip has quit [Ping timeout: 260 seconds]
bobo has joined #ocaml
manicennui has left #ocaml [#ocaml]
<discocaml> <ilo Kali> kind of a weird question, but does someone have a list of all functions that have side effects in the ocaml stdlib, or (even better) a way to generate one for arbitrary modules?