Introduction to Pragmatic Formal Modelingelliotswart.github.io1 points·by sn9·4 months ago·0 comments
sn9·9 hours ago·discussOCaml is such an obvious solution to their problem that I'm shocked it wasn't even mentioned. You get fast compile times without sacrificing type safety.
sn9·9 hours ago·discussYou can take advantage of spaced repetition just for scheduling the review of proofs and problems you've solved before.By review, I mean attempting to solve them like you're seeing the problem statement for the first time.
sn9·9 hours ago·discussYou were actually using spaced repetition implicitly whereas they were using flashcards to cram.The issue wasn't the flashcards but their own failure to use them effectively.
sn9·9 hours ago·discuss"Active recall" specifically (aka the testing effect [0]), as opposed to passive recall like rereading.[0] https://en.wikipedia.org/wiki/Testing_effect
sn9·2 days ago·discussThe thing about Scheme is that learning the syntax takes 10 minutes and then you can just focus on computation.
sn9·16 days ago·discussTo the extent that you use AI at all, it should be to accelerate your own understanding in ways that are independently verifiable/falsifiable.AI amplifies what you are.If you take shortcuts in your education, you will remain mediocre.If you dive deep in your understanding, building a broad and deep foundation, then you will be exponentially more powerful.
sn9·26 days ago·discussMost UIs in practice boil down to state machines which are extremely amenable to formal verification.Hillel Wayne's writing is a good starting place to learn more: https://www.hillelwayne.com/formally-specifying-uis/
sn9·last month·discussTypes replace entire classes of tests that coverage metrics wouldn't detect [0].Types are also documentation!They also decrease the degrees of freedom LLMs have to make mistakes [1].[0] https://kevinmahoney.co.uk/articles/tests-vs-types/[1] https://john.regehr.org/writing/zero_dof_programming.html
sn9·2 months ago·discussYou have to actually practice the skill of communicating while solving a problem.
sn9·2 months ago·discussHave you considered incorporating formal modelling?Like:[0] https://csci1710.github.io/2026/ and https://forge-fm.github.io/book/2026/[1] https://elliotswart.github.io/pragmaticformalmodeling/[2] https://quint.sh/
sn9·2 months ago·discussEveryone should Jimmy Koppel's post on what abstractions are and aren't: https://www.pathsensitive.com/2022/03/abstraction-not-what-y...Anyone claiming LLMs are an a higher level of abstraction are not using it in the way used by programmers and computer scientists.They're usually conflating "delegation" and "abstraction", as if a junior developer is an abstraction.
sn9·2 months ago·discussThe post explicitly makes the case for the filtering playing a role. Ctrl-F "Python".
sn9·2 months ago·discussTo disambiguate search results in the future, I've had great luck appending "lang" like so: "roadmap 2026 rust lang".
sn9·2 months ago·discussI don't have a dog and it would be very weird to get a dog for the sole purpose of having one for dating profile pics to meet women.
sn9·2 months ago·discussI don't have a dog and it would be very weird to get a dog for the sole purpose of having one for dating profile pics to meet women.