comp.lang.ada
 help / color / mirror / Atom feed
From: onox <denkpadje@gmail.com>
Subject: Re: ANN: Simple components for Ada v.4.42
Date: Thu, 3 Oct 2019 16:53:44 -0700 (PDT)
Date: 2019-10-03T16:53:44-07:00	[thread overview]
Message-ID: <827ea39c-9640-4341-be3f-e7535aa56a73@googlegroups.com> (raw)
In-Reply-To: <7d04e6c3-9547-445c-a5cd-778fa97b62d1@googlegroups.com>

On Monday, September 16, 2019 at 8:58:41 AM UTC+2, briot....@gmail.com wrote:
> On Monday, September 16, 2019 at 8:48:36 AM UTC+2, Dmitry A. Kazakov wrote:
> > The new version provides an implementation of JSON (RFC 7158)
> 
> 
> Hi Dmitry,
> I would be curious to know the differences compared to what GNATCOLL.JSON provides, if you know ? It would be nice if the Ada world did not have too many packages competing here.

Uh oh, I've written a JSON parser ([0]) too! Sorry :) It's quite fast, only about 1K SLOC, supports Ada 2012's iterator and indexing syntax, Apache 2.0 license, but it does not handle UTF-8 yet (patches welcome though)

> Various things which I find limiting in GNATCOLL.JSON: performance is not really good because there are a lot of memory allocations

I did some benchmarking of some JSON parsers using a 110 M large .json file from [1]:

- Parsers.JSON choked on it (I used Parsers.Multiline_Source.Stream_IO)

- GNATCOLL.JSON needs about ~ 17 seconds

- json-ada needs about ~ 3 seconds (should be ~ 1 second to be competitive with other languages, patches/advice welcome)

[0] https://github.com/onox/json-ada

[1] https://github.com/kostya/benchmarks#Json

  parent reply	other threads:[~2019-10-03 23:53 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-16  6:48 ANN: Simple components for Ada v.4.42 Dmitry A. Kazakov
2019-09-16  6:58 ` briot.emmanuel
2019-09-16  7:44   ` Dmitry A. Kazakov
2019-10-03 18:58     ` Olivier Henley
2019-10-03 19:58       ` Dmitry A. Kazakov
2019-10-03 21:16         ` Olivier Henley
2019-10-03 21:29           ` Olivier Henley
2019-10-04  7:56             ` Dmitry A. Kazakov
2019-09-16  8:18   ` J-P. Rosen
2019-09-16 19:10   ` Dmitry A. Kazakov
2019-10-03 23:53   ` onox [this message]
2019-10-04  7:56     ` Dmitry A. Kazakov
2019-10-04 10:52       ` Olivier Henley
2019-10-04 12:15         ` Dmitry A. Kazakov
2019-10-03 15:43 ` Olivier Henley
2019-10-03 17:51   ` Dmitry A. Kazakov
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox