Jonas Carpay (@jonascarpay) 's Twitter Profile
Jonas Carpay

@jonascarpay

ID: 1560202735

linkhttp://jonascarpay.com calendar_today01-07-2013 10:12:16

66 Tweet

109 Followers

139 Following

Jonas Carpay (@jonascarpay) 's Twitter Profile Photo

Here's a fun trick for fixpoints over bifunctors that I haven't seen before. In the base functor, put the self-recursive case in the second argument, and the mutual case in the first. In the fixpoint, flip the functors for the first argument, and boom, mutual recursion

Here's a fun trick for fixpoints over bifunctors that I haven't seen before.

In the base functor, put the self-recursive case in the second argument, and the mutual case in the first. In the fixpoint, flip the functors for the first argument, and boom, mutual recursion
Jonas Carpay (@jonascarpay) 's Twitter Profile Photo

Blog post: Algebraic data types and pattern matching in Nix In light of the recent PureNix release, here's three ways to emulate pattern matching in Nix; one good, one bad, and one ugly. jonascarpay.com/posts/2021-11-…

Jonas Carpay (@jonascarpay) 's Twitter Profile Photo

Today's blog post is about #nix black arts: Capturing non-determinism by salting derivations jonascarpay.com/posts/2021-12-…

Today's blog post is about #nix black arts: Capturing non-determinism by salting derivations

jonascarpay.com/posts/2021-12-…
cdepillabout (@cdepillabout) 's Twitter Profile Photo

I put together a prototype of a cabal2nix tool that doesn't use IFD, but instead parses a .cabal file directly in #Nix. This is written in #PureScript and uses PureNix under the hood to transpile the code to Nix. github.com/cdepillabout/c…

cdepillabout (@cdepillabout) 's Twitter Profile Photo

Here's the third post in our series about #PureNix (a #PureScript to #Nix transpiler). This is a mostly non-technical post about what lead us to start writing PureNix. functor.tokyo/blog/2022-01-1…

Jonas Carpay (@jonascarpay) 's Twitter Profile Photo

I only just found out that hackage.haskell.org/package/enumma… exists, containing IntMap/Set wrappers for any Enum. Just to be sure I checked the asm, and with -O2, overhead optimizes away completely for Int newtypes. No more choosing between performance and convenience for Key newtypes!

Jonas Carpay (@jonascarpay) 's Twitter Profile Photo

Haskell trick of the day: Love newtypes but hate their derived Show instances? With -XDerivingStrategies, you can write `deriving newtype Show`. This overrides the default behavior of printing the constructor, and just reuses the parent Show instance directly instead. #haskell

0ch4rl3s.nfo (@acid2) 's Twitter Profile Photo

I've been wanting to build a HIE backed source code grapher for ages, and now I don't have to! Even better, Jonas Carpay has done a much better job than anything I envisioned. Go give this a try!

Jonas Carpay (@jonascarpay) 's Twitter Profile Photo

New blog post: a comprehensive guide to end-to-end-declarative deployment with Terraform and Nix (and EC2)! jonascarpay.com/posts/2022-09-… #Terraform #nixos #DevOps

Domen Kožar (@domenkozar) 's Twitter Profile Photo

Jonas Carpay Nice writeup! Funny enough, I have exact the same setup ready for AWS tutorial to be used with Cachix Deploy (app.cachix.org/deploy). Use the AMI to bootstrap the initial connection and then use Cachix Deploy to take over the NixOS bits and leave provisioning to Terraform.

Jonas Carpay (@jonascarpay) 's Twitter Profile Photo

Big QoL improvement for our Nix CI: piping all output through sed -E 's#/nix/store/([a-z0-9]{5})[a-z0-9]{27}-([a-zA-Z0-9+?=._-]+)#<\2_\1>#g' It renders store paths as <python-3.10_0a1b2>, making it a lot less intimidating esp. to non-Nix folk

Big QoL improvement for our Nix CI: piping all output through
sed -E 's#/nix/store/([a-z0-9]{5})[a-z0-9]{27}-([a-zA-Z0-9+?=._-]+)#&lt;\2_\1&gt;#g'

It renders store paths as &lt;python-3.10_0a1b2&gt;, making it a lot less intimidating esp. to non-Nix folk