Remember the "One Laptop Per Child" project, that developed a low-cost computer for children in developing countries?
-
@korenchkin Oh cool, that would speed things up a bit for sure!

@blinry @korenchkin some other unsolicited advise: if the directory already exists and you decide not to delete it, change to it.
-
@agowa338 @blinry I used to have the dream of a runtime that worked like a dynamic language interpreter, but rather than being specific to one language each call could invoke a different interpreter for whichever language was needed for the method being called. My original goal was to not have to recreate every library in every language, but the more I thought about it the more other potential benefits I saw. Even wrote my undergraduate thesis about how it might be done
Sounds like you'd want to write a JIT compiler for C tbh...
-
Remember the "One Laptop Per Child" project, that developed a low-cost computer for children in developing countries? I was always amazed by a certain feature: The "View Source" button.
When you pressed it, the source code for the currently running application would open. This was supposed to encourage tinkering with the software on your device!

I've been pondering what it would take to build that button on modern machines. Has anyone seen something like that?
(Prototype in next toot.)
@blinry oh oh oh talk to @EndlessAccess folks about this! They hold a defensive patent (which is usable by open source projects) for “Flip to Hack” which was this idea taken to the extreme as far as coolness goes.
I imagine @wjt, @ramcq, and maybe @chergert (because I think it used GNOME Builder?) could share some pointers to the history.
-
@ShadSterling @agowa338 @blinry
Yes, J++ was. The C# (2004?) was very much a repackage of J++, but I tried both and stuck with VB6. I had used C++ from 1987.
Later I did some cross platform Java designed to maintain look & feel of what ever theme of XP or Vista used, whichever desktop + theme on Linux and for Mac, though I didn't personally test the Mac. Baffles me how badly Mozilla does; should know better. The Java app talked to a device driver for a PCMCIA based 4G card (not LTE or Wimax).@raymaccarthy @agowa338 @blinry yeah, J++ was an attempt to EEE Java, especially for “applets” in IE, that got shut down by the court ruling. dotNET and C# were the subsequent attempt to build a better mousetrap, which largely succeeded in terms of capabilities, but failed to replace Java in adoption because it was closed-source and windows-only
-
@blinry oh oh oh talk to @EndlessAccess folks about this! They hold a defensive patent (which is usable by open source projects) for “Flip to Hack” which was this idea taken to the extreme as far as coolness goes.
I imagine @wjt, @ramcq, and maybe @chergert (because I think it used GNOME Builder?) could share some pointers to the history.
@blinry @EndlessAccess @wjt @ramcq @chergert here is a video of the effect I found: https://xcancel.com/jonobacon/status/817059475437879305
-
@luc0x61 My prototype later in the thread has been somewhat useful to me already!
But I agree that this can get really hairy, depending on the application.
@blinry I just share my dark vision of software development's future
️ -
@ShadSterling @raymaccarthy @blinry
Well not just that. The community also for long asked for it and the development team also eyed with breaking out of the corporate Microsoft release cycle if I recall correctly.
@agowa338 @raymaccarthy @blinry yeah, largely, not exclusively
-
@raymaccarthy @ShadSterling @blinry
Because Silverlight was shit, even when compared with Flash and Java browser plugins. But all three got replaced by HTML5 (and when apple denied them on iOS)
@agowa338 @raymaccarthy @blinry “Moonlight” was the Mono-based substitute for Silverlight; I know I installed it but I don’t remember what if anything it worked for. IIRC Silverlight was an attempt to compete with Flash and … whatever Macromedia’s other flash-like thing was … but all it really did was make an even smaller niche for IE-only sites
-
@blinry @EndlessAccess @wjt @ramcq @chergert here is a video of the effect I found: https://xcancel.com/jonobacon/status/817059475437879305
@blinry @EndlessAccess @wjt @ramcq @chergert I remember seeing this in @ptomato’s talk at GUADEC in 2018 (6:45) https://youtu.be/NF-hZ1aMIl0?t=405
-
@agowa338 @raymaccarthy @blinry “Moonlight” was the Mono-based substitute for Silverlight; I know I installed it but I don’t remember what if anything it worked for. IIRC Silverlight was an attempt to compete with Flash and … whatever Macromedia’s other flash-like thing was … but all it really did was make an even smaller niche for IE-only sites
@ShadSterling @raymaccarthy @blinry
Netflix probably. I think they used Silverlight as DRM in the early days or something.
-
Remember the "One Laptop Per Child" project, that developed a low-cost computer for children in developing countries? I was always amazed by a certain feature: The "View Source" button.
When you pressed it, the source code for the currently running application would open. This was supposed to encourage tinkering with the software on your device!

