Skip to content

Track lazy indexed array abstraction #816

@He-Pin

Description

@He-Pin

Summary

Track a dedicated sjsonnet lazy indexed array abstraction.

Status: Largely Complete

The core infrastructure is implemented:

  • LazyViewArr base class with caching, reverse support, releaseCapturedState()
  • MappedArr — lazy view for std.map
  • MappedWithIndexArr — lazy view for std.mapWithIndex
  • MakeArrayArr — lazy view for std.makeArray
  • RangeArr — lazy integer range (inspired by jrsonnet's RangeArray)
  • ReversedLazyViewArr — O(1) reverse over lazy views
  • LazyIndexedArr — indexed lazy array with recursion detection

Remaining (diminishing returns)

  • std.slice view — avoid copying
  • std.repeat view — avoid materializing repeated elements
  • View fusion (map∘map → single composed view)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions