"Little Scheme" and PL Design (Code Critique?)
jwatson-CO-edu
real.name at colorado.edu
Sun Nov 20 19:26:30 UTC 2022
On Saturday, 19 November 2022 at 19:16:41 UTC, Jack Pope wrote:
> On Thursday, 17 November 2022 at 22:05:45 UTC, jwatson-CO-edu
> wrote:
>> [`Atom`](https://github.com/jwatson-CO-edu/SPARROW/blob/main/lil_schemer.d#L66) (unit of data), I throw it on the heap and never bother to delete it. [...]
>>
>
> If you wish to automatically de-allocate the oldest atoms, one
> approach might be to put them in a ring buffer. Its size will
> affect the relative time needed for deleting and overwriting
> the oldest elements. You can hard code the size based on
> experimentation or allow ongoing automatic adjustment based on
> some formula.
>
> I think there are some interesting ring buffer packages in the
> DUB registry.
Thank you, but I do not think the atoms will be freed in order,
especially those holding user-defined functions. A ring buffer
would be more appropriate for processing items in a stream or for
otherwise implementing a queue.
More information about the Digitalmars-d-learn
mailing list