All Projects → bow-swift → bow-lite

bow-swift / bow-lite

Licence: other
🏹 Bow Lite is a cross-platform library for Typed Functional Programming in Swift

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to bow-lite

Bow
🏹 Bow is a cross-platform library for Typed Functional Programming in Swift
Stars: ✭ 538 (+1892.59%)
Mutual labels:  composition, fp, category-theory, spm
Bugz
🐛 Composable User Agent Detection using Ramda
Stars: ✭ 15 (-44.44%)
Mutual labels:  composition, fp
Promised Pipe
A ramda.pipe-like utility that handles promises internally with zero dependencies
Stars: ✭ 64 (+137.04%)
Mutual labels:  composition, fp
function-composition-cheatsheet
Composition of Functions
Stars: ✭ 24 (-11.11%)
Mutual labels:  composition, fp
monadic-mondays
Code samples for #monadicmonday topics
Stars: ✭ 86 (+218.52%)
Mutual labels:  fp, category-theory
functional-structures-refactoring-kata
Starting code and proposed solution for Functional Structures Refactoring Kata
Stars: ✭ 31 (+14.81%)
Mutual labels:  composition, category-theory
pyroclastic
Functional dataflow through composable computations
Stars: ✭ 17 (-37.04%)
Mutual labels:  composition, fp
TagField
🏷 Simple Tag Field for SwiftUI 🏷
Stars: ✭ 19 (-29.63%)
Mutual labels:  spm
lzdash
Lazy / non-strict evaluation in JavaScript
Stars: ✭ 14 (-48.15%)
Mutual labels:  fp
safe-string-interpolation
A type driven approach to string interpolation, aiming at consistent, secure, and only-human-readable logs and console outputs !
Stars: ✭ 14 (-48.15%)
Mutual labels:  fp
coredux
Dualism to Redux. Two-way combining of redux modules
Stars: ✭ 14 (-48.15%)
Mutual labels:  composition
free-arrow
Implementation of the Free Arrow in Scala and other helpful tools for working with Arrows
Stars: ✭ 14 (-48.15%)
Mutual labels:  category-theory
classes
Smart, pythonic, ad-hoc, typed polymorphism for Python
Stars: ✭ 461 (+1607.41%)
Mutual labels:  fp
permissionary
Tiny and framework-agnostic role-based permission management using composition over inheritance
Stars: ✭ 19 (-29.63%)
Mutual labels:  composition
python-composition
Code for my talk at the Python Pizza micro conference. 🧀🍅🧄🥦
Stars: ✭ 24 (-11.11%)
Mutual labels:  composition
TVToday
iOS TV Shows app with TMDb Api. RxSwift, MVVM, Clean Architecture. Tuist + Swift Package Manager
Stars: ✭ 27 (+0%)
Mutual labels:  spm
redux-execute
Another way with thunk in redux
Stars: ✭ 18 (-33.33%)
Mutual labels:  side-effects
Swiftz-Validation
A data structure for validations. It implements the applicative functor interface
Stars: ✭ 15 (-44.44%)
Mutual labels:  fp
CAP project
CAP project -- Categories, Algorithms, and Programming
Stars: ✭ 18 (-33.33%)
Mutual labels:  category-theory
tailwind-cascade
Override TailwindCSS classes for component composition
Stars: ✭ 28 (+3.7%)
Mutual labels:  composition

Bow Lite

Compile and test iPad + iOS + macOS + linux bow-lite Playground

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.

Documentation

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.

Modules

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 and EnvIO 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.

How to get it

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

License

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.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].