"To solve that emacs needs to be divorced from unexec, something that needs to get done as the marriage is unhealthy, but it’s going to take a lot to make that a reality right now."
unexec perspectives from the Remacs gitter room
miniblog.
Great overview of how Haskell has evolved in 2017: https://www.stephendiehl.com/posts/haskell_2018.html
Includes some interesting comments about the future, e.g. the community gravitates towards pluggable extensions rather than evolving the base language.
git-worktree allows you to have multiple branches checked out simultaneously! https://git-scm.com/docs/git-worktree
Conceptual simplicity does not always mean shorter code. I strongly prefer (add1 x) to (+ x 1), despite the latter being fewer keystrokes.
Building a syntax highlighter in Pharo Smalltalk! https://medium.com/@juliendelplanque/hacking-a-simple-syntactic-highlighter-around-specs-textmodel-44ba2e2b1ab9
I'm surprised no-one's built a text editor in Smalltalk yet: it seems like a great platform for an Emacs-style blob of functionality.
The npm ecosystem is massive, but it's the only PL packaging tool I'm aware of that has a for-profit company backing it. As a result, it has several full-time devs.
Perhaps other PLs would benefit from a similar setup?
Whilst Java's ArrayList overallocates by 50%: https://stackoverflow.com/a/14129344/509706 I'm surprised to learn that Python only overallocates lists by ~12.5%: https://github.com/python/cpython/blob/3.6/Objects/listobject.c#L49
I was not expecting such a range of values!
Env = Map<String, String>
Args = [String]
UnixCommand = (Env, Args, ByteStream) -> (Integer, ByteStream, ByteStream)
Unix command compose pretty darn well, but it's a really weird API. Many of these inputs and outputs are less visible to newcomers too.
The Structure and Interpretation of the Computer Science Curriculum:
https://cs.brown.edu/~sk/Publications/Papers/Published/fffk-htdp-vs-sicp-journal/paper.pdf
Discusses how to fit functional programming into a curriculum, the importance of tooling, and a fascinating discussion of SICP's strenghts and weaknesses as a first text book.
RISC-V state of the union: Linux, binutils, GCC, LLVM, CompCert and OCaml support! Government funded projects in India, Israel and USA!
https://www.lowrisc.org/blog/2017/11/seventh-risc-v-workshop-day-one/
It's impressive how much momentum the project is developing.
CLIs are reified UIs: https://www.expressionsofchange.org/reification-of-interaction/
Interesting exploration of what properties a text interface provides, and what it means for computer interaction.
Easier to read than write! I can't comment on Wolfram (I haven't used it), but this is a great goal to strive towards when coding.
I've definitely experienced programs and languages where it's easier to write than read though.
Really excited to see Remacs exploring bindgen as an option! https://github.com/Wilfred/remacs/pull/486/
The C parts of Emacs use a ton of C features, so it's shaking out several bugs in bindgen itself.
A big milestone for Remacs: we now have CI running on Windows too! https://github.com/Wilfred/remacs/pull/445
I can't take any credit for this: Jean Dudey has done an incredible job.
How Elm slays a UI antipattern: https://blog.jenkster.com/2016/06/how-elm-slays-a-ui-antipattern.html
Argues for GADTs in web dev, and points out a common issue with async UIs that I can't unsee now.
It's amazing how important kinaesthetic learning is in programming.
There have been many concepts that I haven't fully grokked until I've actually coded it up myself. It forces you to consider all the details.
It's easy to observe software getting slower over time. It's nice to periodically reflect on software features that have become faster: sound codecs, JS execution, CSS engines.
Python is the only language I've seen where the stdlib docs contain smilies: https://docs.python.org/3.6/library/heapq.html#theory
It makes the docs more approachable, but also shows the diversity of writing styles used!
Shower thought: suppose you have two groups of devs, one more experienced in a PL than the other.
Ask everyone to solve a programming problem. I suspect the more experienced group would have more similar solutions. What things would they do similarly, and how would they differ?
Showing 61-80 of 885 posts