#lazyweb: Is there any way to make Firefox “open” a downloaded file using a custom command (in a GNU/Linux system)? For example, when I download a .zip file, I want to be able to click “Open with...” and then type in something like `unzip -d ~/some/where $FILE`, rather than either saving the file under a fresh name in /tmp and then repeating that name in the terminal, or keeping a specialised graphical unzipping program just for open-with. I notice that PCManFM-qt (the LXQt file manager) implements this.
_Functional Programming in Lean_ is now done and out the door!
It's a free online book that describes using the interactive theorem prover Lean 4 as a programming language, without assuming any background in functional programming. You don't need to already know Haskell, OCaml, Rust, Scala, or Racket to read this book.
You can read it at https://leanprover.github.io/functional_programming_in_lean/ .
Thank you to everyone who's carefully read prereleases - it's much, much better than it otherwise would have been. The Lean Zulip is a great place to hang out.
Also, thanks to MSR for supporting this project, and to Leonardo de Moura for initiating it. It's been a lot of fun!
meta, anti-feature
Did you know that if you post on a hashtag, people following that hashtag can see your posts *even if you'd blocked them*? Now you know!! #FediTips #GodDammit
US lawyer used ChatGPT and filed a brief citing a bunch of hallucinated court decisions: https://www.nytimes.com/2023/05/27/nyregion/avianca-airline-lawsuit-chatgpt.html
New little Agda feature I'm cooking on the side (actually a second attempt...) got done enough in a day that I feel comfortable sharing the prototype:
https://github.com/agda/agda/pull/6669
@dysfun It's a spectator sport. It's hard to learn Agda from finished programs. You need to learn the moves.
I've seen a lot of folks responding to my recent Medium post "Thought experiment in the National Library of Thailand" by trying to draw analogies between language models and disabled people (specifically blind, deaf or deafblind people).
Please don't do that. It's dehumanizing and inappropriate. To learn more:
Algebra/CT question: lists are to monoids as heterogeneous lists are to ??????
i.e. some kind of indexed monoid
A heterogeneous list is a list of elements over a list of types, and concatenating elements from (HList L1) and (HList L2) gives you something from (HList (L1 ++ L2))
Is there a generalized version of this that's analogous to a monoid? i.e. you have some underlying monoid (M, 0M, *M), and then something indexed over that (N, 0N, *N) where 0N is in N(0M), and *N : (m1 : M) -> (m2 : M) -> N(m1) -> N(m2) -> N(m1 *M m2)
Alright, question for me who is I'm still clueless at Mastodon.
There's been talk about how some main servers are blacklisted on types.pl. I'm not here to disagree.
The question is if I want to see content from those servers (the poor moderation ones, not the like fascist ones), what's the best way to do it without jumping ship on types?
1. Is there a way to unblacklist it for myself at types.pl?
2. If not, If I make another account on e.g. mathstodon or something, is there a way to continually "sync" it with my types one, so I can still post from types, but see content from math, and so my following list is always the same for the two?
3. Does any of this work with Tusky?
I suspect everyone involved already knows this, but any publication venue that asks reviewers for a thorough review in 10 days, or returns reviews in less than a month, or posts papers showing acceptance less then a week after submission, is a junk venue that does not meaningfully review papers, and cannot legitimately be described as peer reviewed.
This PSA brought to you by the latest review requests from such a journal, asking me for a 10-day turnaround on reviewing a paper that is basically a PR puff piece on a commercial AI system 🙄
From the GHC release announcement:
> The GHC developers are happy to announce the availability of GHC 9.6.2. This release is primarily a bug-fix release addressing a few issues
found in 9.6.2.
We have found a fixpoint! Finally the knot is tied! #haskell
Interesting discovery with Justus at the office today: constructors in Agda don't have types. E.g.
```
data Eq (A : Set) (y : A) : A -> Set where
Refl : Eq A y y
```
The type of Refl is *not* polymorphic, it just has metavariables in it:
```
Eq _A_8 _y_9 _y_9
```
You can use it polymorphically because of unification, but when you actually pattern match on something those variables are not bound at all
Newton International Fellow at the University of Edinburgh. Assistant Prof. at University of Regina starting July 2024. Formerly PhD at UBC with Ron Garcia
Broadly interested in making it easier to prove software correct with dependent types. Currently working on gradual dependent types.