TIL there's a fizzbuzz equivalent for computer science: "the rainfall problem". It's a fairly simple programming exercise with pretty thorough research about how tricky students find it: https://blog.acthompson.net/2018/01/how-hard-is-that-programming-problem.html (quite hard!)
miniblog.
Implementing an RPN macro in Rust: https://blog.cloudflare.com/writing-complex-macros-in-rust-reverse-polish-notation/ (includes a really useful section on robust macros that produce good error messages)
Persistent data types and how Rust's ownership model subsumes a surprising number of their use cases:
Squid is a remarkable quasiquotation library that ensures all of your code transformations are sound! It checks for types and free variables, and has a really neat way of pattern-matching on code with alpha conversion.
Dynamicland is exploring a "humane dynamic medium", an interesting model of computation using more tactile elements in a group context:
I'm happy with pretty much any coding formatting style as long as there's an automated tool to apply it.
I do wonder whether there's a limit though -- are there styles that are completely awful even if you have a tool?
I suppose bug reports on formatting tools suggests so.
Amazing Clojure REPL demo, with integrated docs, search, multiline editing and inline evaluation. Pythonistas are spoilt with ipython, but this compares very favourably! https://twitter.com/bhauman/status/959170037025329153
I stumbled across a copy of 'Computers For Seniors For Dummies' today. 'Using Windows Help' comes several chapters before introducing web browsers!
Even new projects include a significant amount of shell code! A good reminder that our base abstractions matter.
Macro-expanded lisp works surprisingly well as an intermediate representation for some tasks.
Today, I was able to enumerate all the bound variables pretty straightforwardly, because elisp only has four ways of introducing bindings!
(let, let*, lambda and condition-case)
Going beyond QuickCheck: using an SMT solver (based on Rosette) to intelligently generate test inputs that are diverse and hit interesting code paths!
https://youtu.be/Br16rvT_C00
GHC can now offer type-aware suggestions for holes in code, even suggesting functions that you could use if you just passed an additional argument! https://twitter.com/tritlo/status/958783134627135489
Impressive (if somewhat intimidating) blog post showing how to reason from assembly back to the equivalent C code: https://kakaroto.homelinux.net/2017/11/introduction-to-reverse-engineering-and-assembly/
Measuring programming language popularity based on the number of unique users on GitHub: https://www.benfrederickson.com/ranking-programming-languages-by-github-users/
Whilst this gives the dataset a FOSS bias, it's much cleaner data than e.g. a keyword search of job postings which some other metrics use.
Graydon (creator of Rust and Monotone) has this excellent post discussing the importance of running tests on the code after merge, so the build stays green: https://graydon2.dreamwidth.org/1597.html
What you may not realise is that he advocates for an even stronger CI guarantee in the comments!
Showing 3,001-3,015 of 7,584 posts




