Arc.Tango
Bill Baxter
dnewsgroup at billbaxter.com
Thu Sep 6 11:45:44 PDT 2007
Clay Smith wrote:
> Bruno Medeiros wrote:
>> Clay Smith wrote:
>>> Arc v.02 has been successfully ported over to Tango, and will be
>>> using Tango as the only supported standard library for future releases.
>>>
>>> I put my rationale on a wiki, as well:
>>> http://www.dsource.org/projects/arclib/wiki/WhyUseTango
>>>
>>> Arc v.02 Stable Tango Branch:
>>> http://svn.dsource.org/projects/arclib/branches/arc02/tango/
>>>
>>> Arc is a cross platform arcade game library, providing easy access to
>>> 2d graphics, sound, input, a graphical user interface, and more.
>>>
>>> ~ Clay
>>
>> What Tango facilities are you using (or planning to use)?
>>
>
> I mostly use tango's bare minimum features, but...
>
> Using
> * Signals
> * Logging
>
> Planned
> * VFS
> * Maybe Reader, Writer
> * Maybe some collections
> * Maybe XML if tango decides to get that
You make a lot of good points on that page.
Have you (or anyone) tested the performance of the tango containers?
I'm concerned about the performance impact of all iterators being
heap-allocated, interface-accessed things, but I suspect there are ways
to work around that (maybe using opApply's or scope'ing iterators).
From a quick look it appears that opApply scope allocates and uses the
actual iterator type, thus avoiding both the heap and virtual calls.
But the iterator returned by .elements is a heap-allocated generic
interface pointer. On the other hand opApply will have to go through a
few delegate calls to get at your loop body. So anyway, it's not
exactly clear to me what price I end up having to pay at the pump vs a
more STL-like thinly-veiled-pointers approach.
--bb
More information about the Digitalmars-d-announce
mailing list