companion_cube changed the topic of #ocaml to: Discussion about the OCaml programming language | http://www.ocaml.org | OCaml 5.3.0 released: https://ocaml.org/releases/5.3.0 | Try OCaml in your browser: https://try.ocamlpro.com | Public channel logs at https://libera.irclog.whitequark.org/ocaml/
YuGiOhJCJ has joined #ocaml
Tuplanolla has quit [Quit: Leaving.]
hsw has quit [Read error: Connection reset by peer]
hsw_ has joined #ocaml
humasect has joined #ocaml
polykernel has quit [Remote host closed the connection]
polykernel has joined #ocaml
cr1901_ has joined #ocaml
cr1901 has quit [Ping timeout: 276 seconds]
pippijn has quit [Server closed connection]
pippijn has joined #ocaml
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack has joined #ocaml
<discocaml> <diligentclerk> I don't know much about ppx. Can you make a syntax for list comprehension that compiles down to filter and map? is that trivial
Frostillicus has joined #ocaml
hsw_ has quit [Quit: Leaving]
hsw has joined #ocaml
YuGiOhJCJ has quit [Remote host closed the connection]
YuGiOhJCJ has joined #ocaml
YuGiOhJCJ has quit [Remote host closed the connection]
YuGiOhJCJ has joined #ocaml
Frostillicus has quit [Ping timeout: 260 seconds]
humasect has quit [Quit: Leaving...]
leah2 has quit [Ping timeout: 244 seconds]
agentcasey has quit [Quit: ZNC 1.10.x-git-82-9ab81d1d - https://znc.in]
agentcasey has joined #ocaml
chrisz has quit [Ping timeout: 272 seconds]
chrisz has joined #ocaml
Frostillicus has joined #ocaml
YuGiOhJCJ has quit [Remote host closed the connection]
YuGiOhJCJ has joined #ocaml
Frostillicus has quit [Ping timeout: 248 seconds]
LainIwakura has joined #ocaml
YuGiOhJCJ has quit [Remote host closed the connection]
YuGiOhJCJ has joined #ocaml
leah2 has joined #ocaml
Humean has quit [Ping timeout: 252 seconds]
Serpent7776 has joined #ocaml
andrzejku has joined #ocaml
<andrzejku> hello
bartholin has joined #ocaml
Haudegen has joined #ocaml
amadaluzia has joined #ocaml
casastortaAway has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastorta has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastorta has joined #ocaml
casastortaAway has joined #ocaml
Frostillicus has joined #ocaml
zozozo has joined #ocaml
Tuplanolla has joined #ocaml
pie_ has joined #ocaml
Frostillicus has quit [Ping timeout: 248 seconds]
Frostillicus has joined #ocaml
Frostillicus has quit [Ping timeout: 252 seconds]
casastortaAway has quit [Ping timeout: 252 seconds]
casastortaAway has joined #ocaml
amadaluzia has quit [Ping timeout: 244 seconds]
LainIwakura has quit [Quit: Client closed]
Frostillicus has joined #ocaml
bibi__ has joined #ocaml
bibi_ has quit [Ping timeout: 252 seconds]
companion_cube has quit [Server closed connection]
companion_cube has joined #ocaml
LainIwakura has joined #ocaml
amadaluzia has joined #ocaml
nlocalhost has quit [Remote host closed the connection]
nlocalhost has joined #ocaml
casastortaAway has quit [Ping timeout: 276 seconds]
Frostillicus has quit [Ping timeout: 276 seconds]
<discocaml> <drupyog> @contificate perf wise, with an appropriate inline directive, the association table is almost entierly built at compile time (especially with flambda)
<discocaml> <drupyog> @contificate perf wise, with an appropriate inline directive, the association table is almost entirely built at compile time (especially with flambda)
<discocaml> <drupyog> @contificate perf wise, with an appropriate inline directive, the association table is almost entirely built at compile time (especially with flambda). The performance angle shouldn't really be a concern
<discocaml> <drupyog> @octachron the first version (with lot's of instrumented schedulers) worked quite well for me, thanks a lot 🙂
bibi__ has quit [Quit: Konversation terminated!]
<discocaml> <drupyog> (I didn't try the second one in the end, but maybe I will later on)
<discocaml> <octachron> Well, the second version will probably be integrated to `Gc.stat` in later versions, and it led me to a performance bug within the fiber cache. Thus it was time well-spent from my perspective anyway.
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
<discocaml> <drupyog> Nice
<discocaml> <drupyog> I should probably validate my findings with the second version, just to see how precise it is
casastortaAway has joined #ocaml
<discocaml> <contificate> I don't follow what you're replying to. I wouldn't use assoc lists for almost anything, especially with string keys. I'm well aware that the compiler can turn constant data into static allocations - my only comment on performance was about the builtin hashing function which is good because it can hash objects at the granularity of words.
casastortaAway has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastorta has quit [Quit: ZNC 1.10.1 - https://znc.in]
casastorta has joined #ocaml
casastortaAway has joined #ocaml
harm0n has joined #ocaml
<harm0n> anyone here
harm0n has quit [Client Quit]
nlocalhost has quit [Remote host closed the connection]
nlocalhost has joined #ocaml
bibi_ has joined #ocaml
Haudegen has quit [Quit: Bin weg.]
johnridesabike has joined #ocaml
nlocalhost has quit [Remote host closed the connection]
nlocalhost has joined #ocaml
Haudegen has joined #ocaml
<discocaml> <yawaramin> OCaml hashtable literal: `h ["hello", 1; "world", 2]` - ok i'm cheating, this is just a function lol
<discocaml> <yawaramin> jugaad philosophy
Frostillicus has joined #ocaml
Frostillicus has quit [Ping timeout: 276 seconds]
LainIwakura has quit [Quit: Client closed]
Frostillicus has joined #ocaml
<discocaml> <lecondorduplateau> why you need a syntax for this?
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
humasect has joined #ocaml
<discocaml> <yawaramin> yeah i don't but people often want it
Frostillicus has quit [Ping timeout: 248 seconds]
Frostillicus has joined #ocaml
Humean has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Haudegen has quit [Quit: Bin weg.]
<discocaml> <astreamingcomesacrossthesky> I think there's a reasonable claim to be made that in the hierarchy of conceptual tools used by programmers, plain old data would come before even functions as the simplest thing to use
<discocaml> <astreamingcomesacrossthesky> Which under the circumstances would just mean using records I suppose
Frostillicus has joined #ocaml
<discocaml> <deepspacejohn> I feel like a first-class syntax would only make sense if it could compile to the internal hashtable/map data structure directly, so there would be a performance advantage to using for large maps. Otherwise it's just a prettier `of_list` function.
euphores has joined #ocaml
LainIwakura has joined #ocaml
inline has quit [Read error: Connection reset by peer]
inline has joined #ocaml
Haudegen has joined #ocaml
LainIwakura has quit [Ping timeout: 272 seconds]
amadaluzia has quit [Quit: ZNC 1.10.1 - https://znc.in]
amadaluzia has joined #ocaml
cwypt has quit [Server closed connection]
cwypt has joined #ocaml
amadaluzia_ has joined #ocaml
amadaluzia has quit [Ping timeout: 260 seconds]
Serpent7776 has quit [Ping timeout: 272 seconds]
<discocaml> <astreamingcomesacrossthesky> Yeah I agree, I don't think it would make sense if it were just translated into a functional call
<discocaml> <astreamingcomesacrossthesky> Yeah I agree, I don't think it would make sense if it were just translated into a function call
<discocaml> <astreamingcomesacrossthesky> Yeah I agree, I don't think it would make sense if it were just translated into a function call
amadaluzia has joined #ocaml
amadaluzia_ has quit [Ping timeout: 240 seconds]
amadaluzia has quit [Ping timeout: 276 seconds]
amadaluzia has joined #ocaml
tomku has quit [Quit: leaving]
tomku has joined #ocaml
tomku has quit [Client Quit]
tomku has joined #ocaml
LainIwakura has joined #ocaml
Anarchos has joined #ocaml
<discocaml> <lukstafi> This syntax is invalid: `let rec x = ... and module Y = ... in ...`
<discocaml> <sim642> What about it?
<discocaml> <sim642> You could put `x` inside and later use `Y.x`, no?
<discocaml> <lukstafi> No, I put Y inside the definition of x, it's just visually noisy in my use case.
LainIwakura has quit [Quit: Client closed]
<discocaml> <lukstafi> `Y` does depend on `x`.
humasect has quit [Remote host closed the connection]
humasect has joined #ocaml
LainIwakura has joined #ocaml
gareppa has joined #ocaml
<discocaml> <deepspacejohn> you could put `x` in a module and use recursive modules. (although I always avoid recursive modules whenever possible and just use regular recursive definitions.)
myrkraverk_ has joined #ocaml
<discocaml> <youngkhalid> Do you guys use ReasonML ? If so, for what purposes : playing around with something a little bit different from OCaml / specific tasks... ?
myrkraverk__ has quit [Ping timeout: 252 seconds]
pmk has quit [Server closed connection]
pmk has joined #ocaml
ggb has quit [Server closed connection]
ggb has joined #ocaml
<humasect> youngkhalid: i've done some of it, having a native app and web app, with opengl + cairo for vector and nice text realtime graphics something something
<humasect> unfortunate name, 'reason'
bartholin has quit [Remote host closed the connection]
bartholin has joined #ocaml
euphores has quit [Quit: Leaving.]
gareppa has quit [Quit: WeeChat 4.5.1]
slondr has quit [Server closed connection]
slondr has joined #ocaml
Frostillicus has quit [Ping timeout: 276 seconds]
whereiseveryone has quit [Server closed connection]
whereiseveryone has joined #ocaml
szkl has quit [Quit: Connection closed for inactivity]
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Frostillicus has joined #ocaml
Frostillicus has quit [Ping timeout: 245 seconds]
Frostillicus has joined #ocaml
<discocaml> <shalokshalom> I found OCaml very early on in my programming career, (as I looked for a declarative language from the get go) and Reason is what led me off the path.
<discocaml> <shalokshalom>
<discocaml> <shalokshalom> It suggested back then, that the OCaml syntax has weird corner cases that it would solve.
<discocaml> <shalokshalom>
<discocaml> <shalokshalom> Back then, I had no idea what to think about, but it led me to FSharp.
<discocaml> <shalokshalom> For "playing around with something a little bit different, aside from the obvious options, you might find Grain, (which is written in Reason) and Moonbit (which is written by the former Bucklescript dev)
<discocaml> <shalokshalom>
<discocaml> <shalokshalom> And if you are looking for an alternative 'to OCaml' language, you might wanna look for F*
<humasect> as for declarative, Haskell led me to now Prolog
johnridesabike has quit [Quit: johnridesabike]
richardhuxton has quit [Server closed connection]
richardhuxton has joined #ocaml
amadaluzia has quit [Quit: ZNC 1.10.1 - https://znc.in]
ymherklotz has quit [Server closed connection]
ymherklotz has joined #ocaml
exfalsoquodlibet has quit [Server closed connection]
exfalsoquodlibet has joined #ocaml
bartholin has quit [Remote host closed the connection]
rustyne has quit [Server closed connection]
rustyne has joined #ocaml
cr1901_ has quit [Read error: Connection reset by peer]
cr1901 has joined #ocaml
phaebz has quit [Server closed connection]
phaebz has joined #ocaml
_alix has quit [Server closed connection]
_alix has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
Frostillicus has joined #ocaml
humasect has quit [Remote host closed the connection]
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #ocaml
Frostillicus has quit [Read error: Connection reset by peer]
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #ocaml
Frostillicus has joined #ocaml