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/
<discocaml> <froyo> through cffi you can use inline asm with the expected loss in portability and possible deminishing returns when the speedup is dwarfed by the call overhead (even when annotated with e.g. noalloc)
jabuxas has joined #ocaml
<discocaml> <idontwantausernamefeckoff> how bad is the C ffi?
<discocaml> <idontwantausernamefeckoff> for overhead i mean
<discocaml> <idontwantausernamefeckoff> im using dunes stub generation atm
<discocaml> <froyo> measure it for your own use case! pretty lightweight in general
<discocaml> <idontwantausernamefeckoff> yeah ofc
<discocaml> <idontwantausernamefeckoff> i’m only wrapping libcurl
<discocaml> <froyo> idk if ocaml5 introduced more overhead, but historically ocaml runtime worked nicely with c and the c call overhead was pretty low especially with noalloc i think it becomes just like a regular function call
<discocaml> <idontwantausernamefeckoff> which if anything the biggest performance gain would be writing it from a multi_perform based loop to listening on file descriptors inside eio
<discocaml> <idontwantausernamefeckoff> yeah i’ve heard good things
<discocaml> <idontwantausernamefeckoff> one of the reasons i started learning despite the small ecosystem compared to some other langs
<discocaml> <froyo> idk if ocaml5 introduced more overhead, but historically ocaml runtime worked nicely with c and the c call overhead was pretty low especially with noalloc i think it becomes just like a regular function call. I've personally compared with haskell and go, we beat both
<discocaml> <froyo> oops forgot edits aren't good here
<discocaml> <froyo> sorry :')
<companion_cube> There are already curl bindings, fyi
<discocaml> <idontwantausernamefeckoff> companion_cube: yeah, but i wanted specifically an eio interface and a lot more proxy related options that aren’t in ocurl, and it landed up being quicker to use ctypes for the bindings than understand lots and lots of c macros
<companion_cube> Ah I see
fweht has joined #ocaml
<companion_cube> I mean, if you can use ocurl with lwt, you should be able to do the same for eio
<discocaml> <idontwantausernamefeckoff> that and i wasn’t gonna use ocurl directly anyway so if all i want are the bindings ctypes makes that very simple to have as a few 20 line ml files
<discocaml> <idontwantausernamefeckoff> yeah, you can
<companion_cube> But missing options might be more work
<discocaml> <idontwantausernamefeckoff> ocurl is nice, but if i’m going to write my own convenience client and async code i may as well do it in a format i’m more comfortable with
<companion_cube> I don't get the async part, ocurl-lwt is like 30 lines :)
<companion_cube> I'm probably biased though cause I don't like ctypes much
<discocaml> <idontwantausernamefeckoff> so’s mine tbf
<discocaml> <idontwantausernamefeckoff> at some point i might rewrite it with unix sockets though
Tuplanolla has quit [Quit: Leaving.]
chrisz has quit [Ping timeout: 268 seconds]
rgrinberg has joined #ocaml
chrisz has joined #ocaml
jabuxas has quit [Ping timeout: 255 seconds]
azimut has quit [Quit: ZNC - https://znc.in]
mbac has joined #ocaml
<companion_cube> Wdym? Using unix.select?
jabuxas has joined #ocaml
azimut has joined #ocaml
<discocaml> <idontwantausernamefeckoff> curl_multi_socket and eio_unix
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<mbac> can everyone just use pipe and select and a lock-free mmap ring buffer
<mbac> kids these days hmph
<mbac> no respect
<companion_cube> select is bad, isn't it?
noddy has quit [Quit: WeeChat 4.2.1]
noddy has joined #ocaml
jabuxas has quit [Ping timeout: 264 seconds]
<mbac> what's better? threads? D:
<companion_cube> epoll
<companion_cube> but don't listen too much to me, I use threads :p
<Ankhers> What are the current suggested learning resources for ocaml?
rgrinberg has joined #ocaml
waleee has quit [Ping timeout: 264 seconds]
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
azimut has quit [Ping timeout: 255 seconds]
rgrinberg has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
dh` has joined #ocaml
rgrinberg has joined #ocaml
darchitect has quit [Ping timeout: 268 seconds]
darchitect has joined #ocaml
fweht has quit [Quit: Connection closed for inactivity]
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
zanetti has quit [Quit: zanetti]
Serpent7776 has joined #ocaml
Serpent7776 has quit [Ping timeout: 272 seconds]
raskol has quit [Ping timeout: 252 seconds]
bartholin has joined #ocaml
dnh has joined #ocaml
waleee has joined #ocaml
pi3ce has quit [Quit: No Ping reply in 180 seconds.]
pi3ce has joined #ocaml
dnh has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Serpent7776 has joined #ocaml
Tuplanolla has joined #ocaml
average has joined #ocaml
azimut has joined #ocaml
Serpent7776 has quit [Quit: leaving]
waleee has quit [Ping timeout: 264 seconds]
jabuxas has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
jabuxas has quit [Ping timeout: 256 seconds]
dhil has joined #ocaml
gentauro has quit [Read error: Connection reset by peer]
gentauro has joined #ocaml
jabuxas has joined #ocaml
dhil has quit [Ping timeout: 246 seconds]
jabuxas has quit [Ping timeout: 255 seconds]
szkl has quit [Quit: Connection closed for inactivity]
dhil has joined #ocaml
azimut has quit [Ping timeout: 255 seconds]
mbac has quit [Ping timeout: 272 seconds]
azimut has joined #ocaml
Anarchos has joined #ocaml
Anarchos has quit [Client Quit]
Anarchos has joined #ocaml
nfc has joined #ocaml
dhil has quit [Ping timeout: 246 seconds]
<discocaml> <mbacarella> my suggestion is https://dev.realworldocaml.org/
dhil has joined #ocaml
<discocaml> <mbacarella> I’m taking my kid to a math festival this morning
<discocaml> <mbacarella> I’m sure it’s going to be absolutely nothing like a math festival *I* would produce
<discocaml> <mbacarella> but my kid might think it’s a hit just because they have a build your own tesseract with toothpicks station
<discocaml> <mbacarella> “I can’t believe there isn’t a single LED installation of beta reduction! and what’s this? did you really just phone in cellular automata with the same tired game of life visualization? not even rule 23?!” 😤
dhil has quit [Ping timeout: 256 seconds]
dnh has joined #ocaml
rgrinberg has joined #ocaml
zanetti has joined #ocaml
dnh has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
gareppa has joined #ocaml
<discocaml> <Kali> #offtopic🎲 ?
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Anarchos has joined #ocaml
dnh has joined #ocaml
average has quit [Quit: Connection closed for inactivity]
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
waleee has joined #ocaml
zanetti has quit [Quit: zanetti]
<discocaml> <mbacarella> ahem. as an OCaml elitist I’m expressing my anxiety over math fest barely acknowledging true mathematical power
<discocaml> <mbacarella> there isn’t even a single booth here introducing a new concurrency library
<companion_cube> 😂
pi3ce has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
szkl has joined #ocaml
rgrinberg has joined #ocaml
<Anarchos> hello companion_cube
<companion_cube> Yo
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
Anarchos has quit [Ping timeout: 246 seconds]
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
dnh has quit [Quit: Textual IRC Client: www.textualapp.com]
dnh has joined #ocaml
dnaq has quit [Remote host closed the connection]
dnaq has joined #ocaml
<discocaml> <Kali> haha, so true
dnaq_ has joined #ocaml
dnaq has quit [Ping timeout: 264 seconds]
dnaq_ is now known as dnaq
gareppa has quit [Quit: WeeChat 4.0.5]
a51 has quit [Quit: WeeChat 4.2.1]
a51 has joined #ocaml
a51 has quit [Client Quit]
torretto_ has joined #ocaml
a51 has joined #ocaml
torretto has quit [Ping timeout: 255 seconds]
dnh has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<discocaml> <darrenldl> Ankhers: also check out the cornell book: https://cs3110.github.io/textbook/cover.html
bartholin has quit [Quit: Leaving]
jabuxas has joined #ocaml
neiluj has joined #ocaml
raskol has joined #ocaml