☭. evie's Avatar

☭. evie

@eviefp.bsky.social

they/she commie & queer activist apprentice field mathematician, functional programming enjoyer DMs are open

50 Followers  |  39 Following  |  52 Posts  |  Joined: 03.12.2024  |  1.9218

Latest posts by eviefp.bsky.social on Bluesky

Are there any FP books aimed at beginners, that focus on CS theory instead of being a language tutorial?

TAPL is a decent example, but it needs gentler start to introducing notation at the very least.

20.10.2025 07:36 — 👍 0    🔁 0    💬 0    📌 0

Well, that was a fun 11 hours or Hades 2 & refactor.

One room of Hades for every commit/module.

11.10.2025 21:45 — 👍 2    🔁 0    💬 0    📌 0
My cat Freya laying next to my monitor. A terminal with nixos config switch is showing.

My cat Freya laying next to my monitor. A terminal with nixos config switch is showing.

Freya also thinks this refactor is long overdue.

11.10.2025 10:55 — 👍 0    🔁 0    💬 0    📌 0

It's interesting to me that it's a 1500+ lines nix file and it doesn't feel THAT bad.

The main motivator for this are things like I want to put bindings next to plugins when they're related.

11.10.2025 10:30 — 👍 0    🔁 0    💬 0    📌 0

My idea of a fun Saturday: split my neovim nix config into sub-modules.

11.10.2025 10:27 — 👍 1    🔁 0    💬 2    📌 1

AuDHD woman, surprised that fidget toys help them focus during meetings. More after the break.

09.10.2025 21:21 — 👍 4    🔁 0    💬 0    📌 0

Lazy evaluation means that you won't get raptured until the very moment where Anubis needs to weigh your soul on the scale

24.09.2025 10:33 — 👍 70    🔁 15    💬 2    📌 0

These monolithic corporate, closed-source tools with little to no usable documentation (looking at you azure/sonarcloud/etc.) almost make me understand why people end up using LLMs.

16.09.2025 14:27 — 👍 1    🔁 0    💬 0    📌 0

That's an interesting perspective! My mental model links OO polymorphism with existentials packed with a typeclass/dictionary.

Or from the perspective of the caller picking type arguments, the OO equivalent would be generics/templates.

