Reading multiple indices on MagmaCollections - first code

Brent Pinkney brent.pinkney at aircom.co.za
Thu Apr 6 10:34:10 UTC 2006


Hi,

Attached is my first stab at the client api:

1. Get a clean 3.8 image
2. Load Magma1.0 
3. Load Lava (28) and Lava testing (23) from SqueakMap
4. Load Magma research-brp.2.mcz.

In a workspace execute:
	LavaTestResource current 

This creates the test Magma/Lava database.

Inspect this Lava query:

	LavaTestResource current session execute: '
		select * from people 
		where (familyName = ''Man'')
		or ( (familyName = ''Pinkney'') and (age <= 60) )'.



My proposed Magma client API to create a reader which can query multiple 
indices is:

LavaTestResource current people where: [ :r |
	(r read: #familyName at: 'Man') |
		( (r read: #familyName at: 'Pinkney') & (r read: #age to: 60) )
].

Inspecting this returns a MagmaExpression reader with a correctly populated 
'expression' tree.

I think this interface is acceptably elegant and can be used to construct the 
MaBitmapIndex for this query.

Comments welcomed

Brent
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Magma research-brp.2.mcz
Type: application/x-zip
Size: 4111 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/magma/attachments/20060406/94f389c3/Magmaresearch-brp.2.bin


More information about the Magma mailing list