Hey Nico,

I looked into your new stuff and I like it. Especially the MongoQueries stuff 
is very simple and clean approach to do a small DSL. That boosts the usability 
of MongoTalk extremely. Bravo!

Norbert

Am 19.11.2012 um 15:37 schrieb Nicolas Petton <[email protected]>:

> 
> Hi guys,
> 
> Lately I worked a bit on the Pharo Mongo driver for SmalltalkHub. I made
> several changes (in the new version 1.4):
> 
> The query API changed:
> 
> - MongoCollection>>query: now takes a 1 arg block, improving the API
> quite a bit. 
> 
> Queries like:
> 
> aCollection query: (aCollection query 
>    query: { 'foo' -> 'bar'} asDictionary;
>    yourself)
> 
> Is now written:
> 
> aCollection query: [ :query |
>    query where: { 'foo' -> 'bar'} ]
> 
> Sending #asDictionary has also been made optional, the query builder
> will send #asMongoQuery to the query collection.
> 
> 
> The MongoQueries package:
> 
> Version 1.4 comes with a new package MongoQueries, a small DSL allowing
> us to use traditional blocks instead of dictionaries to perform
> queries. This is optional and backward compatible.
> 
> Queries like:
> 
> aCollection select: { '$or' -> { 'name' -> 'foo'. 'age' -> { '$gt' -> 23 }
> asDictionary } asDictionary } asDictionary
> 
> can be expressed:
> 
> aCollection select: [ :each | (each name = 'foo') | (each age > 23) ]
> 
> The MongoQueries package should support the entire mongo query language
> (including nested queries), and comes with unit tests.
> 
> Nico
> 


Reply via email to