Leonidas changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 5.1.1 released: https://ocaml.org/releases/5.1.1 | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
_whitelogger_ has joined #ocaml
cr1901 has quit [*.net *.split]
esum has quit [*.net *.split]
amk has quit [*.net *.split]
jyc has quit [*.net *.split]
dh` has quit [*.net *.split]
anpad has quit [*.net *.split]
_whitelogger has quit [*.net *.split]
mima has joined #ocaml
jyc has joined #ocaml
amk has joined #ocaml
dh` has joined #ocaml
<discocaml> <Ada> yeah, pin
mizlan has quit [Remote host closed the connection]
mizlan has joined #ocaml
mizlan has quit [Remote host closed the connection]
mizlan has joined #ocaml
mizlan has quit [Remote host closed the connection]
mizlan has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
mizlan has quit [Ping timeout: 264 seconds]
mizlan has joined #ocaml
mizlan has quit [Remote host closed the connection]
mizlan has joined #ocaml
cr1901 has joined #ocaml
trillion_exabyte has quit [Ping timeout: 264 seconds]
mizlan has quit [Quit: mizlan]
trillion_exabyte has joined #ocaml
oriba has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
rgrinberg has joined #ocaml
mima has quit [Ping timeout: 260 seconds]
waleee has quit [Ping timeout: 264 seconds]
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
divya has quit [Ping timeout: 252 seconds]
rgrinberg has joined #ocaml
rgrinberg has quit [Client Quit]
rgrinberg has joined #ocaml
Serpent7776 has joined #ocaml
azimut has quit [Ping timeout: 240 seconds]
dnaq has quit [Remote host closed the connection]
dnaq has joined #ocaml
bartholin has joined #ocaml
<discocaml> <davesnx> If you want to install a specific version `opam install merlin.0.1.2.3` works also
<discocaml> <functionalprogramming> yeah but i dont want to have to check versions hehe
bartholin has quit [Remote host closed the connection]
mima has joined #ocaml
average has joined #ocaml
<discocaml> <leostera> is the behavior of the gc in hot loops documented somewhere? 🤔
<discocaml> <leostera> should a `while true do ... done` affect how often the gc gets to run?
gentauro has quit [Quit: leaving]
neiluj has joined #ocaml
patrick__ has quit [Ping timeout: 255 seconds]
pluviaq has quit [Ping timeout: 268 seconds]
jakzale has quit [Ping timeout: 268 seconds]
ggb has quit [Ping timeout: 268 seconds]
patrick__ has joined #ocaml
pluviaq has joined #ocaml
richardhuxton has quit [Ping timeout: 260 seconds]
ymherklotz has quit [Ping timeout: 260 seconds]
Ankhers has quit [Ping timeout: 260 seconds]
b0o has quit [Ping timeout: 260 seconds]
kuruczgy has quit [Ping timeout: 268 seconds]
_alix has quit [Ping timeout: 268 seconds]
immutable has quit [Ping timeout: 240 seconds]
henrytill has quit [Ping timeout: 240 seconds]
brettgilio has quit [Ping timeout: 268 seconds]
migalmoreno has quit [Ping timeout: 260 seconds]
sleepydog has quit [Ping timeout: 268 seconds]
toastal has quit [Ping timeout: 268 seconds]
whereiseveryone has quit [Ping timeout: 268 seconds]
philipwhite has quit [Ping timeout: 260 seconds]
arya_elfren has quit [Ping timeout: 260 seconds]
seeg has quit [Ping timeout: 260 seconds]
seeg has joined #ocaml
seeg has quit [Ping timeout: 255 seconds]
pluviaq has quit [Ping timeout: 255 seconds]
patrick__ has quit [Ping timeout: 255 seconds]
jakzale has joined #ocaml
ggb has joined #ocaml
seeg has joined #ocaml
toastal has joined #ocaml
patrick__ has joined #ocaml
sleepydog has joined #ocaml
ymherklotz has joined #ocaml
henrytill has joined #ocaml
migalmoreno has joined #ocaml
brettgilio has joined #ocaml
_alix has joined #ocaml
b0o has joined #ocaml
arya_elfren has joined #ocaml
pluviaq has joined #ocaml
Ankhers has joined #ocaml
richardhuxton has joined #ocaml
immutable has joined #ocaml
whereiseveryone has joined #ocaml
kuruczgy has joined #ocaml
mima has quit [Ping timeout: 276 seconds]
troydm has quit [Ping timeout: 276 seconds]
average has quit [Quit: Connection closed for inactivity]
philipwhite has joined #ocaml
Square has joined #ocaml
<Square> In F# it seems you specify type arguments as "type MyType<'a,'b>(...)". Why is the "'" needed?
<companion_cube> In ocaml it's the same and it marks type variables as distinct from types
<Square> companion_cube, ok. I guess that is a motivation at least.
<companion_cube> Well yeah, the grammar isn't arbitrary :)
Square2 has joined #ocaml
azimut has joined #ocaml
Square has quit [Ping timeout: 268 seconds]
azimut has quit [Remote host closed the connection]
azimut has joined #ocaml
azimut has quit [Remote host closed the connection]
azimut has joined #ocaml
azimut has quit [Ping timeout: 240 seconds]
azimut has joined #ocaml
azimut has quit [Remote host closed the connection]
azimut has joined #ocaml
mima has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
waleee has joined #ocaml
trillion_exabyte has quit [Ping timeout: 246 seconds]
trillion_exabyte has joined #ocaml
mima has quit [Ping timeout: 240 seconds]
Square2 has quit [Ping timeout: 260 seconds]
Square has joined #ocaml
<discocaml> <.armael.> The compiler inserts poll points in the code so that the GC gets to run
<discocaml> <.armael.> So it shouldn’t matter whether you have an infinite loop somewhere
<companion_cube> which means every loop got slower :/
<companion_cube> oh well, that's the tradeoff of using OCaml I suppose
<discocaml> <leostera> thanks @.armael. !
mima has joined #ocaml
Square has quit [Ping timeout: 240 seconds]
waleee has quit [Ping timeout: 260 seconds]
olle has joined #ocaml
azimut has quit [Ping timeout: 240 seconds]
<discocaml> <Ada> god i love ocaml tooling
azimut has joined #ocaml
<olle> dune too? :D
<olle> hehe
<discocaml> <Ada> dune and opam
<discocaml> <Ada> in equal measures
<discocaml> <Ada> like my two children
<discocaml> <Ada> and opam is secretly the favourite
bartholin has joined #ocaml
olle has quit [Ping timeout: 260 seconds]
<discocaml> <leostera> another dumb gc question 🙂 i've set up some monitoring and i can see some numbers that make sense for live/free/heap sizes in bytes. i can see my program peaks at ~531mb ram, and eventually the heap reports a size of ~254mb (70 live, 183 free) with ~44500 fragment blocks (so ~0.3mb unusable), yet somehow the resident memory of my program is at ~790mb and which is maybe accidentally close to (peak - current heap )(790-531 ~= 254 + 5). how
<discocaml> <leostera> (oh, words to bytes for a 64-bit machine)
waleee has joined #ocaml
szkl has quit [Quit: Connection closed for inactivity]
neiluj has quit [Quit: neiluj]
a51 has joined #ocaml
rgrinberg has joined #ocaml
yewscion has joined #ocaml
Square has joined #ocaml
a51 has quit [Quit: WeeChat 4.1.2]
<discocaml> <ambersaber> 怎样体验最新版本
Serpent7776 has quit [Ping timeout: 256 seconds]
oriba has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
mima has quit [Ping timeout: 264 seconds]
rgrinberg has joined #ocaml
azimut has quit [Ping timeout: 240 seconds]
azimut_ has joined #ocaml
azimut_ has quit [Remote host closed the connection]
<discocaml> <contextfreebeer> 你是用Windows嗎?OCaml5還不支持Windows吧。因為4跟5不太一樣,所以可能還沒做好Windows版本。
azimut has joined #ocaml
mstevens has quit [Quit: Connection closed for inactivity]
yewscion_ has joined #ocaml
yewscion has quit [Ping timeout: 268 seconds]
bartholin has quit [Quit: Leaving]
yewscion_ has quit [Remote host closed the connection]
yewscion_ has joined #ocaml
cdr255 has joined #ocaml
mima has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
cdr255 is now known as yewscion
yewscion_ has quit [Ping timeout: 246 seconds]
<discocaml> <Ada> lwt colouring is such a pain in the arse
<companion_cube> yep
<discocaml> <Kali> can't wait for effects to get good
troydm has joined #ocaml
<discocaml> <Ada> are they not already good?
<discocaml> <Kali> syntactically, i mean
<discocaml> <Kali> they are good in behavior
<discocaml> <Kali> but they are not typed either
<discocaml> <Ada> ah
<discocaml> <Ada> i've only used them through eio so far
<discocaml> <Ada> haven't got much further than hello worlds because i spend so much time working on my lwt projects haha
czy has quit [Remote host closed the connection]
czy has joined #ocaml
<discocaml> <Ada> speaking of lwt, anyboy know how i would detect that a cohttp client's closed the socket?
<discocaml> <Ada> specifically, i am trying to implement a reverse proxy type thing, and need to be able to cancel requests if the client hangs up
<discocaml> <Ada> cohttp logs this with `IO error while writing body: Unix.Unix_error(Unix.ECONNRESET, "write", "")`
<discocaml> <leostera> effects are pretty awesome already
<discocaml> <Ada> hmm, if i just attach a catch all case to cohttp's `conn_closed` callback that should work?
<discocaml> <Ada> instead of error handling just tie each response to a transfer and manually clean it up
<discocaml> <Ada> when the response has finished
<discocaml> <Ada> still some code rewrite since i'll have to switch from opium to cohttp.server directly, but thats probably better long term for maintainability
Tuplanolla has joined #ocaml
yewscion has quit [Ping timeout: 252 seconds]
<discocaml> <regularspatula> How did you set up the monitoring to get these values ?
mima has quit [Ping timeout: 246 seconds]
<discocaml> <leostera> a mix of gc.stat and htop – nothing too rigorous tbh