I guess in contrast cannot be called into.
01.11.2025 22:37 β π 2 π 0 π¬ 0 π 0@joepolitz.bsky.social
https://jpolitz.github.io
I guess in contrast cannot be called into.
01.11.2025 22:37 β π 2 π 0 π¬ 0 π 0Natural next step after the vacuum tube
27.10.2025 13:50 β π 2 π 0 π¬ 0 π 0Just told my course staff that variable-length arrays have been part of C since βthe late 1900sβ.
27.10.2025 03:13 β π 14 π 1 π¬ 1 π 0When you open the game in an emulator so it's in its own window but the emulator miscalculates the size because it thinks it's fullscreen, that's Doom scrolling.
21.10.2025 18:48 β π 3 π 0 π¬ 0 π 0Modern developement:
βAnyway, computers appear to be running somewhere in the country and serving the Pyret compiler and the UI.β
(After my investigation into impacts of todayβs outage on code.pyret.org)
Are there any benchmarks (etc) which show the costs of the SysV x64 ABI relative to a somewhat-or-perfectly-optimal ABI for that program? [Not for single microbenchmarks, because I can definitely create horrible overheads there, but on larger programs / benchmarks.]
20.10.2025 15:22 β π 4 π 2 π¬ 0 π 0bsky.app/profile/elfp...
16.10.2025 04:49 β π 2 π 0 π¬ 0 π 0[Werner Herzog voice]: The computerβ¦ it is a cruel, unfeeling god. Left too long in its ceaseless hum, it festers with demons. The human, fragile and insignificant, clings to the ritual of restartingβ¦ as if this act could stave off the abyss of digital chaos. But the darkness always returns.
01.10.2025 12:13 β π 223 π 53 π¬ 4 π 1I've now given my talk βHigh Standards, Multiple Tries βΒ How I've Been GradingβΒ a few times. I wrote it up as a blog post:
jpolitz.github.io/notes/2024/0...
3 principles:
1. Standards-based grading with high-fidelity assessments
2. Retries for everything
3. Coarse rubrics (0-4 not 0-100)
useful overview of what's going on in Wasm land, from Andy Wingo in ACM Queue
17.09.2025 22:12 β π 6 π 2 π¬ 1 π 0What prints if you press the red printer button
10.09.2025 22:13 β π 5 π 0 π¬ 1 π 0(This says to me even *if* we get all the dynamic requires sorted there will still be issues with these kinds of libraries)
05.09.2025 03:55 β π 1 π 0 π¬ 1 π 0I think it's possible to get there, someone is going to have to mind-meld with the runtime and bun to do it.
I have another experiment going to see if I can get github.com/Automattic/n... to be bundled into the binary (which is how the image library works).
Currently that's ending somewhat sadly.
Copy/paste error in the link above fixed here
github.com/jpolitz/pyre...
Ah nice thanks.
I should have said I got nerd-sniped into going through this exercise this morning (github.com/jpolitz/pyre...), even up to saving an image to disk.
Then I moved the binary and it stopped working. We have dynamic requires and they still poke around in node_modules.
And just to confirm, a simple js program that just logs does produce a binary with sensible behavior using the same command, so I don't think I'm goofing on the basic thing to try :-)
04.09.2025 16:57 β π 0 π 0 π¬ 1 π 0(The last command prints nothing)
04.09.2025 16:53 β π 0 π 0 π¬ 1 π 0At least on my system, the doing the most straightforward thing has no error messages but creates a binary that doesn't produce any output at the terminal (running the compiler blob with `node` and no arguments should print the usage).
04.09.2025 16:53 β π 0 π 0 π¬ 1 π 0At a glance that page says βAll built-in Bun and Node.js APIs are supported.β which is actually more than Node's support at the time I tried (only supported a subset), but Pyret has a fair amount of surface area these days.
Would love more expertise and input here.
This would be great. I went down the rabbit hole of node's support for this for a few days. It's a so close/so far thing.
For example, we use node-canvas and other similar packages to get the image library to work headless, and they rely on a pile of C code, which complicates things.
For users who are savvy devs, it's probably better to just npm install pyret-npm as a dependency of the project, and then all the node_modules are local to the working directory and run with `npx pyret ...`
03.09.2025 20:03 β π 1 π 0 π¬ 1 π 0Thanks. This is probably fixable by using `require.resolve()` appropriately, and is needed for different --install-strategy settings to work.
We need something like the symlink if we want pyret to work as a global command because we want to generate standalone JS blobs runnable with plain `node`.
Huh. OK yeah so the issue is:
- we symlink node_modules in .pyret to pyret-npm/node_modules with `const nodeModulesPath = path.join(__dirname, "node_modules");`
- but on `yarn global add` it flattens out the dependencies of `pyret-npm` into the node_modules above this
This is fixable I think.
Useful, I'll see if it's a npm vs yarn thing with how modules are getting resolved.
One more piece of information if you can share βΒ from the directory where you got the error about not finding `resolve` when running the pyret command:
ls -la
ls -la .pyret
Oh my, thanks for showing us this. I can't reproduce this (I do know of some install issues related to node versions, but they don't look like this).
If you're up for sharing more, it would help me to see the output of
pyret --version
node --version
and any warnings you got from the install step
Super excited to release the latest version of "A Data-Centric Introduction to Computing" (DCIC). See release notes for 2025-08-27 for what's changed and new (a LOT!): dcic-world.org/2025-08-27/R....
dcic-world.org
1/ Super-excited to release the first complete rewrite to the Pyret home page in 10 years, corresponding to major language improvements! So many cool new things, let me give you a brief tour: β΅
pyret.org
New Pyret stuff!
A cool new homepage showcasing the new embeddable editor, and a VScode extension that embeds the full-featured editor from code.pyret.org, among other goodies.
Check it out!
pyret.org
pyret.org/release-note...
Make sure it's truly from the region otherwise it's just sparkling self-directed drinking.
19.08.2025 16:49 β π 2 π 0 π¬ 0 π 0