Bow Lite is a cross-platform library for Typed Functional Programming in Swift. It is a lightweight version of Bow where some complexity, like Higher Kinded Type emulation, has been removed.
All documentation is available in our website. Notice that the documentation presents all examples using the full version of Bow. Although Bow Lite maintains compatibility with the API of Bow, there may be cases where there are some variations.
Bow Lite offers an umbrella module BowLite
that contains:
- BowLiteCore: a collection of the main data types typically used in FP projects, that you can find in the core module of Bow.
- BowLiteEffects: an implementation of the
IO
andEnvIO
data types to deal with side effects, that you can find in the BowEffects module. - BowLiteOptics: a monomorphic implementation of some optics, that you can find in the BowOptics module.
Bow Lite is available using Swift Package Manager. You can include it using the corresponding wizard in Xcode, or adding the following line to your Package.swift
manifest:
.package(url: "https://github.com/bow-swift/bow-lite.git", from: "{version}")
import BowLite
Copyright (C) 2018-2021 The Bow Authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.