A newtype wrapper whose Semigroup instance always keeps the first (leftmost) value.
Semigroup
use fp_library::{ functions::*, types::First, }; assert_eq!(append(First(1), First(2)), First(1));