seangrove has quit [Read error: Connection reset by peer]
yomimono has joined #ocaml
jeffmo has quit [Quit: jeffmo]
pyon has quit [Quit: For now I'll see you off.]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
f[x] has joined #ocaml
ygrek_ has quit [Ping timeout: 252 seconds]
jeffmo has joined #ocaml
clog has quit [Ping timeout: 260 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
nivek has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
Algebr` has quit [Read error: Connection reset by peer]
Algebr` has joined #ocaml
yunxing_ has quit [Remote host closed the connection]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
tmtwd has joined #ocaml
pyon has joined #ocaml
nivek has joined #ocaml
clog has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
walter|r has joined #ocaml
<seliopou>
rgrinberg may have json perf numbers later tonight
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
<seliopou>
working on a patch that gets allocations way down
<seliopou>
bruce isn't around any more :/
<rgrinberg>
bruce?
<seliopou>
just a passing comment about the guy that was asking me about aws
<seliopou>
rgrinberg yojson is extremely efficient
<seliopou>
like surprisingly so
<rgrinberg>
ah yes, him.
<rgrinberg>
Yeah, yojson has this weird lexer trick
<rgrinberg>
surprising how fast you can get with ocamllex and a few hacks
<seliopou>
yeah, and it allocates close to nothing
<Algebr`>
Read more about this one lexer trick!
pierpa has quit [Ping timeout: 258 seconds]
sdothum has quit [Quit: ZNC - 1.6.0 - http://znc.in]
nivek has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
jonasen has joined #ocaml
walter|r has quit [Remote host closed the connection]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
copy` has quit [Quit: Connection closed for inactivity]
MercurialAlchemi has joined #ocaml
rgrinberg has quit [Ping timeout: 276 seconds]
sh0t has quit [Remote host closed the connection]
larhat has quit [Quit: Leaving.]
MercurialAlchemi has quit [Ping timeout: 250 seconds]
jonasen has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
yunxing_ has joined #ocaml
tmtwd has quit [Ping timeout: 260 seconds]
f[x] has quit [Ping timeout: 244 seconds]
yunxing__ has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
yunxing_ has quit [Ping timeout: 250 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
Sorella has quit [Quit: Connection closed for inactivity]
Algebr` has quit [Read error: Connection reset by peer]
Algebr` has joined #ocaml
MercurialAlchemi has joined #ocaml
bruce_r has joined #ocaml
pyon has quit [Quit: For now I'll see you off.]
jonasen has joined #ocaml
Algebr` has quit [Ping timeout: 250 seconds]
<flux>
I keep clickin' yet nothing happens :(
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
freusque has joined #ocaml
bruce_r has quit [Ping timeout: 250 seconds]
Simn has joined #ocaml
jonasen has quit [Ping timeout: 244 seconds]
kdas_ has joined #ocaml
jonasen has joined #ocaml
nojb_ has joined #ocaml
kdas_ has quit [Ping timeout: 240 seconds]
dexterph has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
cdidd has quit [Ping timeout: 260 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
tokik has quit [Quit: leaving]
yunxing__ has quit [Ping timeout: 250 seconds]
edwin has quit [Ping timeout: 258 seconds]
edwin has joined #ocaml
darkf_ has joined #ocaml
martinkl_ has joined #ocaml
<reynir>
haha
darkf has quit [Ping timeout: 250 seconds]
larhat has joined #ocaml
mcc has quit [Quit: Connection closed for inactivity]
phrst has quit [Ping timeout: 276 seconds]
ooo has quit [Ping timeout: 272 seconds]
steshaw has left #ocaml [#ocaml]
darkf_ is now known as darkf
martinkl_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
martinkl_ has joined #ocaml
cdidd has joined #ocaml
cdidd has quit [Remote host closed the connection]
cdidd has joined #ocaml
octachron has joined #ocaml
jwatzman|work has joined #ocaml
kdas_ has joined #ocaml
NingaLeaf has joined #ocaml
dhil has joined #ocaml
riveter_ec2 has joined #ocaml
adrien_ has joined #ocaml
companion_square has joined #ocaml
mfp_ has joined #ocaml
orbitz_ has joined #ocaml
pippijn_ has joined #ocaml
companion_cube has quit [Killed (verne.freenode.net (Nickname regained by services))]
companion_square is now known as companion_cube
SimonJF_ has joined #ocaml
beginner_ has joined #ocaml
M-Illandan1 has joined #ocaml
NingaLeaf_ has quit [*.net *.split]
beginner has quit [*.net *.split]
M-Illandan has quit [*.net *.split]
Orion3k has quit [*.net *.split]
mfp has quit [*.net *.split]
j_king has quit [*.net *.split]
SimonJF has quit [*.net *.split]
adrien has quit [*.net *.split]
orbitz has quit [*.net *.split]
pippijn has quit [*.net *.split]
riveter has quit [*.net *.split]
riveter_ec2 is now known as riveter
j_king has joined #ocaml
M-martinklepsch has quit [Ping timeout: 276 seconds]
TheLemonMan has joined #ocaml
steve_gh has joined #ocaml
Orion3k has joined #ocaml
freehck has quit [Ping timeout: 260 seconds]
M-martinklepsch has joined #ocaml
steve_gh has quit [Ping timeout: 250 seconds]
jonasen has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
Kakadu has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
sdothum has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
jonasen has joined #ocaml
freehck has joined #ocaml
jonasen has quit [Client Quit]
Nahra` has joined #ocaml
Kakadu has quit [Ping timeout: 250 seconds]
zozozo has quit [Ping timeout: 250 seconds]
octachron has quit [Ping timeout: 250 seconds]
Nahra has quit [Ping timeout: 240 seconds]
zozozo has joined #ocaml
hnrgrgr_ has quit [Ping timeout: 272 seconds]
hnrgrgr has joined #ocaml
Leonidas has quit [Read error: Connection reset by peer]
Leonidas has joined #ocaml
yomimono has quit [Ping timeout: 276 seconds]
A19774941 has joined #ocaml
A1977494 has quit [Ping timeout: 258 seconds]
silver has joined #ocaml
kdas_ has quit [Ping timeout: 252 seconds]
jwatzman|work has joined #ocaml
martinkl_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
fehrnah has joined #ocaml
martinkl_ has joined #ocaml
nivek has joined #ocaml
jonasen has joined #ocaml
jonasen has quit [Client Quit]
martinkl_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
martinkl_ has joined #ocaml
rgrinberg has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
A19774941 has quit [Quit: Leaving.]
kushal has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
kolko has joined #ocaml
kolko_ has quit [Ping timeout: 240 seconds]
agarwal1975 has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
jeffmo has quit [Quit: jeffmo]
jave_ has quit [Ping timeout: 250 seconds]
FreeBirdLjj has quit [Ping timeout: 252 seconds]
d0nn1e has quit [Ping timeout: 272 seconds]
Algebr` has joined #ocaml
d0nn1e has joined #ocaml
freusque has quit [Quit: WeeChat 1.4]
ncthom91 has joined #ocaml
lostman has joined #ocaml
jwatzman|work has joined #ocaml
tane has joined #ocaml
sh0t has joined #ocaml
StrykerKKD has joined #ocaml
<StrykerKKD>
I'm reading Real World Ocaml and the <:of_sexp< examples alwazs throw the same error and i have no idea how to fix it
<StrykerKKD>
let reminders_of_sexp = <:of_sexp<(Time.t * string) list>>;;
<StrykerKKD>
Error: While finding quotation "of_sexp" in a position of "expr": There is no quotation expander available. Camlp4: Uncaught exception: Not_found
dhil has quit [Ping timeout: 272 seconds]
octachron has joined #ocaml
dhil has joined #ocaml
<octachron>
StrykerKKD: The syntax extensions of Real World OCaml are outdated if you are using a recent version of OCaml
Algebr` has quit [Read error: Connection reset by peer]
Algebr` has joined #ocaml
<octachron>
If I am not mistaken, the new ppx-based syntax should be [%of_sexp: (Time.t * string) list]
<StrykerKKD>
it throws a Error: Parse error: [expr] expected after "=" (in [cvalue_binding])
<fehrnah>
You can look in the reference manual page 166.
<fehrnah>
I am not familliar with them so I can't explain them to you.
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
dakk has quit [Ping timeout: 276 seconds]
pierpa has joined #ocaml
sh0t has quit [Remote host closed the connection]
fehrnah has quit [Quit: Page closed]
adrien_ is now known as adrien
AlexDenisov has joined #ocaml
StrykerKKD has quit [Quit: Konversation terminated!]
dakk has joined #ocaml
ncthom91 has joined #ocaml
<infinity0>
is there a pure lifo data structure? Stack from stdlib is impure :(
martinkl_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<zozozo>
infinity0: lists are lifo
darkf has quit [Quit: Leaving]
<infinity0>
they're fifo, the head of the list is easiest to add to and remove from?
<infinity0>
i could create an amortized-constant lifo out of two lists, but i was hoping the stdlib already has that...
<mrvn>
infinity0: queue?
<infinity0>
it's impure and fifo :(
<Drup>
hum, lists are lifo
<Drup>
you take and add from the head
<mrvn>
wait. you want lifo? That's just a list
<zozozo>
I stand by my points, Lists are lifo: when you add an element x to r, you get (x :: r), so the head is actually the last element inserted
<Drup>
(moreover, stack is pretty much 'a list ref)
<infinity0>
oh sorry. i got the terms mixed up. i wanted a pure fifo then
<Drup>
pure queues are annoying
Algebr` has quit [Ping timeout: 250 seconds]
<mrvn>
infinity0: then two lists. add to the first list, remove from the second list. if second list is empty then reverse first list and use as second.
<infinity0>
yeah, that's what i had in mind by "amortized-constant lifo [fifo]". i hoped stdlib would already have it
<Enjolras>
if you take Set with seq no you have a pure fifo
<Enjolras>
though it is not optimal at all
<infinity0>
nvmd i can hack it up myself, i guess
<mrvn>
Enjolras: that would be O(log n)
<Enjolras>
usual implementation of pure queue is with two lists you can do it yourself
<Enjolras>
mrvn: yeah
<Drup>
infinity0: there is probably one in containers o reins, though
<mrvn>
2 lists are O(1) amortized
<Enjolras>
mrvn: but not amortized
<mrvn>
Enjolras: sets are O(log n) amortized
AlexDenisov has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<infinity0>
Drup: thanks i'll take a look at those
<Enjolras>
yes i meant you don't get O(1) amortized
<Enjolras>
even without persistent use, i suspect that two lists perform better that a set because set cause a lot of constant allocations
StrykerKKD has joined #ocaml
<mrvn>
Enjolras: only way sets would be better is if you need a "constant" access time instead of amortized.
<mrvn>
The list implementation will hickup every now and then to reverse the list.
<infinity0>
yeah i think everyone agrees, we just worded it all differently :)
<Enjolras>
anyway i'm offtopic since it is not a ready made implementation sorry
<StrykerKKD>
okay, ppx of_sexp didn't work, because my .ocamlinit file was incorect. lesson learned
Kakadu has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 250 seconds]
<companion_cube>
in containers.data there is a persistent double-ended queue
jonasen has joined #ocaml
<beginner_>
is there any news about a windows installer for ocaml 4.03?
jonasen has quit [Client Quit]
nivek has quit [Disconnected by services]
<infinity0>
what's the recommended way to define a lazy list structure
<infinity0>
or rather, i'm trying to create an iterator, but the consumer might not want all elements in advance
AltGr has joined #ocaml
<companion_cube>
there is not one single recommended way, sadly
unbalancedparen has joined #ocaml
<companion_cube>
a PR for a standard iterator type is on the way
<companion_cube>
otherwise, there are iterators at least in the following opam libs : sequence, gen, batteries, core
spion has quit [Ping timeout: 246 seconds]
<companion_cube>
(depending on what you need)
<infinity0>
could someone argue in favour of one of them? :p
<infinity0>
i'm just exposing an API for one of my functions, that generates some elements, so the simplest interface i guess would be good
<infinity0>
i don't need peek/pushback/whatever etc, just next() and is_empty()
<gasche>
and it should also catch the fix as soon as it's ready
mattrepl_ is now known as mattrepl
<hcarty>
Drup: No, but there were troubles building from master IIRC because it is/was using dynamic setup
dakk has quit [Ping timeout: 244 seconds]
<hcarty>
gasche: That's good to know
<flux>
smondet, exactly that!
<flux>
but it doesn't have 4.03
nicholas_ has quit [Remote host closed the connection]
<flux>
hmm, no, it does, but the css doesn't work properly
<flux>
but it nevertheles answers the question: no, fmt 0.8.0 doesn't work with ocamls earlier than 4.03.0 :)
<hcarty>
Drup: The issue I'm having with cohttp, though, is current and ppx related
BitPuffin has quit [Read error: Connection reset by peer]
<hcarty>
flux: For at least a little while
<hcarty>
Ah, and the fix was merged
<hcarty>
for fmt
rand__ has joined #ocaml
malc_ has joined #ocaml
<hcarty>
seliopou: One or more of your recent optimization changes has made a huge difference in the msgpack parser
<hcarty>
seliopou: For a simple benchmark it went from ~18.5k parsed messages per second to ~23k per second
<hcarty>
seliopou: With no code changes/optimizations on my side yet
<hcarty>
seliopou: So thanks! That's a very nice result
<hcarty>
Particularly just running on my laptop
<gasche>
hcarty: I'm curious to see how quick opam-builder is
<gasche>
the build in the last report is from an opam-repository two hours ago
shinnya has quit [Ping timeout: 252 seconds]
<seliopou>
hcarty I aim to please :)
jbrown has quit [Remote host closed the connection]
<seliopou>
Once you get around to getting rid of those big choices and dispatching instead, you should see another improvement. If not in terms of latency, then certainly in the size of input that your parser can handle
<seliopou>
In terms of additional optimizations, I think I may be tapped out. There are a few more closure allocations I can eliminate but I don't think it will make a huge difference
<gasche>
.. and did you reach your performance goal?
<hcarty>
I gave a demo of angstrom a few days ago to some coworkers. It was very well received
<seliopou>
gasche: I am just shy of it, still too much allocation, which means still too much gc :/
<seliopou>
hcarty that's great!
<seliopou>
I might as well cut the first release
<seliopou>
is there anything missing as of now?
slash^ has quit [Read error: Connection reset by peer]
jbrown has joined #ocaml
<hcarty>
Nothing that I've run into - but this is my first time using a library like this for anything significant
yunxing_ has quit [Remote host closed the connection]
<gasche>
I understand why the CI fails, it's not a regression in the PR (I patched two Coq versions, 8.5.0 and 8.5.1, and 8.5.0 still does not compile; but I'd like to have one installable version on 4.03.0)
MercurialAlchemi has quit [Ping timeout: 260 seconds]
Kakadu has joined #ocaml
<hcarty>
rgrinberg: Why was ppx_type_conv marked as incompatible with ppx_deriving 4.0?
<hcarty>
rgrinberg: They seem to compile together - is there some use-time incompatibility?
<gasche>
you can see that the "fmt" line became red at 30b475d, which is dbuenzli's first faulty fix, and becomes green again at 16201c8, which is a commit (32 minutes ago) after hnrgrgr merged the fmt fix
manizzle has quit [Ping timeout: 246 seconds]
<gasche>
this is the 4.01 data; 4.02.x has not finished its post-fix builds yet
<gasche>
but this is quite neat
jeffmo has joined #ocaml
dexterph has quit [Ping timeout: 250 seconds]
<gasche>
this suggests that if we implemented sending an email to package maintainers when something breaks, they would get warned in a couple hours on average
<rgrinberg>
hcarty: seemed like that was the case. Did you compile the ppx_deriving exporter?
<rgrinberg>
I haven't had a close look I'll confess
nicholasf has quit [Remote host closed the connection]
<hcarty>
rgrinberg: Not sure - I haven't tried to use a Jane St deriver + a ppx_deriving deriver together
<hcarty>
They compile in the same switch
xvw_ has quit [Quit: xvw_]
dexterph has joined #ocaml
yunxing_ has joined #ocaml
<rgrinberg>
hcarty: i'll have a look at this today. out of curiousity, why do you need ppx_driving 4.0?
<rgrinberg>
for ppx_deriving_yojson on 4.03?
<hcarty>
rgrinberg: I'd like to use 4.03.0, but outside of that I'd like to (continue to) move my code away from a mix of `Ok and Ok
<hcarty>
Is it possible to change the version constraints for a single package locally?
<Drup>
hcarty: "opam pin add -e foo 2.3.0"
<hcarty>
Drup: Thanks
dakk has joined #ocaml
A1977494 has quit [Ping timeout: 276 seconds]
nicholasf has joined #ocaml
<hcarty>
rgrinberg: And thank you for looking at it if you have time
<gasche>
I think it could be good if people did both a minor release to become compatible with the new OCaml version, and a separate compat-breaking release to make use of new niceties
<gasche>
(in the heat of the moment we maintainers are tempted to think "whatever, 4.03.0 users are early-adopters anyway, they can upgrade they code to our nice things")
dhil has quit [Ping timeout: 246 seconds]
<hcarty>
gasche: ppx makes that rather difficult when the internals shift and values/constructors get renamed between versions
<hcarty>
gasche: In cases where that is an option, though, it seems like a good idea
<hcarty>
But if something that is strongly tied to a specific OCaml version is anywhere in the chain of dependencies then OCaml vNext will be out of reach until those packages are updated
larhat has joined #ocaml
<rgrinberg>
gasche: i think that in this exact case i did ask whitequark to make an intermediate release :/
<Drup>
hcarty: for the small things in ppx, it should not be an issue
<Drup>
hcarty: we have a compatibility layer in place now, and we can expand it for the next releases
<hcarty>
Drup: No, it's mainly something like ppx_deriving which needs to touch lots of internal structure
dakk has quit [Ping timeout: 244 seconds]
<Drup>
hum, right, ppx_deriving is trickier
Orion3k has quit [Quit: Leaving]
xvw_ has joined #ocaml
xvw_ has quit [Client Quit]
<rgrinberg>
in this particular case its' a bunch of little issues. The switch to result, the internal ppx_deriving_yojson compat. issues with 4.03, and of course the interface change in deriving to accamodate module types
Algebr` has quit [Read error: Connection reset by peer]
Algebr` has joined #ocaml
rand__ has quit [Quit: leaving]
Nahra`` has joined #ocaml
dexterph has quit [Ping timeout: 244 seconds]
iZsh_ has joined #ocaml
Nahra` has quit [Remote host closed the connection]
wolfcore has quit [Ping timeout: 244 seconds]
iZsh has quit [Ping timeout: 244 seconds]
dakk has joined #ocaml
wolfcore has joined #ocaml
Orion3k has joined #ocaml
AlexDenisov has quit [Read error: Connection reset by peer]
benwboot_ has joined #ocaml
AlexDenisov has joined #ocaml
benwbooth has quit [Ping timeout: 240 seconds]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
SimonJF_ has quit [*.net *.split]
madroach has quit [*.net *.split]
nicoo has quit [*.net *.split]
john51 has quit [*.net *.split]
srcerer has quit [*.net *.split]
tristero has quit [*.net *.split]
troydm has quit [*.net *.split]
Muzer has quit [*.net *.split]
cat5e has quit [*.net *.split]
gustav___ has quit [*.net *.split]
Algebr has quit [*.net *.split]
ohama has quit [*.net *.split]
cow-orker has quit [*.net *.split]
Algebr` has quit [Read error: Connection reset by peer]
Algebr` has joined #ocaml
Muzer has joined #ocaml
octachron has quit [Quit: Leaving]
larhat has quit [Quit: Leaving.]
nicholasf has quit [Remote host closed the connection]
johnf has joined #ocaml
shinnya has joined #ocaml
Denommus has quit [Remote host closed the connection]
Denommus has joined #ocaml
agarwal1975 has quit [Quit: agarwal1975]
sh0t has quit [Remote host closed the connection]
rbocquet has quit [Ping timeout: 258 seconds]
rbocquet has joined #ocaml
Sim_n has quit [Quit: Leaving]
yunxing_ has quit [Remote host closed the connection]