diff --git a/Source/FunctionalHelpers.swift b/Source/FunctionalHelpers.swift index f05da1c..72299a8 100644 --- a/Source/FunctionalHelpers.swift +++ b/Source/FunctionalHelpers.swift @@ -1,9 +1,3 @@ -/// One of my favorite indian spices. -func curry(f: (A, B) -> C) -> A -> B -> C { - return { a in { b in f(a, b) } } -} - -// MARK: - Optional func <^> (@noescape f: T -> U, a: T?) -> U? { return a.map(f) } @@ -15,39 +9,12 @@ func >>- (a: T?, @noescape f: T -> U?) -> U? { return a.flatMap(f) } -func pure(a: T) -> T? { - return .Some(a) -} - extension Optional { func apply(f: (Wrapped -> U)?) -> U? { return f.flatMap { self.map($0) } } } -// MARK: - Array -public func <^> (f: T -> U, a: [T]) -> [U] { - return a.map(f) -} - -public func <*> (fs: [T -> U], a: [T]) -> [U] { - return a.apply(fs) -} - -public func >>- (a: [T], f: T -> [U]) -> [U] { - return a.flatMap(f) -} - -public func -<< (f: T -> [U], a: [T]) -> [U] { - return a.flatMap(f) -} - -public func pure(a: T) -> [T] { +func pure(a: T) -> [T] { return [a] } - -public extension Array { - func apply(fs: [Element -> U]) -> [U] { - return fs.flatMap { self.map($0) } - } -}