Holy shit, Mes compiles tinycc now. We may be well on our way to full bootstrappability of the GNU system.
Mes is a mutually self-hosting Scheme interpreter in C and C compiler in Scheme. It can compile itself both ways. Tinycc is known to compile earlier versions of gcc (before gcc went C++) so we have a path, finally, to building the entire GNU system from the bottom up.
- Yesterday on Hacker News, I read an article that claimed to be an inside perspective on What Really Happened With Windows Vista. It's pretty interesting, but there was one idea that I hadn't previously encountered. A given software implementation balances functionality against the resources (time, storage, etc.) available, but both user expectations and hardware resources change over time. The article mentions two different responses to such changes:
- Hardware Supports Software: software is always complex and difficult, so if we can add complexity to the platform (OS, compiler, runtime) in a way that makes applications simpler, more reliable, more maintainable with the same level of functionality, we should. If that means spending extra hardware resources on computational overhead like runtime checks and managed code, that's a trade worth making. The article claims this was Microsoft's mindset at the beginning of Vista's development.
- Software Supports Hardware: people buy hardware to fulfil some particular function, but while some software is necessary to make it work, too much software just slows everything down. Therefore, software should be restricted to what's necessary to provide functionality, and extra hardware resources should mean everything just runs better. The article claims this was the mindset behind Apple's iOS.
Both viewpoints have merit, but they're clearly incompatible. Now that they've been pointed out, I suspect a lot of the technical discussions I've participated in over the years were at least partly based on "Hardware Supports Software" people looking at a project based on "Software Supports Hardware" ideals and boggling, or vice versa. For example, I reckon the systemd and GNOME teams are squarely in the Hardware Supports Software camp, while Software Support Hardware presumably hosts the suckless guys, and anybody who owns an Arduino.
joeyh likes this.
Cloud Computing, due to Conquest Mo Money and pointless Senior Investment has left us with a Classic Empire, and we're still Always Dreaming.
I don't follow horse racing on purpose, but I turned on the TV just during the Post Parade for the Preakness. There is a horse named "Cloud Computing" in the Preakness. http://www.preakness.com/race-info
Looking forward to this call from the announcer:
I'ts a Multipler leading a Conquest Mo Money. Everyone wants Cloud Computing. Senior Investment is just outside of Cloud Computing. No, it's Classic Empire over Cloud Computing. And the Conquest Mo Money is really messing up this race. Cloud Computing has fallen behind; we've discovered it's just Term of Art. No wait, Term of Art is just not enough to make it past Cloud Computing. And We're left with Always Dreaming. We've just gotta be Always Dreaming; Cloud Computing just can't do it.
Cloudflare is the swelling of the sore thumb that is current internet architecture.
Here I am sitting with my fancy Kinesis Advantage keyboard... but hey, it turns out the person who wrote the first Kirby game didn't even have a keyboard.. they programmed the initial demo with just a trackball.
Sakurai, who was 20 at the time, says he simply thought this keyboard-free programming environment was "the way it was done," and he coded an entire functional test product using just the trackball. He even says the process led to some improvements managing the game's "data processing load," creating "a game that had a very smooth movement for a Game Boy game."Show all 5 repliesI have said that it is simultaneously true that developers should be programming on the fattest hardware available with three huge screens, but also that they should be programming on a rinky-dink ten-year-old 12" laptop.
I think Sakurai's development environment was taking the lower side of that equation a bit too far ...
three huge screens?
would be nice but not really achievable atm.
same goes for anything requiring too much ram
especially given that I don't want to buy NEW hardware unless I can be sure there are no backstabbing blobs in it
seen too many suspicious "failures" to trust.
until that situation looks better, its second-hand/recycled as-cheap-as-possible because the less anything scammy gets the better!
- That's not a great picture, and it should probably be a video to properly appreciate my rotating, blinky light "hello, world", but I'll just go with what I've got. After way too much time, I finally had an opportunity to sit down and try to play with the Lattice Semi IceStick dev board. But instead of using the proprietary tools, I used Project IceStorm tools. It was an amazing feeling to sit down with just open source tools and go from Verilog source to a binary that is sent to the FPGA. This should be as commonplace as using GCC to compile a program for a CPU, but it still isn't. Anyway, it's a start, and I hope it leads to more things.
Open source FPGA toolchains!That's not a great picture, and it should probably be a video to properly appreciate my rotating, blinky light "hello, world", but I'll just go with what I've got. After way too much time, I finally had an opportunity to sit down and try to play with the Lattice Semi IceStick dev board. But instead of using the proprietary tools, I used Project IceStorm tools. It was an amazing feeling to sit down with just open source tools and go from Verilog source to a binary that is sent to the FPGA. This should be as commonplace as using GCC to compile a program for a CPU, but it still isn't. Anyway, it's a start, and I hope it leads to more things.
[X] I am not a robot (but maybe some day I will be so fortunate)
Put in a column near the equation, the meaning of each variable.
Then use differentcolors to highlight each variable (both in the explanation column, and in the equations).
Draw circles/strikes around/on part of equations that make sense by temselves, or represent a concept, or are transformed into other thing in the next step (in a similar way as teacher does in the blackboard while they explain things).
Maybe look for videos explaining the theorems etc (since they visually show all these techniques, I guess).
Some interesting emails from really old lisp mailing lists
The lispnews list is a bit hard to read, but unveils some key lisp ideas one after another in their earliest state; fascinating stuff. First reference to unwind-protect, and the details of backquote/quasiquote are being worked out here. (EDIT: more on backquote's history.)
Here's some interesting bits: David Moon (who worked on Common Lisp, helped develop Emacs, and was one of the original developers of the the lisp machine) mentioning Common Lisp and the CADR switching to it; rms (who was a maintainer of lisp software at the time) not being so pleased about it, or the way it was announced, and Guy L. Steele (who was editing the Common Lisp standard) replying. Later RMS seems to be investigating how to make it work together.
Sadly it seems that debate was discouraged on that list, and I don't see the BUG-LISPM list around anywhere.
You probably noticed that I was cherry-picking reading emails by RMS. It's no coincidence... I knew this was coming up, and here it is:
Here also is where Symbolics started to move out of the AI lab and where they announced that MIT may use their software, but may not distribute it outside the lab... which is, according to my understanding, one of the major factors frustrating rms and leading to the founding of GNU. A quote from that email:
This software is provided to MIT under the terms of the Lisp System License Agreement between Symbolics and MIT. MIT's license to use this software is non-transferable. This means that the world loads, microloads, sources, etc. provided by Symbolics may not be distributed outside of MIT without the written permission of Symbolics.
There it is, folks! And here's another user, Martin Connor, raising concerns about what the Symbolics agreement will mean. That person seems to be taking it well. But guess who isn't? Okay, you already guessed RMS, and were right. Presumably a lot of argument about this was happening on the BUG-LISPM list. I guess it's not important, but here is an amusing back and forth. I wonder if anyone has access to the BUG-LISPM or BUG-LISPM-MIT lists still?
Notably RMS wants to clarify that his work doesn't go to Lisp Machines Incorporated specifically, either, even though he was more okay with them.
I'm giving a talk at LibrePlanet 2017 on the Lisp Machine and GNU, which explains why I'm reading all this! Okay, well maybe I would have read it anyway.
- My etckeeper article is currently on top of the OpenSource.com front page :).
I'm also presenting on etckeeper Saturday at #SCaLE15x
We have a jobs BoF Friday night, #SCaLE15xjobs
warning: spoiler of Vinge Zone of Thought novels
Also suddenly realizing that I had a conversation with @Bradley M. Kuhn about the Skrode riders in A Fire Upon the Deep as effectively being victims of a Thompson hack. Now realizing that this would be one way to pull that off, assuming the Skrode Riders have DNA!
joeyh likes this.
Cloudflare, sha1, C as the continued foundation of our modern operating sytems... don't worry... it's fine.