New(ish) libraries:
Exists library
Maintained by @ceedubs
Has programming been feeling like you're pushing a rock up a hill? Maybe the lack of existential types in Unison has been causing you… angst? While you can't directly represent an existential type in Unison, you can emulate them, and as it turns out there "exists" a mini library demoing that.
The project readme breaks down a datatype which can represent an existential type, but if you want more information about existential types in general, the Basics section of this Haskell wiki does a good job at explaining them.
Google Places API
Maintained by @tapegram
This library currently supports a subset of the Google Places API. For example, I used it to search for "Dinner" at the the Mount Everest Basecamp in an imagined future where I am capable of climbing a mountain. I got quite a few restaurants in response!
...
{
place_id: ChIJT-phrtoI6TkRybyBNFC4-WQ
name: Himalayan Lodge Restaurant
},{
place_id: ChIJdQYGNtQJ6TkRhOX1KvC7Lak
name: The Hungry Yak Live Music Bar Pvt Ltd
},{
place_id: ChIJ576ljNoI6TkRMi00fxQVj-w
name: Hotel khangri
},{
place_id: ChIJ9celvckP6TkRkzz9XydzCcM
name: Rokpa guest house
}
...
"The Hungry Yak" speaks to me, so I can use the information from the previous query to see what it looks like using the library. Here's where we're eating:
Midi library
Maintained by @alvaroc1
"Why not?" asks the project's readme, and we agree! Why not! If you need to parse a Midi file, you should be able to do it in Unison. Once the UCM supports UDP, the library should be able to play music, and perhaps a Unison concert is in order. 🎸
Version updates:
Dhall parsing library
Maintained by @hagl
Having misconfigured quite a few YAML configs in our day, we are very thrilled that Unison has a library to support parsing the Dhall language. If you haven't heard, Dhall is the coolest configuration language on the block. The Dhall language homepage includes a helpful tutorial which showcases its expressiveness and utility and the readme of the Dhall library on Share brings that content to Unison.
Ability-based parsing library
Maintained by @rlmark
Version two of this parsing library includes a rewrite of the Parse
ability to make use of the more efficient Pattern
utilities included in the base library. The CHANGELOG for this version contains information about the update.
That's all for now! If you have a library you'd like featured in a post, get in touch with us in the #libraries channel in the Unison slack!