Joe Gibbs Politz's Avatar

Joe Gibbs Politz

@joepolitz.bsky.social

https://jpolitz.github.io

723 Followers  |  218 Following  |  225 Posts  |  Joined: 27.09.2023  |  2.1929

Latest posts by joepolitz.bsky.social on Bluesky

I guess in contrast cannot be called into.

01.11.2025 22:37 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Natural next step after the vacuum tube

27.10.2025 13:50 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Just 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    πŸ“Œ 0

When 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    πŸ“Œ 0
code.pyret.org

Modern 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)

20.10.2025 19:49 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

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    πŸ“Œ 0

bsky.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    πŸ“Œ 1
High Standards, Multiple Tries

I'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)

19.09.2025 22:33 β€” πŸ‘ 6    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
WebAssembly: Yes, but for What? - ACM Queue

useful overview of what's going on in Wasm land, from Andy Wingo in ACM Queue

17.09.2025 22:12 β€” πŸ‘ 6    πŸ” 2    πŸ’¬ 1    πŸ“Œ 0

What 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    πŸ“Œ 0
Post image

I 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.

05.09.2025 03:54 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Steps to try and get bun compile to work Β· jpolitz/pyret-lang@a4ba677 Using: cp build/phaseA/pyret.jarr build/phaseA/pyret.jarr.js bun build build/phaseA/pyret.jarr.js --compile --outfile pyret And then the Makefile refers to the binary.

Copy/paste error in the link above fixed here

github.com/jpolitz/pyre...

05.09.2025 03:50 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

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.

05.09.2025 03:50 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

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    πŸ“Œ 0
Post image

At 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    πŸ“Œ 0

At 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.

04.09.2025 16:39 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

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.

04.09.2025 16:39 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

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    πŸ“Œ 0

Thanks. 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`.

03.09.2025 20:03 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

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.

03.09.2025 20:00 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

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

02.09.2025 17:26 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

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

02.09.2025 15:40 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
A Data-Centric Introduction to Computing This book is an introduction to computer science. It will teach you to program, and do so in ways that are of practical value and importance. However, it will also go beyond programming to computer sc...

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

28.08.2025 01:21 β€” πŸ‘ 49    πŸ” 10    πŸ’¬ 1    πŸ“Œ 1
Preview
Pyret The Pyret programming language

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

29.08.2025 15:28 β€” πŸ‘ 41    πŸ” 11    πŸ’¬ 2    πŸ“Œ 0
Preview
Pyret The Pyret programming language

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...

28.08.2025 21:47 β€” πŸ‘ 5    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0
Senzel Out Two Runners Same Base
YouTube video by Baseball Rules Academy Senzel Out Two Runners Same Base

www.youtube.com/watch?v=r9Vd...

26.08.2025 04:12 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

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

@joepolitz is following 20 prominent accounts