Thread overview |
---|
December 09, 2015 Container Purity | ||||
---|---|---|---|---|
| ||||
Is it currently possible for a container such as https://github.com/economicmodeling/containers/blob/master/src/containers/dynamicarray.d that uses std.experimental.container to be completely pure? If not can be made to? I wonder because only length(), empty(), front() and back() are tagged as pure in DynamicArray at https://github.com/economicmodeling/containers/blob/master/src/containers/dynamicarray.d are marked as pure. Is there a reason for this? |
December 09, 2015 Re: Container Purity | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nordlöw | On Wednesday, 9 December 2015 at 10:47:18 UTC, Nordlöw wrote:
> that uses std.experimental.container
Correction: I mean std.experimental.allocator
|
December 09, 2015 Re: Container Purity | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nordlöw | Allocators usually use global state. Such code is usually treated as impure. |
December 09, 2015 Re: Container Purity | ||||
---|---|---|---|---|
| ||||
Posted in reply to Kagamin | On Wednesday, 9 December 2015 at 11:46:45 UTC, Kagamin wrote:
> Allocators usually use global state. Such code is usually treated as impure.
What about containers that store their own local allocator? Will DMD infer all members of such containers to be pure if they only access locally allocated structures?
|
Copyright © 1999-2021 by the D Language Foundation