14.09.2025 12:59 — 👍 1    🔁 0    💬 0    📌 0
a screenshot from wplace, showing three things side by side, clearly grouped together: a trans pride flag (with a small blåhaj), a non-binary pride flag (with some logos i don't recognize), and the cover of the Homotopy Type Theory book

a screenshot from wplace, showing three things side by side, clearly grouped together: a trans pride flag (with a small blåhaj), a non-binary pride flag (with some logos i don't recognize), and the cover of the Homotopy Type Theory book

absolutely incredible find on wplace

29.08.2025 18:27 — 👍 18    🔁 3    💬 1    📌 0

It was rather trivial (especially since I have a yubikey spare) to just re-generate new certificates and decrypt/re-encrypt everything.

However, I don't even want to think what level of a pain in the ass it would be to recover (part of) all this if my yubikey broke.

28.08.2025 21:56 — 👍 2    🔁 0    💬 0    📌 0

Turns out it's important to try disaster recovery sometimes.

I just found out I did not correctly write down the password for my backed up yubikey certificates, so I could not recover anything if the yubikey broke.

28.08.2025 21:56 — 👍 1    🔁 0    💬 1    📌 0

But then line goes down, because in the vast majority of cases you end up spending a lot more money on these "cheap" (they're not as cheap as they should) things because they break so often.

22.08.2025 13:25 — 👍 0    🔁 0    💬 1    📌 0

This is what I currently have, and now `neovim` is just like any other package.

I personally use nixvim, so I just set `programs.nixvim.package = neovim;` along with a bunch other configs. See

github.com/eviefp/dotfi...

and

github.com/eviefp/dotfi...

22.08.2025 10:40 — 👍 0    🔁 0    💬 0    📌 0

neovim = pkgs.neovim-unwrapped.overrideAttrs (_: {
version = "0.12.0-dev";
src = pkgs.fetchFromGitHub {
owner = "neovim";
repo = "neovim";
rev = "c522cb0e96dad3bf3a834df5c6a8988f5c13a1a3";
hash = "sha256-KPEN54yO3OQMxd+dn5lCw8dfvokfwzeTEqSEpy7e208=";
};

22.08.2025 10:40 — 👍 0    🔁 0    💬 1    📌 0

Oh, overrideAttrs it is. I always forget this exists.

21.08.2025 22:09 — 👍 1    🔁 0    💬 1    📌 0

Well, looks like I'm running neovim main, because this is annoying github.com/neovim/neovi...

Also is there a way to just override `pkgs.neovim-unwrapped` rather than copy/pasting that bit from `nixpkgs` and manually updating the fetchGit bit?

21.08.2025 21:44 — 👍 0    🔁 0    💬 1    📌 0

Let’s say I had 3000 lines of #erlang code and I wanted to hire someone to re-write than in #gleamlang. Is there someone who would be willing to do that? How much would you charge for that?

21.08.2025 21:28 — 👍 3    🔁 1    💬 2    📌 0
my avatar, a redhead wide-eyed cartoon girl posing with a catty face

my avatar, a redhead wide-eyed cartoon girl posing with a catty face

meowww

17.08.2025 22:09 — 👍 4    🔁 0    💬 0    📌 0

And sure, he's extremely charismatic, unphased and had a good PR team. But that's not enough. The policies is what bought this home.

And the democrats can easily follow the lead in the midterms and beyond. But will they? Why not?

15.08.2025 14:55 — 👍 0    🔁 0    💬 0    📌 0

Instead of shouting at leftists to vote for the lesser evil, yap at the liberal party.

Even if we focus on the US, look at what happened in the NY primaries. A progressive (soc-dem?) candidate that pretty much nobody knew before the campaign won by a landslide.

15.08.2025 14:55 — 👍 0    🔁 0    💬 1    📌 0

If the greater evil always makes things worse, and the lesser evil also makes things worse, but not as much, when do things get better?

When has the "lesser evil" gang ever made things better? Are you sure they're not just less in-your-face with what they do, better at maintaining appearances?

15.08.2025 14:55 — 👍 0    🔁 0    💬 1    📌 0

I'm really getting tired of this "you MUST vote for the lesser evil".

And this isn't only true for the US. It's true for pretty much any capitalist "democratic" country where liberals and conservatives are the primary two options that swap seats every few years.

15.08.2025 14:55 — 👍 0    🔁 0    💬 1    📌 0

Playing PC games with my daughter sure is a fun milestone to reach.

Been doing this for a few months now, and we've now graduated to minecraft, and it's really fun to build stuff/play with her.

13.08.2025 19:55 — 👍 3    🔁 0    💬 0    📌 0

meoowww :3

13.08.2025 12:44 — 👍 4    🔁 0    💬 0    📌 0

Should I be worried that I keep switching to running more and more software from the main/dev branch?

It just feels relatively safe to do so, since I can very easily revert my NixOS flake configuration back.

13.08.2025 12:14 — 👍 1    🔁 0    💬 0    📌 0

Honestly, I often think we should stop running most programs.

13.08.2025 11:05 — 👍 4    🔁 0    💬 0    📌 0

Absolutely, and a LLM won't catch that. But I might, when I write out the types and functions and, using experience, feel that something is off (or, if I'm lucky, the model I pick makes it painfully obvious).

03.08.2025 12:21 — 👍 0    🔁 0    💬 1    📌 0

You do you, but

bsky.app/profile/evie...

02.08.2025 22:33 — 👍 2    🔁 0    💬 0    📌 0

I want to write types and generic function signatures, and see the prover take its best shot.

Sandy Maguire's (isovector) tactics plugin was close, but it's now unfortunately defunct.

If anything, that would be the tool that would actually help me write code faster.

02.08.2025 22:33 — 👍 1    🔁 0    💬 0    📌 0

@eviefp is following 19 prominent accounts