This is easily googled, no? It is not a twitter fight.
HN user
OliverM
Formerly founder, getbulb.com; Enthusiast of the obscure
I'm not suggesting otherwise. I'm saying that your "toy example" comment is very dismissive of something that was an extraordinary accomplishment of its day. They invented spreadsheets without it. Dependency graphs are excellent and widely useful things we should all be happy to adapt and reach for, far beyond spreadsheets. We should be grateful that they're available to all of us to build into software products so readily. I've used them repeatedly and I'm sure I will many times in the future.
What I'm trying to communicate is this: this product _invented_ spreadsheets, but you dismiss the implementation with a sneer.
The clause "it's absolutely necessary for all but the simplest toy examples" is what I was disagreeing with. But I wouldn't be surprised to hear that visicalc adopted one as soon as it was technically feasible in later versions.
Isn’t the existence & success of visicalc a direct counter to this?
The author is an accomplished software engineer.
It has both of those. I use them from Emacs comfortably.
Not this Irishman…
No, not in this case. The article already assumes the existence of a near perfectly-efficient process. It's just looking at the minimum energy needed to remove the carbon dioxide from the atmosphere, according to long-established physical laws, no matter what mechanism is used.
We could definitely work harder at supporting the existing natural mechanisms for removing CO2 from the atmosphere, but it's far, far easier to reduce the amount we're emitting.
This is impressive, but they just sound so _alien_, especially to this non-U.S. English speaker (to the point of being actively irritating to listen to). I guess picking up on social cues communicating this (rather than express instruction or feedback) is still some time away.
It's still astonishing to consider what this demonstrates!
I don't object to it at all, I think it's a great idea. We need more models of supporting open-source, including financial ones. BTW I also don't see commercial and open-source as intrinsically opposed to each other - projects can be both, and I wish more were.
I thought Ardour was a commercial product? If you want to download a binary from their site it's either a demo version with injected silence every 10 minutes, or a paid-for option (either a small monthly sub or a larger one-off payment). You can build it locally yourself for free of course, but I don't know if many non-devs would do that.
Also see the ICCL's statement on the same amendment (it's a lot more direct about the issue and the implications): https://www.iccl.ie/news/last-minute-government-amendment-se...
The ICCL is the Irish Council for Civil Liberties. They're fully independent of the government and are funded by memberships. If you're an Irish citizen they're well worth supporting (only €40 per annum). I'm a member.
I like the sentiment but this could have been a tweet. If it was it wouldn't be preaching to the choir.
I am being glib above but in the spirit of useful feedback, the article needs editing for length. It's not that it's badly written, I just found that it took too circuitous a route to make its point.
This is genuinely thrilling. I know it’s likely to be a C++ codebase, which I don’t have a huge amount of experience in (yet). But having open source access to a music machine of the Deluge’s calibre is phenomenal.
I've not used Htmx, but a cursory browse of their docs gives https://htmx.org/extensions/multi-swap/ which seems to solve exactly this problem. And thinking about it, what makes it as difficult as you say? If you've a js-library on the client you control you can definitely send payloads that library could interpret to replace multiple locations as needed. And if the client doesn't have js turned on the fallback to full-page responses solves the problem by default.
Of course, I've not used Turbolinks, so I don't know what issues applied there.
Edit: I'm not saying htmx is the future either. I'd love to see how they handle offline-first (if at all) or intermittent network connectivity. Currently most SPAs are bad at that too...
What are you hoping to gain from learning Clojure?
Have you seen how it’s management of state is different to Python’s in how it allows much closer control of data sharing? That opens up really nice concurrency models, and makes thinking about how data changes over time much more predictable (and powerful).
Does your editor let you manipulate the code as a lisp? The tree-based nature of the code allows for incredible automatic re-organisation of it, on the fly as you need to reshape it.
Have you used transducers yet? They let you specify the essence of a computation and apply it in different contexts - to a series of in-memory values, or values arriving over a network pipe, or any other source, without having to know in advance what that source is
But if these don’t appeal to you or you don’t see the benefits of them then maybe it isn’t for you - which is totally fine. Python can let you express this stuff too, albeit in clunkier ways at times and with a less pleasant refactoring experience. The python repl is also less powerful and not advocated for as a development tool in the same way Clojure’s is.
It really depends on your end-goal. If you’ve not been frustrated by the idioms Python gives you changing languages might feel a little pointless. I’ve used both and I’m far more productive in Clojure. It really rewards study and practice, and grows with you. Python is fine, but it’s a means to an end for me - get in, just get it done, try to remember the irregular syntax, weird build specification, get over white-space layout, use print debugging to get over the repl… it’s not my favourite but it’s perfectly usable.
The quick run speed is great for shortening the feedback loop. I've had great experiences with Lisp-style environments for that reason, and the language is much higher level than Rust while still offering good performance. I've mainly used Quil, the Clojure wrapper around processing: https://github.com/quil/quil
Sounds like any functional language would have disappointed in that case?
"Go back to"??
Knowledge of the entire machine's activity. When I was a young teenager the home machine of choice was the Commodore 64 and its competitors. When you turned it on you usually had an interactive programming language REPL start up, probably some variant of Basic, and that was it. Off you went:
No OS to worry about (the machine probably had a very basic BIOS to handle peripherals but that was it)
No permissions model
A tiny API to interact with whatever graphics/sounds facilities were available
No need to worry about what resources simultaneously-running programs could be using (there weren't any)
Actually no need to worry about concurrency at all (you just couldn't do it)
No need to worry about what language to use (either the one blinking at you when you turned on the machine, or assembly language for the processor)
No need to worry about how to restructure computations to use a computation shader or SIMD
_You_ were the owner of every resource in the machine and it all danced to your tune. And, best of all, you could come to a complete understanding of how every part of those machines worked, in just a few weeks of practice. Who today knows the intricacies of their laptops to the same extent?I think the PS5 shows that they're doing a huge amount of things right. But they don't seem to have the same kind of _vision_ apple does (even if you dislike that vision). They still seem to value hardware over software while I think Apple sees them as inseparable parts of a whole.
C++ was one of the first languages I learnt as an undergrad, maybe 20 years ago. I used it for a few hobby projects but not much else (professionally these days I mainly use Typescript & Go). I'd love to pick up C++ again but I've found it really challenging to discover what I should read up on to know what modern C++ should look like. What's a great resource for someone who's been out of C++ for a couple of decades to pick up and learn today's idiomatic C++? I don't want Rust btw - it's a great language but I want to revitalise my C++ knowledge, not jump ship entirely.
Thank you, your blog post was a pleasure to read. CoPilot looks great!
Are there proofs for other languages/runtimes available? I'd love to see the level of rigour needed to demonstrate that
Hmm it does seem like Emacs is growing support for the Debug Adapter Protocol (DAP), the LSP-alike convention that allows language developers to build language-specific debuggers that tie into the VSCode UI: https://github.com/emacs-lsp/dap-mode
Are there no good UI experiences you can bolt onto gdb? Do Emacs/Vim not have nice modes that take some of the pain away?
I've no real experience with using gdb - my main debugger usage has been on the JVM or using old Borland debuggers on Win32. Are there no good open source user-friendly debuggers out there?
I tend to develop software interactively with a REPL where I can so if a good debugger can give you something akin to that experience I'd be very tempted to jump ship from emacs to VSCode to try it for languages like C/C++.
They have those. They're iPhones. I'm using an iPhone 8+. My wife is using my old iPhone 5s. I changed the battery on the 5s but that's it.
Quinoa?
Isn't dust from tyre wear a major point of concern? E.g. https://www.theguardian.com/environment/2022/jul/25/tyre-dus...
Why is reading a scathing review such a satisfying experience? The reviewer’s esteem for Pym animates this entire piece, but having encountered precisely zero Pym novels to date, I can’t say with any certainty who’s actually in the right here - the reviewer, or the author of the book under review - but the reviewer’s facility with language and erudition are so, so convincing. If nothing else I plan to read a Pym novel soon. Does anyone know a good starting point?