Stg.ExamplePrograms

Simple introductory programs

addTwoNumbers

calculateLength

Sum of list

via foldl'

sum_foldl'

via foldl' implemented with foldr

sum_foldl'ViaFoldr

via foldl

sum_foldl

via foldr

sum_foldr

Fibonacci

Naive implementation (exponential time)

fibonacciNaive

Improved implementation (linear time)

fibonacciImproved

Infinite list with zipWith (+)

fibonacciZipWith

List concatenation

Right-associated

listConcatRightAssociated

Left-associated

listConcatLeftAssociated

Sorting

naiveSort

librarySort

Sharing

Repeat

repeatNaive

repeatSharing