cassava VS witch

Compare cassava vs witch and see what are their differences.

cassava

A CSV parsing and encoding library optimized for ease of use and high performance (by haskell-hvr)

witch

:mage_woman: Convert values from one type into another. (by tfausak)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
cassava witch
5 4
218 74
0.0% -
4.7 6.0
7 days ago about 1 month ago
Haskell Haskell
BSD 3-clause "New" or "Revised" License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

cassava

Posts with mentions or reviews of cassava. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-22.
  • Genuine question: how do you all use Haskell IRL?
    7 projects | /r/haskell | 22 Apr 2023
    I use it for everything: tracking personal finance and tax data (https://hackage.haskell.org/package/hledger), small scripts to gather online information that I want to track (https://hackage.haskell.org/package/cassava), sending alerts to my mobile device, etc...there's too much to list.
  • Monthly Hask Anything (November 2022)
    3 projects | /r/haskell | 1 Nov 2022
    cassava?
  • Working with CSVs
    2 projects | /r/haskellquestions | 27 Oct 2021
    I personnaly use cassava which should have everything you need (even though it can be quite obscure some times). I also know about Frames which might reduce some boiler plate at the price of a step up in complexity (disclaimer I've never use it, but it's author is a serious guy so I'm sure this package as some benefits).
  • [ANN] ttc-1.0.0.0 - Textual Type Classes
    5 projects | /r/haskell | 2 Jun 2021
    I have done a lot of CSV development! I usually use the cassava library, though I have my own library as well. The cassava library uses FromRecord, FromNamedRecord, ToRecord, and ToNamedRecord type classes for parsing and rendering records, and it uses FromField and ToField type classes for parsing and rendering fields. An identifier type like the UserName example above should declare instances for FromField and ToField in order to be used in CSV files. For types that have appropriate Render and Parse instances, I implement general functions named something like parseFieldWithTTC and toFieldWithTTC, which allows me to declare instances as follows:

witch

Posts with mentions or reviews of witch. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-05-30.
  • Haskell Libraries I Love
    2 projects | /r/haskell | 30 May 2022
    Thanks for mentioning Witch! I'm obviously biased because I wrote it, but it's a great library :)
  • Cast Haskell values with Witch
    2 projects | /r/haskell | 13 Jul 2021
    See this issue for some discussion: https://github.com/tfausak/witch/issues/2
  • [ANN] ttc-1.0.0.0 - Textual Type Classes
    5 projects | /r/haskell | 2 Jun 2021
    The witch package provides type classes for converting between arbitrary types: text, numbers, and anything else that people create instances for. It is therefore much more broadly applicable compared to TTC, which only works with text. I really appreciate that both a From type class (for conversion without failure) and a TryFrom type class (for conversion that may fail) are used, and the implementation looks very convenient. I will remember this project and use it when I have a suitable application in the future.

What are some alternatives?

When comparing cassava and witch you can also consider the following projects:

fuzzyset - :sheep: A fuzzy string set implementation in Haskell.

safecopy - An extension to Data.Serialize with built-in version control

llrbtree - Left-leaning red-black trees

holmes - A reference library for constraint-solving with propagators and CDCL.

gps2htmlReport - Generates a HTML page report detailing a GPS journey, with charts, statistics and an OpenStreetMap graphic.

orgmode-parse - Attoparsec parser combinators for parsing org-mode structured text!

datasets - UCI Datasets for Haskell

discrimination - Fast linear time sorting and discrimination for a large class of data types

skip-list - Pure skip lists in Haskell

diskhash - Diskbased (persistent) hashtable

pipes-csv - Streaming csv parser using cassava and pipes

jump - Jump start your Haskell development