Skip to content
This repository has been archived by the owner on Feb 6, 2022. It is now read-only.

JadenGeller/Linky

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Linky

LinkedList is a value-semantic linked list.

let array: Array      = [1, 2, 3, 4]
let list:  LinkedList = [1, 2, 3, 4]

Just like with an Array, modifying a copy does NOT modify the original.

var arrayCopy = array
var listCopy  = list

arrayCopy[0] = 100
listCopy[0]  = 100

print(array) // -> [1, 2, 3, 4]
print(list)  // -> [1, 2, 3, 4]

Since we have value-semantics, we can make multiple copies of the list and modify them independently.

var a: LinkedList = ["Swift", "Rust", "Scala"]
var b = a

a[0] = "C"
b[3] = "Haskell"

print(a) // ["C", "Rust", "Scala"]
print(b) // ["Swift", "Rust", "Haskell"]