I've been pondering what it would take to build that button on modern machines. Has anyone seen something like that?
(Prototype in next toot.)
@blinry on Gentoo it keeps the sources of all installed apps in $DISTDIR I think. The package manager should also be able to find which package a binary would correspond to. So, this should be scriptable to a certain degree..
-
Sounds like you'd want to write a JIT compiler for C tbh...
@agowa338 @blinry what a nightmare that would be! Which AOT compiler would you target compatibility with? How would you handle ISA extensions? Allow specifying compiler options? Well, I might want a C interpreter+JIT for new code targeting that system, but for existing code with an established build process, I’d use the existing distributed machine code, so the language module used is minimal (until it gets run on future hardware with an incompatible ISA)
-
@ShadSterling @raymaccarthy @blinry
Netflix probably. I think they used Silverlight as DRM in the early days or something.
@agowa338 @raymaccarthy @blinry yeah, that sounds right. That was definitely something I had problems with
-
@agowa338 @blinry what a nightmare that would be! Which AOT compiler would you target compatibility with? How would you handle ISA extensions? Allow specifying compiler options? Well, I might want a C interpreter+JIT for new code targeting that system, but for existing code with an established build process, I’d use the existing distributed machine code, so the language module used is minimal (until it gets run on future hardware with an incompatible ISA)
Well it was your idea. I didn't even say it was possible to pull off. Your idea just sounded like JIT compiled C to me...
Also anyone know what magic https://godbolt.org/ is using under the hood? I'd hope they're not actually running each of these compilers on their system each time you put something in there and somehow do it interpreted? Right?
Then something like that may be able to help.
-
Remember the "One Laptop Per Child" project, that developed a low-cost computer for children in developing countries? I was always amazed by a certain feature: The "View Source" button.
When you pressed it, the source code for the currently running application would open. This was supposed to encourage tinkering with the software on your device!

I've been pondering what it would take to build that button on modern machines. Has anyone seen something like that?
(Prototype in next toot.)
It originally ran Sqeak. Sqeak is a modern Smalltalk (though Pharo is positioning itself as a replacement). It was also inspired by the DynaBook, which was another of Alan Kay's projects.
Smalltalk environments all let you inspect both the source code and the state of running objects.
For Étoilé, we built a persistent object model with some common interfaces and the UI framework exposed the same introspection APIs, so you could attach an inspector to any object and see it in a generic way, but then attach an inspector to the UI for the model object, and then to that in turn and have inspectors all the way down (or up, or something).
-
Remember the "One Laptop Per Child" project, that developed a low-cost computer for children in developing countries? I was always amazed by a certain feature: The "View Source" button.
When you pressed it, the source code for the currently running application would open. This was supposed to encourage tinkering with the software on your device!

I've been pondering what it would take to build that button on modern machines. Has anyone seen something like that?
(Prototype in next toot.)
@blinry story time! I was volunteering in Ecuador doing a summer enrichment program in English and math skills for rural students. One summer we rolled up and discovered the school had a whole shelf of these OLPCs. Decided on the spot to include a computer class. Completely made it up as we went along, it was tons of fun. Some of the students had never touched a computer before.
-
@blinry story time! I was volunteering in Ecuador doing a summer enrichment program in English and math skills for rural students. One summer we rolled up and discovered the school had a whole shelf of these OLPCs. Decided on the spot to include a computer class. Completely made it up as we went along, it was tons of fun. Some of the students had never touched a computer before.
@blinry The computers were pretty buggy. They hid the file system and instead stored stuff in a chronological "journal". But a few times the whole journal disappeared leaving students a bit distraught. I had a literal Jurassic Park "wait, it's a Linux system?" moment when I found out there was a terminal and I could go search for the missing files.
-
@blinry The computers were pretty buggy. They hid the file system and instead stored stuff in a chronological "journal". But a few times the whole journal disappeared leaving students a bit distraught. I had a literal Jurassic Park "wait, it's a Linux system?" moment when I found out there was a terminal and I could go search for the missing files.
@blinry but back to the view source button! There was a kid with untreated vision issues, we thought he wasn't paying attention but he couldn't see the board etc etc. In a couple of the apps we use I was able to click that button, go in and increase the font size, and suddenly he could use the computer. He was so grateful for that.
-
@blinry but back to the view source button! There was a kid with untreated vision issues, we thought he wasn't paying attention but he couldn't see the board etc etc. In a couple of the apps we use I was able to click that button, go in and increase the font size, and suddenly he could use the computer. He was so grateful for that.
@aburka Lovely story, thanks for sharing!

-
Well it was your idea. I didn't even say it was possible to pull off. Your idea just sounded like JIT compiled C to me...
Also anyone know what magic https://godbolt.org/ is using under the hood? I'd hope they're not actually running each of these compilers on their system each time you put something in there and somehow do it interpreted? Right?
Then something like that may be able to help.
@agowa338 @blinry I can see how it could sound that way; the mental model I landed on aims to run existing AOT-compiled software unchanged, to maximize compatibility.
godbolt.org gives you a compiler picker and an options field, so each time you put something it actually runs just the compiler you pick - https://xania.org/202506/how-compiler-explorer-works