lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Sun, Mar 20, 2011 at 22:28, Henning Diedrich <hd2010@eonblast.com> wrote:
> On 3/20/11 1:49 AM, Alexander Gladysh wrote:
> On Sun, Mar 20, 2011 at 03:33, Henning Diedrich <hd2010@eonblast.com> wrote:

>>> Fleece is a ~ 10 times faster Lua to JSON converter.

>>> Site: http://www.eonblast.com/fleece/

>> I would very much like to see comparison of this module performance
>> with fine-tuned LuaJIT2/FFI implementation.

> Totally seconded. I tried and didn't get too far, e.g. with JIT+Yajl,
> JIT+JSON4.

Um. No, I mean plain Lua code under JIT, without bindings — assuming
"ideal" compiler you do not need any if you're only generating JSON,
not parsing it.

BTW, there is also another luajson:
https://github.com/harningt/luajson which you did not cover with
benchmarks (or is it this one
http://luaforge.net/projects/luajsonlib/? looks like it is not).

>> P.S. Honestly, when I hear that something works below Lua API, I reach
>> for a gun.

> Nah, don't shoot yourself just yet. It's gonna be good.

Well, if you say so :-)

> With your permission, I filed your other "Ugh" comment in the Fleece README
> under humor. Attributed.

Good. :-)

> Seriously, I think your gun metaphor is pretty off. How about some
> reflection of why you find this hurtful or feel like you need to punish
> somebody. That's what you are saying. It's scary and dimensionally OT.

As I tried to convey in other posts in this thread, I consider the
programming practice when one accesses private internals of a complex
third party system to be inacceptable in all, except the most
exceptional cases.

It creates unbearably tight coupling between the system and the client code.

Such coupling leads to high maintenance costs.

The maintenance costs so high, that it does not worth the speed boost
— in general. (As I said in another post — I *can* imagine myself in
the situation then I would have to employ this practice — but I would
not be happy about it.)

I believe (personally) that this is the bad practice — one of the few
that trigger an emotional reaction that I described as a "reaching for
a gun". This is the thing that violates my "code of engineering" in a
hard way.

Now, Henning, I do not want to shoot (or otherwise punish) you or any
one else. I apologize if this particular metaphor or my reaction was
offensive. I do respect your hard work and your efforts to contribute
to the community.

I just want to know, why did you do this in that way?

Alexander.