<discocaml>
<jumpnbrownweasel> yes, i would have expected Map to be covered
dnh has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
brettgilio has quit [Remote host closed the connection]
chrisz has quit [Ping timeout: 245 seconds]
chrisz has joined #ocaml
brettgilio has joined #ocaml
bibi_ has quit [Ping timeout: 255 seconds]
riverdc has quit [Server closed connection]
riverdc has joined #ocaml
Hammdist has joined #ocaml
bartholin has joined #ocaml
jyc has quit [Server closed connection]
TrillionEuroNote has quit [Ping timeout: 252 seconds]
jyc has joined #ocaml
TrillionEuroNote has joined #ocaml
TrillionEuroNote has quit [*.net *.split]
jyc has quit [*.net *.split]
riverdc has quit [*.net *.split]
waleee has quit [*.net *.split]
amk has quit [*.net *.split]
masterbuilder has quit [*.net *.split]
myrkraverk_ has quit [*.net *.split]
zozozo has quit [*.net *.split]
dh` has quit [*.net *.split]
ursa-major has quit [*.net *.split]
bartholin has quit [*.net *.split]
brettgilio has quit [*.net *.split]
rom1504 has quit [*.net *.split]
xmachina has quit [*.net *.split]
John_Ivan has quit [*.net *.split]
chrisz has quit [*.net *.split]
midgard has quit [*.net *.split]
sadiq has quit [*.net *.split]
reynir has quit [*.net *.split]
deadmarshal_ has quit [*.net *.split]
greenbagels has quit [*.net *.split]
farn has quit [*.net *.split]
nfc has quit [*.net *.split]
micro has quit [*.net *.split]
mal`` has quit [*.net *.split]
infinity0 has quit [*.net *.split]
Soni has quit [*.net *.split]
ridcully_ has quit [*.net *.split]
justache has quit [*.net *.split]
xgqt has quit [*.net *.split]
Hammdist has quit [*.net *.split]
hrberg has quit [*.net *.split]
daftaupe has quit [*.net *.split]
terrorjack has quit [*.net *.split]
Johann_ has quit [*.net *.split]
slothby has quit [*.net *.split]
Geekingfrog has quit [*.net *.split]
ohperitel has quit [*.net *.split]
gentauro has quit [*.net *.split]
ec has quit [*.net *.split]
Exa has quit [*.net *.split]
gahr has quit [*.net *.split]
tizoc has quit [*.net *.split]
noddy has quit [*.net *.split]
habnabit_ has quit [*.net *.split]
Ekho has quit [*.net *.split]
rwmjones has quit [*.net *.split]
pieguy128 has quit [*.net *.split]
hsw has quit [*.net *.split]
ansiwen has quit [*.net *.split]
Riviera has quit [*.net *.split]
haesbaert has quit [*.net *.split]
dme2 has quit [*.net *.split]
conjunctive has quit [*.net *.split]
adrien has quit [*.net *.split]
lilata has quit [*.net *.split]
buoy49_ has quit [*.net *.split]
Duns_Scrotus___ has quit [*.net *.split]
xenu has quit [*.net *.split]
mstevens has quit [*.net *.split]
Armael has quit [*.net *.split]
octachron has quit [*.net *.split]
delyan_ has quit [*.net *.split]
GreaseMonkey has quit [*.net *.split]
welterde has quit [*.net *.split]
companion_cube has quit [*.net *.split]
leah2 has quit [*.net *.split]
discocaml has quit [*.net *.split]
ocabot has quit [*.net *.split]
technomancy has quit [*.net *.split]
rak has quit [*.net *.split]
Putonlalla has quit [*.net *.split]
tomku has quit [*.net *.split]
wagle has quit [*.net *.split]
pie_ has quit [*.net *.split]
daimrod1 has quit [*.net *.split]
jsoo has quit [*.net *.split]
troydm1 has quit [*.net *.split]
SquidDev has quit [*.net *.split]
Techcable has quit [*.net *.split]
dinosaure has quit [*.net *.split]
Hammdist has joined #ocaml
bartholin has joined #ocaml
TrillionEuroNote has joined #ocaml
riverdc has joined #ocaml
chrisz has joined #ocaml
xmachina has joined #ocaml
jyc has joined #ocaml
amk has joined #ocaml
sadiq has joined #ocaml
masterbuilder has joined #ocaml
myrkraverk_ has joined #ocaml
zozozo has joined #ocaml
brettgilio has joined #ocaml
midgard has joined #ocaml
ursa-major has joined #ocaml
dh` has joined #ocaml
ocabot has joined #ocaml
infinity0 has joined #ocaml
mal`` has joined #ocaml
deadmarshal_ has joined #ocaml
technomancy has joined #ocaml
nfc has joined #ocaml
greenbagels has joined #ocaml
farn has joined #ocaml
micro has joined #ocaml
hrberg has joined #ocaml
reynir has joined #ocaml
companion_cube has joined #ocaml
leah2 has joined #ocaml
conjunctive has joined #ocaml
rak has joined #ocaml
Soni has joined #ocaml
adrien has joined #ocaml
Exa has joined #ocaml
Putonlalla has joined #ocaml
daftaupe has joined #ocaml
justache has joined #ocaml
gahr has joined #ocaml
tizoc has joined #ocaml
noddy has joined #ocaml
ridcully_ has joined #ocaml
xgqt has joined #ocaml
Ekho has joined #ocaml
tomku has joined #ocaml
habnabit_ has joined #ocaml
rwmjones has joined #ocaml
wagle has joined #ocaml
pieguy128 has joined #ocaml
hsw has joined #ocaml
ansiwen has joined #ocaml
lilata has joined #ocaml
Johann_ has joined #ocaml
terrorjack has joined #ocaml
Riviera has joined #ocaml
Geekingfrog has joined #ocaml
ohperitel has joined #ocaml
Duns_Scrotus___ has joined #ocaml
gentauro has joined #ocaml
daimrod1 has joined #ocaml
jsoo has joined #ocaml
xenu has joined #ocaml
pie_ has joined #ocaml
haesbaert has joined #ocaml
Techcable has joined #ocaml
troydm1 has joined #ocaml
SquidDev has joined #ocaml
discocaml has joined #ocaml
dinosaure has joined #ocaml
welterde has joined #ocaml
delyan_ has joined #ocaml
octachron has joined #ocaml
GreaseMonkey has joined #ocaml
Armael has joined #ocaml
mstevens has joined #ocaml
slothby has joined #ocaml
John_Ivan has joined #ocaml
rom1504 has joined #ocaml
waleee has joined #ocaml
dme2 has joined #ocaml
ec has joined #ocaml
buoy49_ has joined #ocaml
ebb has quit [Max SendQ exceeded]
discocaml has quit [Excess Flood]
kurfen has quit [Max SendQ exceeded]
discocaml has joined #ocaml
kurfen has joined #ocaml
ebb has joined #ocaml
Serpent7776 has joined #ocaml
Serpent7776 has quit [Ping timeout: 252 seconds]
Johann_ has quit [Quit: I probably failed]
Johann has joined #ocaml
Serpent7776 has joined #ocaml
dnh has joined #ocaml
bartholin has quit [Quit: Leaving]
dnh has quit [Ping timeout: 255 seconds]
mro has joined #ocaml
gentauro has quit [Read error: Connection reset by peer]
gentauro has joined #ocaml
dnh has joined #ocaml
<discocaml>
<sim642> Oof, finally switched a project from OCaml 4.14 to 5.0 and it significantly increased memory usage, almost 10× in some cases 😦
<discocaml>
<sim642> I suspect it might be related to the Frama-C regressions and weak hashtables for hashconsing. Will try 5.1~rc3 to see if that's any better
azimut has joined #ocaml
habnabit_ has quit [Read error: Connection reset by peer]
habnabit_ has joined #ocaml
rgrinberg has joined #ocaml
<discocaml>
<xavierm02_> Is there some way of having odoc generate documentation that includes comments that are within functions (e.g. comments that explain what each branch of a huge match corresponds to)?
omegatron has quit [Remote host closed the connection]
bibi_ has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
dinosaure has quit [Server closed connection]
bibi_ has quit [Ping timeout: 240 seconds]
random-jellyfish has joined #ocaml
waleee has quit [Ping timeout: 255 seconds]
waleee has joined #ocaml
Hammdist has quit [Quit: Client closed]
Hammdist has joined #ocaml
<discocaml>
<sim642> odoc output just has the API and doesn't show anything inside the function, so there wouldn't be any place for such comments
waleee has quit [Quit: WeeChat 4.0.2]
bibi_ has joined #ocaml
waleee has joined #ocaml
<discocaml>
<deepspacejohn> IIRC, the ocaml compiler distinguishes “documentation comments” from regular comments, and the former can’t appear inside a function anyway
<discocaml>
<darrenldl> is angstrom still maintained?
<companion_cube>
@sim642 yeah I also have not great memory behavior
<companion_cube>
5.1 will probably help?
<octachron>
It should help (but it will still probably not at the level of 4.14)
terrorjack has quit [Ping timeout: 255 seconds]
<companion_cube>
(because of compaction?)
terrorjack has joined #ocaml
<octachron>
because of compactions but also having a new GC and runtimes that needs tuning and bug fixes
waleee has quit [Ping timeout: 246 seconds]
<companion_cube>
right :)
waleee has joined #ocaml
waleee has quit [Ping timeout: 245 seconds]
waleee has joined #ocaml
omegatron has joined #ocaml
waleee has quit [Ping timeout: 255 seconds]
waleee has joined #ocaml
rgrinberg has joined #ocaml
<discocaml>
<sim642> 5.1~rc3 is slightly better but still far from 4.14. I'll try to find time to do some `perf`-ing to maybe get some idea
<discocaml>
<sim642> It might also be the batteries' hashconsing module which is terribly out of date (copied from Fillâtre, which is copied from OCaml decades ago). Some regression fixes were to `Weak` directly, so my project might not have benefited from them properly
<companion_cube>
it's always been a weirdly overkill module, too
<discocaml>
<sim642> I think the reason batteries etc have copied `Weak` is because it doesn't have a suitable `find_or_add` function that works in a single pass
<discocaml>
<sim642> And given the complexity with `Weak`, I'm not sure if `find` and then conditional `add` would even be right. Due to weakness, things may disappear between the two operations maybe
dhil has joined #ocaml
<companion_cube>
it has `merge`
<companion_cube>
that's the only thing you need for hashconsing
humasect has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
mro has quit [Quit: Leaving]
bibi_ has quit [Ping timeout: 240 seconds]
humasect has quit [Remote host closed the connection]
bibi_ has joined #ocaml
humasect has joined #ocaml
humasect has quit [Remote host closed the connection]
humasect has joined #ocaml
humasect has quit [Ping timeout: 240 seconds]
waleee has quit [Ping timeout: 255 seconds]
bibi_ has quit [Ping timeout: 255 seconds]
bartholin has joined #ocaml
Techcable has quit [Server closed connection]
Techcable has joined #ocaml
TrillionEuroNote has quit [Ping timeout: 255 seconds]
bibi_ has joined #ocaml
rgrinberg has joined #ocaml
waleee has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
<discocaml>
<sim642> Merge adds a given value though. But you want to generate a new unique ID at that point
<discocaml>
<sim642> I guess you could optimistically create the new ID and use it for merge. If it's already there, then it just won't be used
<companion_cube>
carried it around for 10 years, it does the job as well as `hashcons`
<companion_cube>
trick is to have a mutable id in the record you're hashconsing
<discocaml>
<sim642> But then you end up allocating an useless fresh hashconsed object each time it already exists, which is precisely what you want to avoid
<companion_cube>
you don't haev a choice on that one :D
<discocaml>
<sim642> The Fillatre version only allocates the record when it doesn't exist already
<discocaml>
<sim642> It's a copy of Weak module essentially
<companion_cube>
that's kind of overkill tbh
<discocaml>
<sim642> With that optimization inlined
<companion_cube>
:/
<discocaml>
<sim642> Maybe there's something more
<discocaml>
<sim642> I didn't compare yet or read the paper
bibi_ has quit [Ping timeout: 246 seconds]
SquidDev has quit [Server closed connection]
SquidDev has joined #ocaml
<discocaml>
<sim642> Apparently there's a bigger reason:
<discocaml>
<sim642>
<discocaml>
<sim642> > The sole difference with respect to
<discocaml>
<sim642> OCAML weak hash tables is that we do no need to (re)compute the
<discocaml>
<sim642> hash key when inserting or resizing since it is contained in the data
<discocaml>
<sim642> itself
<discocaml>
<sim642> Apparently there's a bigger reason:
<discocaml>
<sim642>
<discocaml>
<sim642> > The sole difference with respect to OCAML weak hash tables is that we do no need to (re)compute the
<discocaml>
<sim642> hash key when inserting or resizing since it is contained in the data
<discocaml>
<sim642> itself
<discocaml>
<sim642> Apparently there's a bigger reason:
<discocaml>
<sim642>
<discocaml>
<sim642> > The sole difference with respect to OCAML weak hash tables is that we do no need to (re)compute the hash key when inserting or resizing since it is contained in the data itself
bibi_ has joined #ocaml
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<companion_cube>
please don't edit on this channel, it's a lot of spam on IRC
<companion_cube>
I still think it's overkill…
waleee has quit [Ping timeout: 258 seconds]
waleee has joined #ocaml
waleee has quit [Ping timeout: 245 seconds]
waleee has joined #ocaml
rgrinberg has joined #ocaml
waleee has quit [Ping timeout: 255 seconds]
random-jellyfish has quit [Quit: Client closed]
Guest14 has joined #ocaml
bibi_ has quit [Ping timeout: 255 seconds]
Guest14 has quit [Client Quit]
Tuplanolla has joined #ocaml
waleee has joined #ocaml
Serpent7776 has quit [Ping timeout: 245 seconds]
<discocaml>
<contextfreebeer> is sedlex generally recommended over ocamllex nowadays? I got that impression when I researched the issue a while back but I'm not sure. it does support unicode which is nice but the syntax is also significantly more cumbersome, it's probably not a deal-breaker but I guess not worth the headache if ocamllex will serve? I've used ocamllex for several projects and I like it, but if there is some other reason to prefer sedlex I might give
waleee has quit [Ping timeout: 246 seconds]
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rgrinberg has joined #ocaml
dhil has quit [Ping timeout: 245 seconds]
bibi_ has joined #ocaml
waleee has joined #ocaml
xd1le has quit [Quit: xd1le]
bartholin has quit [Quit: Leaving]
rgrinberg has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
dnh has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]