3 repository-uri
Ordered persistent collections of data utilizing high-performance structures like AVL trees.
Distinct from Immutable Data Structures: Distinct from Immutable Data Structures: specifically targets ordered sequences and high-performance access patterns.
Explore 3 awesome GitHub repositories matching part of an awesome list · Immutable Sequences. Refine with filters or upvote what's useful.
language-ext is a functional programming framework for C# that provides a suite of immutable data structures and monadic types. It enables the implementation of pure functional programming patterns, utilizing containers to manage side effects, optional values, and error handling. The library is distinguished by its advanced concurrency and state management tools, including a software transactional memory system and lock-free atomic references. It also provides specialized utilities for distributed systems, such as vector clocks for causality tracking and deterministic data conflict resolution
Provides high-performance ordered collections using persistent arrays and AVL trees.
Cats este o bibliotecă de programare funcțională și type class pentru Scala, concepută pentru a implementa tipare algebrice și abstracțiuni funcționale. Aceasta oferă un set standardizat de interfețe și un toolkit modular de wrapper-e și containere funcționale pentru a permite polimorfismul ad-hoc și programarea generică între tipuri disparate. Proiectul servește drept standard de abstracție funcțională, oferind o suită de monad transformer pentru a compune contexte imbricate cu efecte și a gestiona multiple efecte secundare computaționale într-un singur pipeline. De asemenea, permite construirea de limbaje specifice domeniului (DSL) încorporate prin reprezentarea logicii programului ca structuri de date care sunt interpretate separat de definițiile lor. Biblioteca acoperă domenii largi de capabilități, inclusiv manipularea algebrică a datelor pentru combinarea și reducerea valorilor, gestionarea stării cu tipizare sigură și gestionarea funcțională a erorilor pentru a formaliza acumularea și recuperarea acestora. Oferă, de asemenea, instrumente pentru gestionarea computațiilor cu efecte și extinderea tipurilor de colecții standard cu capabilități funcționale. Biblioteca include mecanisme pentru validarea legilor algebrice, asigurând că instanțele de type class respectă proprietățile matematice.
Implements high-performance immutable sequences with constant-time appending and concatenation.
Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an embeddable scripting engine. It functions as a fiber-based concurrency runtime and includes a parsing engine based on Parsing Expression Grammars. The project is distinguished by its ability to be integrated into C or C++ applications via a minimal header interface. It utilizes a Lisp-style macro system for compile-time code transformation and employs prototype-based table inheritance for object-oriented behavior. The runtime covers a broad set of capabilities, including asynchronous
Enables the creation and slicing of tuples and arrays to manage ordered, read-only data.