< a quantity that can be divided into another a whole number of time />

Micro posting in July

July 28, 2021

2021-07-02: It looks like Neovim 0.5 (stable) is finally out. #vim
2021-07-02: Hacker News folk wisdom on visual programming.
2021-07-02: check-if-email-exists: Check if an email address exists without sending any email, written in Rust.

For most of us, it’s not a switch to Apple, but a return. Hard as this was to believe in the mid 90s, the Mac was in its time the canonical hacker’s computer. — Return of the MacThings keep changing, right? At least for the last 12 years or so…


Scenes are shot out of temporal order, multiple times, and different bits are picked from this camera and that camera. Without examining the analogy too closely, this is similar to how different git commits might be viewed. Once you have everything in the “can” (repository) you go back and in post-production, you edit and splice everything together to form individual cuts and scenes, sometimes perhaps even doing some digital editing of the resulting product. — Commit Often, Perfect Later, Publish Once: Git Best Practices.

2021-07-05: Great mix for your favorite MP3 manager:
2021-07-05: How Does a Database Work?.
2021-07-05: Quick and dirty backpropagation in Haskell. #haskell
2021-07-06: Everything you need to know about Tmux copy paste on Ubuntu.
2021-07-08: Dynamic linking best practices. Lot of useful and interesting stuff in this article.
2021-07-08: Fractal hex flowers.

(…) the biggest stylistic change that’s happened in GHC recently, I think, is the move towards this “trees that grow” idea. Now, trees that grow, you can search for that keyword as a paper on my homepage about it, is a way to make sort of extensible data types using Haskell. This is really useful for Haskell’s abstract syntax tree. Haskell has a very large concrete syntax and so, correspondingly, has a large abstract syntax, that is the internal data type that describes Haskell programs after you’ve passed them has dozens of data types and hundreds of constructors and GHC then, during its renaming and type checking phase, decorates this tree with lots of additional stuff: types and scopes, and all sorts of extra stuff get gets added onto the tree. So, at first, we had a tree that was just GHC specific, but then we realized increasingly that other people would like to parse Haskell themselves for other purposes, so what we really wanted was a sort of base library that contained the core abstract syntax tree with its dozens of data types and hundreds of constructors and then some way for GHC to customize that tree, to add all its decorations and that’s the trees that grow idea and that lives off type families. We use both type families and data families quite extensively to power the trees that grow idea. It’s not what type families and data families were originally intended for, you can use them for all sorts of things, but it’s a major application within GHC, and it’s pushed a sort of stylistic change through the compiler. — Past and Present of Haskell: Interview with Simon Peyton Jones

2021-07-10: CMake Part 1 – The Dark Arts.
2021-07-10: Comprehensions in Julia. #julia
2021-07-10: Data Structure Visualizations.

What’s worse is the hardware and high-level language improvement are only improvements to accidental complexity – these things don’t actually help us with the inherent complexity of our jobs. Meaning we still fail at the hard parts. — Software Engineering: What Has Changed Since 1968?

2021-07-11: The Birth of UNIX — With Brian Kernighan.
2021-07-11: thunderchez: Libraries for Chez Scheme productivity (via Mark Damon Hughes). #scheme
2021-07-13: Vim tip of the day: for the visual block currently selected, g C-g will provide word counts among other things. And there’s more to see. #vim
2021-07-19: Looking Glass is an open source application that allows the use of a KVM (Kernel-based Virtual Machine) configured for VGA PCI Pass-through without an attached physical monitor, keyboard or mouse.
2021-07-19: diffsitter: A tree-sitter based AST difftool to get meaningful semantic diffs.
imgGrowing on the balcony…

No deadlines, no quarterly goals, no milestones. — The unreasonable effectiveness of just showing up everyday

2021-07-20: Risp (in (Rust) (Lisp)).
2021-07-22: TIL about SQL FETCH FIRST. #database

I don’t have to waste time troubleshooting a package that isn’t integrating with the system properly, or looks like it’s straight out of 1995 because no theming is applied for some unknown reason. — A Sombre Goodbye To LinuxI did go pretty much in the reverse direction, from Mac to Linux, last year, but obviously I have much less demanding graphic needs since I spend most of my time in a terminal with command line tools.

2021-07-23: Using different programming styles in Lisp. #lisp
2021-07-23: Why Haskell became my favorite scripting language. #haskell
2021-07-26: How I navigate tmux in 2021.
2021-07-26: R Cookbook, 2nd Edition. #rstats


See Also

» Micro posting in June » Three years micro-blogging » Micro posting in May » Micro posting in April » Micro posting in March