[squeak-dev] CouchDB was: MySQL question?

Igor Stasenko siguctua at gmail.com
Tue Jan 12 08:00:24 UTC 2010


2010/1/12 Mike Hales <mike.hales at kscape.com>:
> I made a Json parser in VisualWorks for our product, and I used an
> OrderedDictionary, because I wanted to be able to parse json to a
> JsonObject, then emit a json string back that would be equivalent. With a
> Dictionary, the order would change, thus making the original and emitted
> json strings different. Maybe that's why an OrderedCollection was used.
> Mike

I see. Can you tell, where it makes difference (except visual)?
Is there something what depends on a specific key order?

> Mike Hales
> Engineering Manager
> KnowledgeScape
> www.kscape.com
>
>
> On Mon, Jan 11, 2010 at 5:02 PM, Igor Stasenko <siguctua at gmail.com> wrote:
>>
>> 2010/1/12 Levente Uzonyi <leves at elte.hu>:
>> > On Tue, 12 Jan 2010, Igor Stasenko wrote:
>> >
>> >> 2010/1/12 Mike Hales <mike.hales at kscape.com>:
>> >>>>
>> >>>>
>> >>>> Or use better DB - CouchDB ;)
>> >>>>
>> >>> Igor, I noticed your CouchDB library on SqueakSource, but browsing
>> >>> from
>> >>> the
>> >>> web interface it looked like a fork of the JSON libraries and I
>> >>> couldn't
>> >>> quite tell what was going on. What is the status of this? Is it done
>> >>> and
>> >>> is
>> >>> there a tutorial?
>> >>
>> >> I forked the JSON library to not interfere with existing one.
>> >> My main point of displeasure with original, is that JsonObject using a
>> >> collection
>> >> of key/value pairs , held in OrderedCollection,
>> >> while in my implementation a JsonObject is a subclass of Dictionary,
>> >> which makes accessing properties much faster.
>> >
>> > Older versions (up to JSON-ul.15) used a Dictionary. OrderedCollection
>> > was a
>> > bad idea performance-wise.
>> >
>> I'm not sure yet. It maybe better to use a dictionary ivar instead of
>> subclassing a Dictionary.
>> Because in some places i need to tell the difference between
>> Dictionary and JsonObject
>> because i want to be allow to serialize and deserialize arbitrary
>> smalltalk objects as documents,
>> including collections and dictionaries , of course.
>> So, when deserializing, i need to determine somehow, what instance to
>> create - a Dictionary or
>> another JsonObject.
>>
>>
>> >
>> > Levente
>> >
>> >>
>> >> Also, an original CouchDB package (http://www.squeaksource.com/CouchDB)
>> >> using a curl plugin for speaking with database.
>> >> While my implementation using a sockets, provided by squeak, which
>> >> allows
>> >> me
>> >> to read the data in streaming mode, so i could start parsing a json
>> >> document, even
>> >> if its not fully retrieved yet i.e.:
>> >>
>> >> stream := (db streaming documentAt: '12345') readStream.
>> >> json := Json readFrom: stream.
>> >>
>> >>> Mike
>> >>
>> >>
>> >> --
>> >> Best regards,
>> >> Igor Stasenko AKA sig.
>> >>
>> >>
>> >
>> >
>>
>>
>>
>> --
>> Best regards,
>> Igor Stasenko AKA sig.
>>
>
>
>
>
>



-- 
Best regards,
Igor Stasenko AKA sig.



More information about the Squeak-dev mailing list