Skip to content

Files

Latest commit

 

History

History
102 lines (94 loc) · 2.74 KB

collection_spec.md

File metadata and controls

102 lines (94 loc) · 2.74 KB

Collections Specification


This document describes the specification for the collections feature in the MufiZ language.

Collections

  • Arrays (Fixed and Dynamic)
  • Doubly Linked Lists
  • Hash Table
  • Matrix (Multi-Dimensional Array)
  • Float Vector (SIMD Array and Vec3 operations)

Common Operations for Collections

  • Insert
    • Insert an element into an array
    • Insert an element into a linked list
    • Insert an element into a hash table
    • Insert an element into a matrix
    • Insert an element into a float vector
  • Remove
    • Remove an element from an array
    • Remove an element from a hash table
    • Remove an element from a float vector
  • Search
    • Search for an element in an array
    • Search for an element in a linked list
    • Search for an element in a float vector
  • Get Element
    • Get an element from an array (nth_nf)
    • Get an element from a hash table
    • Get an element from a matrix
    • Get an element from a float vector
  • Sort
    • Sort an array (Quick Sort)
    • Sort a linked list (Merge Sort)
    • Sort a float vector
  • Print
    • Print an array
    • Print a linked list
    • Print a hash table
    • Print a matrix
    • Print a float vector
  • Push
    • Push an element into an array
    • Push an element into a linked list
    • Push an element into a float vector
  • Pop
    • Pop an element from an array
    • Pop an element from a linked list
    • Pop an element from a float vector
  • Merge
    • Merge two arrays
    • Merge two linked lists
    • Merge two hash tables
    • Merge two float vectors
  • Slice
    • Slice an array
    • Slice a float vector

Array Operations (Array, Matrix, Float Vector)

  • Add
    • Add two arrays together
    • Add two matrices together
    • Add two vectors together
    • Add a scalar to a vector
  • Subtract
    • Subtract two arrays
    • Subtract two matrices
    • Subtract two vectors
    • Subtract a scalar from a vector
  • Multiply
    • Multiply two arrays
    • Multiply two matrices
    • Multiply two vectors
    • Multiply a scalar with a vector
  • Divide
    • Divide two arrays
    • Divide two matrices
    • Divide two vectors
    • Divide a vector by a scalar
  • Sum (Array/Vec)
    • Sum of an array
    • Sum of a vector
  • Mean (Array/Vec)
    • Mean of an array
    • Mean of a vector
  • Variance (Array/Vec)
    • Variance of an array
    • Variance of a vector
  • Standard Deviation (Array/Vec)
    • Standard Deviation of an array
    • Standard Deviation of a vector
  • Max Value (Array/Vec)
    • Max value of an array
    • Max value of a vector
  • Min Value (Array/Vec)
    • Min value of an array
    • Min value of a vector