www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - tanya 0.6.0, new containers

reply Eugene Wissner <belka caraus.de> writes:
Dear community,

there is a new release of my gc-free library, tanya. I don't 
announce each release, so I want to tell short about the latest 
development and plans for the next releases.

The most work in the last time was done on containers. These were 
added:

- DList - Doubly-linked list.
- String - UTF-8 string.
- Set - The first version of hash based container that holds 
unique values without a particular order. Currently supports only 
integral values. Support for more types comes in the next release.
- Vector was renamed to Array.

The containers support ranges.

tanya.memory.types:
- Some bug fixes in RefCounted
- New Scoped - allocator-aware object wrapper, that destroys the 
owned object at the end of the scope.

The work on the containers will be continued. I also started to 
rethink the networking and the event loop parts of my library. 
Trying to extend it I discovered some flaws. So it is a further 
area, I'm working to provide a more complete networking solution.

And it can be that multi-threading will come sooner than I 
planned originally.

And I introduced a short release cycle for the first time: 3 
weeks (But I won't flood the forum each time :)). And from now on 
I'm trying to deprecate features at least for one release before 
breaking the code to stabilize the code base a bit.

https://github.com/caraus-ecms/tanya
http://code.dlang.org/packages/tanya
https://docs.caraus.io/tanya/
Jun 09
parent reply Mike B Johnson <Mikey Ikes.com> writes:
On Friday, 9 June 2017 at 18:54:12 UTC, Eugene Wissner wrote:
 Dear community,

 there is a new release of my gc-free library, tanya. I don't 
 announce each release, so I want to tell short about the latest 
 development and plans for the next releases.

 [...]
Thanks! I'll check it out.. we need this sort of stuff for D. Do you have any plans for a circular/ring buffer?
Jun 10
parent Eugene Wissner <belka caraus.de> writes:
On Saturday, 10 June 2017 at 07:33:33 UTC, Mike B Johnson wrote:
 On Friday, 9 June 2017 at 18:54:12 UTC, Eugene Wissner wrote:
 Dear community,

 there is a new release of my gc-free library, tanya. I don't 
 announce each release, so I want to tell short about the 
 latest development and plans for the next releases.

 [...]
Thanks! I'll check it out.. we need this sort of stuff for D. Do you have any plans for a circular/ring buffer?
I have already one, working only with scalar types: tanya.container.buffer.WriteBuffer. It was designed to be used with C-functions like read/send. In this module is also ReadBuffer, an asynchronous buffer. It locks one part of the buffer waiting for an asynchronous operation, while the other part can be used by the application.
Jun 10