Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.theory > #143063 > unrolled thread
| Started by | Ross Finlayson <ross.a.finlayson@gmail.com> |
|---|---|
| First post | 2026-07-27 11:43 -0700 |
| Last post | 2026-08-03 20:40 +0200 |
| Articles | 20 on this page of 135 — 7 participants |
Back to article view | Back to comp.theory
Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-27 11:43 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-28 02:47 +0800
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-27 15:07 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Mild Shock <janburse@fastmail.fm> - 2026-07-28 00:25 +0200
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-27 16:09 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-27 16:33 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-27 15:48 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-29 07:44 -0700
You are still chewing on SIMD. LoL (Was: Viswath & Charmaigne) Mild Shock <janburse@fastmail.fm> - 2026-07-29 17:11 +0200
Re: You are still chewing on SIMD. LoL (Was: Viswath & Charmaigne) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-29 08:25 -0700
Re: You are still chewing on SIMD. LoL (Was: Viswath & Charmaigne) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-29 23:49 +0800
Re: You are still chewing on SIMD. LoL (Was: Viswath & Charmaigne) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-29 08:59 -0700
I don't care about Java, pi-WAM is pi-calculus and WAM (Re: You are still chewing on SIMD. LoL) Mild Shock <janburse@fastmail.fm> - 2026-07-29 18:05 +0200
Underneath pi-WAM is Hack VM, you can goto (Was: I don't care about Java, pi-WAM is pi-calculus and WAM) Mild Shock <janburse@fastmail.fm> - 2026-07-29 18:09 +0200
New addition to π-WAM is π-WAM Assembly (Was: Underneath pi-WAM is Hack VM, you can goto) Mild Shock <janburse@fastmail.fm> - 2026-08-09 19:45 +0200
Re: I don't care about Java, pi-WAM is pi-calculus and WAM (Re: You are still chewing on SIMD. LoL) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-29 09:11 -0700
A yellow mustard called Rossy Body (Was: I don't care about Java, pi-WAM is pi-calculus and WAM) Mild Shock <janburse@fastmail.fm> - 2026-07-29 18:30 +0200
Ignoramus or Ignorabimus: I don't care (π-WAM) (Was: A yellow mustard called Rossy Body) Mild Shock <janburse@fastmail.fm> - 2026-07-29 18:31 +0200
Hurry Rossy Boy, the blue bus is waiting (Was: You are still chewing on SIMD. LoL) Mild Shock <janburse@fastmail.fm> - 2026-07-29 17:32 +0200
Re: Hurry Rossy Boy, the blue bus is waiting (Was: You are still chewing on SIMD. LoL) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-29 08:36 -0700
Look how they advertized CUDA and logical threads (Was: Hurry Rossy Boy, the blue bus is waiting) Mild Shock <janburse@fastmail.fm> - 2026-07-29 17:43 +0200
Forget any arithmetization of product FSA (Was: Look how they advertized CUDA and logical threads) Mild Shock <janburse@fastmail.fm> - 2026-07-29 17:47 +0200
comp.lang.lisp (was: Re: Forget any arithmetization of product FSA) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-29 23:53 +0800
Re: Look how they advertized CUDA and logical threads (Was: Hurry Rossy Boy, the blue bus is waiting) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-29 08:53 -0700
There are two versions of Hack VM (Was: You are still chewing on SIMD. LoL) Mild Shock <janburse@fastmail.fm> - 2026-07-29 18:14 +0200
Hack VM has also a Prolog spec (Was: There are two versions of Hack VM) Mild Shock <janburse@fastmail.fm> - 2026-07-29 18:17 +0200
A better compiler is planned / What do you target? (Was: Hack VM has also a Prolog spec) Mild Shock <janburse@fastmail.fm> - 2026-07-29 18:22 +0200
It’s called . . . . enshittification (About the price tag for using a multifile/1) Mild Shock <janburse@fastmail.fm> - 2026-08-14 00:50 +0200
Budget AI Laptop 2026 versus Cray T3D 1995 (Re: You are still chewing on SIMD. LoL) Mild Shock <janburse@fastmail.fm> - 2026-08-05 14:24 +0200
A brain desease of 20 days [Rossy Boy] (Was: Viswath & Charmaigne (vector-wide scalar-word and character machines)) Mild Shock <janburse@fastmail.fm> - 2026-07-29 18:38 +0200
Rossy Boys tears could cool a data center [pi-WAM Interleaved Synchronized Emulator] Mild Shock <janburse@fastmail.fm> - 2026-07-29 20:05 +0200
Re: Rossy Boys tears could cool a data center [pi-WAM Interleaved Synchronized Emulator] Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-29 11:13 -0700
I don't use Rust, you are crazy [Jump off a bridge, idiot] (Was: Rossy Boys tears could cool a data center [pi-WAM Interleaved Synchronized Emulator]) Mild Shock <janburse@fastmail.fm> - 2026-07-29 20:22 +0200
Standing on the shoulders of giants (Re: I don't use Rust, you are crazy [Jump off a bridge, idiot]) Mild Shock <janburse@fastmail.fm> - 2026-08-04 03:20 +0200
You Thief! Stealing Szemeredi, Aristotle, Leibniz, etc.. (Re: Standing on the shoulders of giants) Mild Shock <janburse@fastmail.fm> - 2026-08-04 15:18 +0200
How Rossy Boys plagiarism works [Copy Paste Slop] (Re: You Thief! Stealing Szemeredi, Aristotle, Leibniz, etc..) Mild Shock <janburse@fastmail.fm> - 2026-08-04 17:56 +0200
Postgres is in C! Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-30 03:46 +0800
Re: Postgres is in C! Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-29 13:47 -0700
Please don't extend your cross posting / What does abstract mean? (Was: Postgres is in C!) Mild Shock <janburse@fastmail.fm> - 2026-07-29 23:00 +0200
Re: Please don't extend your cross posting / What does abstract mean? (Was: Postgres is in C!) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-30 21:05 +0800
Re: Please don't extend your cross posting / What does abstract mean? (Was: Postgres is in C!) scott@slp53.sl.home (Scott Lurndal) - 2026-07-30 14:46 +0000
Please don't extend your cross posting / What does abstract mean? (Was: Postgres is in C!) Mild Shock <janburse@fastmail.fm> - 2026-07-29 23:05 +0200
Mars, the MIPS emulator in Java (was: Re: Postgres is in C!) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-30 21:20 +0800
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-30 06:59 -0700
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-30 07:24 -0700
Re: Mars, the MIPS emulator in Java Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-08-05 09:58 +0800
Re: Mars, the MIPS emulator in Java Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-30 23:19 +0800
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-30 09:23 -0700
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-30 09:36 -0700
Decorum (was: Re: Mars, the MIPS emulator in Java) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-31 23:07 +0800
Re: Decorum Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-31 23:09 +0800
Re: Decorum Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-31 08:36 -0700
Re: Decorum Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-31 08:44 -0700
Re: Decorum Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-08-05 10:38 +0800
Re: Mars, the MIPS emulator in Java Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-08-05 10:15 +0800
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-04 23:31 -0700
Re: Mars, the MIPS emulator in Java "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-08-05 12:42 -0700
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-05 13:24 -0700
Re: Mars, the MIPS emulator in Java "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-08-05 13:30 -0700
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-05 13:45 -0700
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-05 20:42 -0700
Re: Mars, the MIPS emulator in Java Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-08-07 09:55 +0800
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-07 05:13 -0700
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-07 05:59 -0700
Re: Mars, the MIPS emulator in Java Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-08-07 09:53 +0800
Re: Mars, the MIPS emulator in Java Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-06 20:11 -0700
Hack ecosystem ignorance paired with paranoia [Nand to Tetris] (Re: Postgres is in C!) Mild Shock <janburse@fastmail.fm> - 2026-07-29 22:49 +0200
A funny Q16.16 experiment with Hack (Was: Hack ecosystem ignorance paired with paranoia [Nand to Tetris]) Mild Shock <janburse@fastmail.fm> - 2026-07-29 23:10 +0200
Summer Challenge: libSQL = Prolog+Modes [VDBE versus π-WAM] (Re: A funny Q16.16 experiment with Hack) Mild Shock <janburse@fastmail.fm> - 2026-07-30 11:27 +0200
Re: Bullshit Authorized by Sarah Connor [EyeProlog Failure] (Re: Summer Challenge: libSQL = Prolog+Modes [VDBE versus π-WAM]) Mild Shock <janburse@fastmail.fm> - 2026-08-12 20:30 +0200
Crating Interpreters, Java part (was: Re: Hack ecosystem ignorance paired with paranoia [Nand to Tetris] (Re: Postgres is in C!)) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-30 21:27 +0800
I wrote Hack VM for π-WAM from scratch [4 Months total JavaScript, Python and Java] (Re: Crating Interpreters, Java part) Mild Shock <janburse@fastmail.fm> - 2026-07-30 19:32 +0200
For WebGPU I first had SIMD in mind (Was: I wrote Hack VM for π-WAM from scratch) Mild Shock <janburse@fastmail.fm> - 2026-07-30 19:47 +0200
Corr.: 4 Months --> 4 Weeks (Was: For WebGPU I first had SIMD in mind) Mild Shock <janburse@fastmail.fm> - 2026-07-30 20:04 +0200
Re: For WebGPU I first had SIMD in mind (Was: I wrote Hack VM for π-WAM from scratch) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-31 04:07 +0800
Re: I wrote Hack VM for π-WAM from scratch [4 Months total JavaScript, Python and Java] (Re: Crating Interpreters, Java part) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-31 03:49 +0800
MIPS is a big Huffman mess [But Hack could do it] (Was: I wrote Hack VM for π-WAM from scratch) Mild Shock <janburse@fastmail.fm> - 2026-07-30 22:26 +0200
Not declarative with PHI (Φ) nodes (Re: MIPS is a big Huffman mess [But Hack could do it]) Mild Shock <janburse@fastmail.fm> - 2026-07-30 22:41 +0200
Quo Vadis: Extend investigations to WebNN (Re: I wrote Hack VM for π-WAM from scratch) Mild Shock <janburse@fastmail.fm> - 2026-07-31 20:47 +0200
RCan library(ironpaw) repurpose FFT hardware [Glimps into Ryzen AI 7 350] (Re: Hack ecosystem ignorance paired with paranoia) Mild Shock <janburse@fastmail.fm> - 2026-08-01 02:33 +0200
Can library(ironpaw) repurpose FFT hardware [Glimps into Ryzen AI 7 350] (Re: Hack ecosystem ignorance paired with paranoia) Mild Shock <janburse@fastmail.fm> - 2026-08-01 02:34 +0200
Re: Postgres is in C! Cóilín Nioclásín Glostéir <thanks-to@Taf.com> - 2026-07-29 21:23 +0000
Turbo Vison, again (was: Re: Postgres is in C!) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-30 21:31 +0800
He uses "FIFO objects", and DMA and Noc [Glimps into Ryzen AI 7 350] (Re: A brain desease of 20 days [Rossy Boy])) Mild Shock <janburse@fastmail.fm> - 2026-08-01 12:15 +0200
Tablet and phone UBS-C remote debugging (Re: He uses "FIFO objects", and DMA and Noc) Mild Shock <janburse@fastmail.fm> - 2026-08-01 12:18 +0200
NPUs doing 2d chess comms (Manhattan Distance or L1 Norm) (Re: Tablet and phone UBS-C remote debugging) Mild Shock <janburse@fastmail.fm> - 2026-08-01 14:11 +0200
NACK retransmission might double Manhattan Distance (Re: NPUs doing 2d chess comms) Mild Shock <janburse@fastmail.fm> - 2026-08-01 14:23 +0200
Rossy Boy is neither Einstein nor Zweistein (Re: Viswath & Charmaigne) Mild Shock <janburse@fastmail.fm> - 2026-07-27 21:18 +0200
Re: Rossy Boy is neither Einstein nor Zweistein (Re: Viswath & Charmaigne) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-27 15:35 -0700
Clueless about MIMD as usual [Flynn's Taxonomy] (Was: Rossy Boy is neither Einstein nor Zweistein) Mild Shock <janburse@fastmail.fm> - 2026-07-28 11:25 +0200
Re: Clueless about MIMD as usual [Flynn's Taxonomy] (Was: Rossy Boy is neither Einstein nor Zweistein) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-28 20:39 -0700
confused rossy boy is confused (Was: Clueless about MIMD as usual [Flynn's Taxonomy]) Mild Shock <janburse@fastmail.fm> - 2026-07-29 11:15 +0200
Gemini, DeepSeek, OpenAI more clever than rossy boy (Was: confused rossy boy is confused) Mild Shock <janburse@fastmail.fm> - 2026-07-29 11:18 +0200
Re: confused rossy boy is confused (Was: Clueless about MIMD as usual [Flynn's Taxonomy]) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-29 17:21 +0800
In AI Acceleration nobody cares about CivetWeb (Was: confused rossy boy is confused) Mild Shock <janburse@fastmail.fm> - 2026-07-29 11:27 +0200
Re: In AI Acceleration nobody cares about CivetWeb (Was: confused rossy boy is confused) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-29 17:40 +0800
Your strictness is your problem , not mine [See WebLLM] (Was: In AI Acceleration nobody cares about CivetWeb) Mild Shock <janburse@fastmail.fm> - 2026-07-29 11:46 +0200
Graphics Processing with Fortran 77 (was: Re: Your strictness is your problem , not mine) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-07-29 18:10 +0800
I am not in C, it is theory and C++ [Hybrid Approaches from KOAN/Fortran-S] (Was: Graphics Processing with Fortran 77) Mild Shock <janburse@fastmail.fm> - 2026-07-29 12:43 +0200
Java picky concerning JIT-ing [Luckier with C++/C or FORTRAN compilers?] (Re: I am not in C, it is theory and C++) Mild Shock <janburse@fastmail.fm> - 2026-07-29 12:53 +0200
Run with minimum HTTPS and .mjs type (Re: In AI Acceleration nobody cares about CivetWeb) Mild Shock <janburse@fastmail.fm> - 2026-07-29 11:48 +0200
Lamas in a cradle and Lamas on the edge [Red Pyjama] (Was: Run with minimum HTTPS and .mjs type) Mild Shock <janburse@fastmail.fm> - 2026-07-29 13:05 +0200
Synthetic Multilanguage Autoformalization Dataset [Informath project] (Re: Lamas in a cradle and Lamas on the edge [Red Pyjama]) Mild Shock <janburse@fastmail.fm> - 2026-08-08 09:22 +0200
Re: Synthetic Multilanguage Autoformalization Dataset [Informath project] (Re: Lamas in a cradle and Lamas on the edge [Red Pyjama]) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-08 10:38 -0700
Six Proofs and Generally Inteligent Systems [EyeProlog Pseudo Scientism] (Re: Synthetic Multilanguage Autoformalization Dataset [Informath project]) Mild Shock <janburse@fastmail.fm> - 2026-08-15 15:20 +0200
Everybody does eat and sleep [The SK hynix Story] (Re: Six Proofs and Generally Inteligent Systems [EyeProlog Pseudo Scientism]) Mild Shock <janburse@fastmail.fm> - 2026-08-15 18:49 +0200
Re: confused rossy boy is confused (Was: Clueless about MIMD as usual [Flynn's Taxonomy]) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-07-29 14:42 -0700
Even send_color and recv_color can block [Cerebras Waver] (Was: confused rossy boy is confused) Mild Shock <janburse@fastmail.fm> - 2026-08-02 23:37 +0200
Re: Even send_color and recv_color can block [Cerebras Waver] (Was: confused rossy boy is confused) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-08-02 14:40 -0700
Re: Even send_color and recv_color can block [Cerebras Waver] (Was: confused rossy boy is confused) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-08-02 14:43 -0700
You don't understand that compute shaders are tasks (Was: Even send_color and recv_color can block [Cerebras Waver]) Mild Shock <janburse@fastmail.fm> - 2026-08-02 23:45 +0200
You don't understand that compute shaders are tasks (Re: Even send_color and recv_color can block [Cerebras Waver]) Mild Shock <janburse@fastmail.fm> - 2026-08-02 23:46 +0200
Ignoramus / Ignorabimus Barometer: Almost 1 Month (Re: You don't understand that compute shaders are tasks) Mild Shock <janburse@fastmail.fm> - 2026-08-03 00:09 +0200
Homework: Game Engine in WebGPU (Re: Ignoramus / Ignorabimus Barometer: Almost 1 Month) Mild Shock <janburse@fastmail.fm> - 2026-08-03 02:08 +0200
Re: Homework: Game Engine in WebGPU (Re: Ignoramus / Ignorabimus Barometer: Almost 1 Month) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-08-03 11:55 -0700
You are not correctly thinking (Was: Homework: Game Engine in WebGPU) Mild Shock <janburse@fastmail.fm> - 2026-08-03 21:04 +0200
Re: You are not correctly thinking (Was: Homework: Game Engine in WebGPU) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-08-03 12:32 -0700
You don't understand the economy of an AI Laptop (Was: You are not correctly thinking) Mild Shock <janburse@fastmail.fm> - 2026-08-03 22:24 +0200
You don't understand producer , workers , consumer (Was: You don't understand the economy of an AI Laptop ) Mild Shock <janburse@fastmail.fm> - 2026-08-03 22:37 +0200
Re: You don't understand producer , workers , consumer (Was: You don't understand the economy of an AI Laptop ) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-08-03 14:29 -0700
Know nothing and forget what you posted day before (Was: You don't understand producer , workers , consumer) Mild Shock <janburse@fastmail.fm> - 2026-08-03 23:38 +0200
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-30 06:49 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-07-30 14:55 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-30 21:18 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-31 09:12 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-31 12:55 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-07-31 13:05 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-02 10:27 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) Ross Finlayson <ross.a.finlayson@gmail.com> - 2026-08-06 10:12 -0700
Re: Viswath & Charmaigne (vector-wide scalar-word and character machines) "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-08-06 12:37 -0700
Ljubljana School versus Zurich School (Was: Viswath & Charmaigne) Mild Shock <janburse@fastmail.fm> - 2026-08-03 20:14 +0200
Re: Ljubljana School versus Zurich School (Was: Viswath & Charmaigne) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-08-04 02:21 +0800
pi-WAM uses ADA RendezVous (Was: Ljubljana School versus Zurich School) Mild Shock <janburse@fastmail.fm> - 2026-08-03 20:35 +0200
A spinlock rewrite will be necessary (Was: pi-WAM uses ADA RendezVous) Mild Shock <janburse@fastmail.fm> - 2026-08-03 21:00 +0200
Big thanks to Ljubljana School [Searching 0xCAFFEE] (Was: Ljubljana School versus Zurich School) Mild Shock <janburse@fastmail.fm> - 2026-08-03 20:40 +0200
Page 4 of 7 — ← Prev page 1 2 3 [4] 5 6 7 Next page →
| From | Ross Finlayson <ross.a.finlayson@gmail.com> |
|---|---|
| Date | 2026-08-05 20:42 -0700 |
| Subject | Re: Mars, the MIPS emulator in Java |
| Message-ID | <kludnTouZ6Isn-n3nZ2dnZfqnPSdnZ2d@giganews.com> |
| In reply to | #143234 |
On 08/04/2026 11:31 PM, Ross Finlayson wrote: > On 08/04/2026 07:15 PM, Johann 'Myrkraverk' Oskarsson wrote: >> On 31/07/2026 12:23 AM, Ross Finlayson wrote: >> >>> One might suggest that the "Java Trails" tutorials and "Core Java" >>> and "Java in a Nutshell" would give an authentic introduction that >>> were new then and old now, and correct, if not "current", then and now. >>> >>> https://docs.oracle.com/javase/tutorial/ >> >> >> Thank you. I've begun to create my own Java course, slightly based on >> the material in the Java trail. I feel there's a lot to cover for >> absolute beginners, so I'll take it slowly and write my own intro- >> duction. >> >>> >>> For something like C++, my first link would be >>> "https://cppreference.com", usually. Then after >>> the tutorials there is only API javadoc the API documentation, >>> which is also surfaced in the IDE's. >>> >> >> >> Well, my first inclination is to reach up to /Effective Modern C++/ by >> Meyers, on my shelf; and then Stroustrup's 4th edition if I can be >> bothered to read him again. I think I prefer the 3rd edition anyway. >> >>> >>> Java11 and C++ 11 are probably appropriate baselines. >>> >>> I've programmed in both Swing and Win32, more low-level than high-level, >>> Java's worker threads and sychronization utilities >>> vis-a-vis Win32's message-pump and message-crackers and the user-defined >>> pointer in the HWND's MSG, make for various >>> accounts then for things like OLE/OLE2/COM/DCOM/ActiveX >>> as about the .NET IL ASM CLR runtime with C#, VB.NET, F#, >>> C/C++, and so on. >>> >>> >> >> Well, as you've no doubt noticed, I've added Turbo Vision to my reper- >> toire of GUI toolkits recently. My personal go-to toolkit in C, is IUP. >> >> That's also sufficiently obscure that I'll link the original. >> >> https://iup.sourceforge.net/ >> >> Note that if you're using Open Watcom -- at least the 1.9 edition from >> openwatcom.org, you can just use the 32bit binaries for Visual Studio. >> >> You don't have to compile your own. The C linkage hasn't changed, and >> these two compilers are fairly compatible. >> >> I offhand don't know about >> Digital Mars, nor Pelle's C; but if you have 32bit editions of either, >> it'll probably work. I have no idea, nor expectations that GCC and/or >> clang will work with that build. >> >> It'll be interesting to know if anyone here has experimented with this >> build of IUP and the Borland 5.5 free command line compiler, and/or >> a more recent build from Embarcadero. >> >> I'll also be interested to know about even more obscure C compilers that >> work on the Windows platform. >> >> >> About runtimes, I'm still in the Java part of /Crafting Interpreters/, >> it seems I forgot to continue that course, so thank you for reminding me >> about it. I have the feeling the 2nd part in C will cover building my >> own runtime. Well, for some value of "my own." >> >> >> Have you ever built your own programming language environment with a new >> runtime in C? > > Agreeably, Meyers' C++ books were very solid, > and almost all the advice is sound. For a decade > they were basically required as part of code-style, > pretty much everything in them. > > It's been quite a while since Borland was among the best available > compilers, what with Delphi and so on, or C/C++. Then, there was > djgpp and also Navia's lcc a C compiler, on Win32, these were > greatly appreciated, these days MinGW64. Then Visual C++ of > course was the premier environment. Kai, Wind River, wxWorks, > I don't know them. > > > I've never written a compiler yet have designed language. > > When reading a book something like "Advanced Compiler Optimizations", > these days there's much of the e-graphs for re-write rules and the like, > about porting code besides mapping to concrete forms. > > The term-rewriting and term-graph-rewriting accounts have a lot > going on, with basically the idea that anything can be written > or ported to any language. Porting code of course is of course > what they used to call it instead of "rewriting" the code. > > Type theory and exercises in type of course have that there's a > great account for both the narrowing and widening, and inversions > of types and with regards to unions of types and so on, > then "Patterns" is its own and a great field, "Patterns" > since the '90's and object-orientation and the like, > are great ways of organizing routine, I'm quite a thorough > believer in abstraction of the domain objects and four facilities > like DB MQ FS WS the database, message-queue, file-system, and > web-services, these sorts of "four facilities" about "four resources" > CPU RAM DISK NET, "four surrounds", other sorts general categorizations > of all the things, I have an ideology. > > Experience in the distributed-systems environment or the dot-com > world or the enterprise, I like to think that I've read the > source code, and knew what it was. I've read tons of the code. > > Then, the "glue logic" after Pareto law or 80/20 rule, there's > something to be said for the right hammer for the right nail, > these days awash in "bucket-o-dependency-paste". > > There's something to be said for pure C++, while, inevitably > there's at least one macro, and inevitably at least one > "extern C", and inevitably at least one import of a C header, > usually with the goal of wrapping that directly in C++ > and hiding and safing the acquire/release, then about > "single abstract methods", vis-a-vis, "related functions", > then for "lambdas", as a simplfied account of "function pointers", > while though I still believe in "callbacks" instead of "async". > I do tend to think of things more as pointers than as objects in the > scope. Java's objects are kind of more like pointers than C++'s objects, > with always new/delete, and smart pointers and unique_pointer. > > > > Thanks for writing, good luck with your endeavors. > > > Then, writing the expression, nested expression, and that it's to reverse-unroll to an instruction listing, brings the idea that the equivalent functional/procedural forms have these implicit : subscripts, bounds, arrangements, cases, that are then for the "typed, templating assembler language" the idea that each input and output type has its array bounds and widths and constituent words, then that the implication is to derive the un-rolling of that, then for example where "v-texel" is in a "vr-block" in a "vvr-block", more implicits for the reference the accessor, that variables are accessors and functions are interpolators, that the accessors, as sources and destinations, or sources and sinks, and interpolators, that have some specialization for the types x dimensions, then compose in a way that has a normal form as a code listing of instructions, ..., so that then those are broken-out (enumerated) and written-out. So, to define FILL_VARIBYTE as INSERTHILO( v-texel-varibyte, UTF8TAG(EXTRACTHILO(v-texel))) is that it enumerates over hi and lo for EXTRACT and INSERT, and places them back since they're aligned, skipping over that the UTF8TAG was applied, which is applied to both hi and lo, each of its 8 bytes. FILL_TEXEL_VARIBYTE (vr-texel, vr-texel-varibyte) = EXTRACTHILO(vr-texel) . UTF8TAG . INSERTHILO(vr-texel-varibyte) FILL_VR_VARIBYTE(vr-src, vr-dst) = EXTRACT(vr-src) . UTF8TAG . INSERT(vr-dst) Then, the context of an accessor, and contexts of EXTRACT and INSERT, have that those are accessors, FILL_VR_VARIBYTE(vr-src(vr-block-1), vr-dst(vr-block-1)) = EXTRACT(vr-src) . UTF8TAG . INSERT(vr-dst) has that accessors are making accessors, then for example, that "." is both like concatenation, and, like dereference, where it were so that the compilation off the declarations, generated (made derived) that in a higher-level language, it results a code-model, for a sort of "interpolating-interpreter", and a "functional language", that has a natural form as a procedural language, if not so much vice-versa, though, that it does, after invariants. https://github.com/codereport/array-language-comparisons So, to sort this out a bit, figure that there's an assembler language with instruction listings, or a procedural language like "BASIC" or something. Then, the idea is that accounts of loops are left out, instead for accounts of "interpolations", interpolating from action to action, with that the loops are implicit, and of fixed dimensions and un-rolled, then about that the operations: are dyadic usually with two-many operands src/dst, yet they also have the implicit data-type its width, and as it contains other data-types as a collection its length, those being usually enough ratios of powers-of-two, so that then when concatenating instructions or interpolators (transformers), that between the poles of them are interpolated the instructions of the inner body, un-rolled, or for example when two instructions are defined to be specialized through an outer body, the implicits of that. So, width and length are relative, while, in the actual data-types, constants. This then would be key for writing the SIMD/SWAR, because the SIMD functions would be the same as the SWAR, ..., and about how it goes that then besides between operands of the same size/data-type/dimensions, are halving/doubling or insert/extract. Then, why this is relevant to languages like Java or C++ or C, is that the expressions like EXTRACT . UTF8TAG . INSERT, happen to look just like field references, for what are structs of "interpolator bodies", that then at compile-time, a recursive and exhaustive sort of building up the declarations and definitions, can then result the simple sort of combinators I suppose, since the types are sort of simplified because they're only data-types with relative-width and relative-length, and signed or unsigned integer or floating-point definition in the instruction sets, then that "re-write rules" or "template specializations" can be written and found in the "recursive and exhaustive" sort of compilation, these kinds of things. LOAD_OR_AND_STORE(src, const, dst) = LOAD(src) . OR(const) . STORE(dst) Then, this idea of an "accessors and interpolators" language, for example, it's a sort of language. The idea is that interpolators are assignable, and then that's at compile-time, and results an instruction listing, that's fixed. I just made that up so it's yet a sort of, "design of language", and a description of a compiler, about "typed and templating assembler".
[toc] | [prev] | [next] | [standalone]
| From | Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> |
|---|---|
| Date | 2026-08-07 09:55 +0800 |
| Subject | Re: Mars, the MIPS emulator in Java |
| Message-ID | <rWadS.33$48x6.18@fx09.ams4> |
| In reply to | #143243 |
On 06/08/2026 11:42 AM, Ross Finlayson wrote: > I just made that up so it's yet a sort of, "design of language", > and a description of a compiler, about "typed and templating > assembler". > > Some of that read like brainstorming, other things read like output from an L.L.M. I'm not sure you need me to comment on anything, as it's your brainstorm. Am I wrong about that? Happy brainstorming! -- Johann | email: invalid -> com | http://www.myrkraverk.com/blog/ I'm not from the Internet, I just work there. | via Easynews.com https://bsky.app/profile/myrkraverk.bsky.social | for ( ;; ) _:;
[toc] | [prev] | [next] | [standalone]
| From | Ross Finlayson <ross.a.finlayson@gmail.com> |
|---|---|
| Date | 2026-08-07 05:13 -0700 |
| Subject | Re: Mars, the MIPS emulator in Java |
| Message-ID | <nA6dneP5mct-Vuj3nZ2dnZfqn_ednZ2d@giganews.com> |
| In reply to | #143254 |
On 08/06/2026 06:55 PM, Johann 'Myrkraverk' Oskarsson wrote: > On 06/08/2026 11:42 AM, Ross Finlayson wrote: > >> I just made that up so it's yet a sort of, "design of language", >> and a description of a compiler, about "typed and templating >> assembler". >> >> > > Some of that read like brainstorming, other things read like output > from an L.L.M. I'm not sure you need me to comment on anything, as > it's your brainstorm. Am I wrong about that? > > > Happy brainstorming! "Hello? Yes, this is Usenet Post." A "large" language model is just a matter of perspective, .... About "type theory", and that there's a sort of different account when the types in assembler are all fixed-length or "scalars", then a "fits-and-sits" type-theory instead of an "is-a/has-a" type-theory, like a 64-bit word "fits" two 32-bit words and eight bytes "sit" in a 64-bit word, makes for a sort of, "scalar type-theory", about that all the ratios between types are compile-time invariants, is an example of an idea. So "typed" and "templating" basically is for generics and alignment then derivations, ..., "products" of macros and parameterization, with "type theory" making for a compiler a model of what "fits-and-sits", then about how to relate that to "is-a/has-a", or the "lambda-calculus", of type theory, is sort of an idea of a, "scalar lambda-calculus". I don't know anybody who's framed it in quite that way, yet, surely it's the most usual kind of thing, ....
[toc] | [prev] | [next] | [standalone]
| From | Ross Finlayson <ross.a.finlayson@gmail.com> |
|---|---|
| Date | 2026-08-07 05:59 -0700 |
| Subject | Re: Mars, the MIPS emulator in Java |
| Message-ID | <udicnSSE-bVPS-j3nZ2dnZfqnPadnZ2d@giganews.com> |
| In reply to | #143259 |
On 08/07/2026 05:13 AM, Ross Finlayson wrote: > On 08/06/2026 06:55 PM, Johann 'Myrkraverk' Oskarsson wrote: >> On 06/08/2026 11:42 AM, Ross Finlayson wrote: >> >>> I just made that up so it's yet a sort of, "design of language", >>> and a description of a compiler, about "typed and templating >>> assembler". >>> >>> >> >> Some of that read like brainstorming, other things read like output >> from an L.L.M. I'm not sure you need me to comment on anything, as >> it's your brainstorm. Am I wrong about that? >> >> >> Happy brainstorming! > > > "Hello? Yes, this is Usenet Post." > > > A "large" language model is just a matter of perspective, .... > > > About "type theory", and that there's a sort of different > account when the types in assembler are all fixed-length > or "scalars", then a "fits-and-sits" type-theory instead > of an "is-a/has-a" type-theory, like a 64-bit word "fits" > two 32-bit words and eight bytes "sit" in a 64-bit word, > makes for a sort of, "scalar type-theory", about that > all the ratios between types are compile-time invariants, > is an example of an idea. > > So "typed" and "templating" basically is for generics > and alignment then derivations, ..., "products" of > macros and parameterization, with "type theory" making > for a compiler a model of what "fits-and-sits", then > about how to relate that to "is-a/has-a", or the > "lambda-calculus", of type theory, is sort of an > idea of a, "scalar lambda-calculus". > > I don't know anybody who's framed it in quite that way, > yet, surely it's the most usual kind of thing, .... > > It's all "relations", then ideas about syntax and language mostly are about contriving that what's already, "in the language". For example I notice it's a trend this days in C++ to overload "|" and use it for chaining expressions, "in the language", it's an idiom, then that type-theory makes for the inference of what it means, about that category-theory and type-theory are two different theories. High-level languages usually involve at least two different theories, of the fundamental elements, then are given "primitives" that relate the various kinds of theories kinds of elements, or that it's given to the "compiler" to so interpret the expressions in one as expressions in the other. That "it's all relations" has that two things relate or don't, what kind of relations they are then is a matter of all their relations, recursively, then that most usually connected to arithmetic, algebra, or geometry, arithmetizations, algebraizations, and geometrizations, since they already have structure as relations, or, just tables of relations, like relational-algebra, often well-known as "a relational data-base management system with relational algebra then also rows and nulls". So, thinking about syntax, then there are only so many syntactical elements or terminals or symbols usually on a keyboard, a usual sort of 101-key keyboard with "qwerty" and "ASCII", then about how to make for assembler language, syntax to define the composition of "functions", which are a simple sort of "function", that always have two inputs and one output, or "dyadic" functions. Then, the "values" in this kind of idea of "typed-and-templating-assembler", are alike in that they're scalars, and various in their size. Then, accounts of arithmetic and the like, vis-a-vis "logic" or binary relations, then comparison, is for that these live in the chip, in a world where there are no stalls, branches, calls, or faults. #EXTRACT = #INSERT #DECODE = 1 EXTRACT > DECODE < INSERT ~ EXTRACT . DECODE . INSERT Then, there are no loops, yet EXTRACT is a generic, or just "un-sized" #DECODE is 1, and INSERT is a generic that goes along with EXTRACT, and their concatenation "interpolates" the loop. Then, in a world without loops, though interpolation, has that concatenation of the expressions, implies, to be inferred, a loop, has for a theory of types or a sub-theory of the theory of types, about how these sorts of things "go". #T = 2 #ADD = 1 T(a, b) > ADD A B . ADD Then, it's kind of like "well, then "ADD" is a recursive definition", and it's like, "well, maybe that's what functions are". So, account of language, "in the language", are idiom, then for languages with higher types, and over-riding or simply enough defining the operators, it varies.
[toc] | [prev] | [next] | [standalone]
| From | Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> |
|---|---|
| Date | 2026-08-07 09:53 +0800 |
| Subject | Re: Mars, the MIPS emulator in Java |
| Message-ID | <cUadS.32$48x6.10@fx09.ams4> |
| In reply to | #143234 |
On 05/08/2026 2:31 PM, Ross Finlayson wrote: > On 08/04/2026 07:15 PM, Johann 'Myrkraverk' Oskarsson wrote: >> On 31/07/2026 12:23 AM, Ross Finlayson wrote: >> >>> One might suggest that the "Java Trails" tutorials and "Core Java" >>> and "Java in a Nutshell" would give an authentic introduction that >>> were new then and old now, and correct, if not "current", then and now. >>> >>> https://docs.oracle.com/javase/tutorial/ >> >> >> Thank you. I've begun to create my own Java course, slightly based on >> the material in the Java trail. I feel there's a lot to cover for >> absolute beginners, so I'll take it slowly and write my own intro- >> duction. >> >>> >>> For something like C++, my first link would be >>> "https://cppreference.com", usually. Then after >>> the tutorials there is only API javadoc the API documentation, >>> which is also surfaced in the IDE's. >>> >> >> >> Well, my first inclination is to reach up to /Effective Modern C++/ by >> Meyers, on my shelf; and then Stroustrup's 4th edition if I can be >> bothered to read him again. I think I prefer the 3rd edition anyway. >> >>> >>> Java11 and C++ 11 are probably appropriate baselines. >>> >>> I've programmed in both Swing and Win32, more low-level than high-level, >>> Java's worker threads and sychronization utilities >>> vis-a-vis Win32's message-pump and message-crackers and the user-defined >>> pointer in the HWND's MSG, make for various >>> accounts then for things like OLE/OLE2/COM/DCOM/ActiveX >>> as about the .NET IL ASM CLR runtime with C#, VB.NET, F#, >>> C/C++, and so on. >>> >>> >> >> Well, as you've no doubt noticed, I've added Turbo Vision to my reper- >> toire of GUI toolkits recently. My personal go-to toolkit in C, is IUP. >> >> That's also sufficiently obscure that I'll link the original. >> >> https://iup.sourceforge.net/ >> >> Note that if you're using Open Watcom -- at least the 1.9 edition from >> openwatcom.org, you can just use the 32bit binaries for Visual Studio. >> >> You don't have to compile your own. The C linkage hasn't changed, and >> these two compilers are fairly compatible. >> >> I offhand don't know about >> Digital Mars, nor Pelle's C; but if you have 32bit editions of either, >> it'll probably work. I have no idea, nor expectations that GCC and/or >> clang will work with that build. >> >> It'll be interesting to know if anyone here has experimented with this >> build of IUP and the Borland 5.5 free command line compiler, and/or >> a more recent build from Embarcadero. >> >> I'll also be interested to know about even more obscure C compilers that >> work on the Windows platform. >> >> >> About runtimes, I'm still in the Java part of /Crafting Interpreters/, >> it seems I forgot to continue that course, so thank you for reminding me >> about it. I have the feeling the 2nd part in C will cover building my >> own runtime. Well, for some value of "my own." >> >> >> Have you ever built your own programming language environment with a new >> runtime in C? > > Agreeably, Meyers' C++ books were very solid, > and almost all the advice is sound. For a decade > they were basically required as part of code-style, > pretty much everything in them. At the moment, I have only the one. And of course Stroustrup that nobody ever reads. I guess he lost it, and I haven't heard of any- one recommend his book since the 3rd. I hope I won't need more Meyers books before I start receiving pay- checks. > > It's been quite a while since Borland was among the best available > compilers, what with Delphi and so on, or C/C++. Then, there was > djgpp and also Navia's lcc a C compiler, on Win32, these were > greatly appreciated, these days MinGW64. Then Visual C++ of > course was the premier environment. Kai, Wind River, wxWorks, > I don't know them. > > > I've never written a compiler yet have designed language. While I have had interest in the compiler technology, and never designed a language. > > When reading a book something like "Advanced Compiler Optimizations", > these days there's much of the e-graphs for re-write rules and the like, > about porting code besides mapping to concrete forms. I believe you mean /Optimizing Compilers for Modern Architectures/ by Allen Kennedy; you seem to be to talking about the paper by David Padua and Michael J. Wolfe -- which I haven't read. > > The term-rewriting and term-graph-rewriting accounts have a lot > going on, with basically the idea that anything can be written > or ported to any language. Porting code of course is of course > what they used to call it instead of "rewriting" the code. Yes, with enough effort, one can even process the binary code, put it into graphs, convert to SSA, optimize, and collapse again into a diff- erent binary code. I believe that's what they do, when they run things under the Rosetta stone, by the fruit vendor. > > Type theory and exercises in type of course have that there's a > great account for both the narrowing and widening, and inversions > of types and with regards to unions of types and so on, > then "Patterns" is its own and a great field, "Patterns" > since the '90's and object-orientation and the like, > are great ways of organizing routine, I'm quite a thorough > believer in abstraction of the domain objects and four facilities > like DB MQ FS WS the database, message-queue, file-system, and > web-services, these sorts of "four facilities" about "four resources" > CPU RAM DISK NET, "four surrounds", other sorts general categorizations > of all the things, I have an ideology. I've started to read books about type theory. At the core, it seems to be a mathematical discipline about keeping meta data about the var- iables we use in programming languages. If I'm mistaken about that, I'm mistaken. I don't have these books here, and don't feel a pressing need to buy 2nd copies. > > Experience in the distributed-systems environment or the dot-com > world or the enterprise, I like to think that I've read the > source code, and knew what it was. I've read tons of the code. I've mostly worked for the /smol/ companies, and by nature of my skillset, almost exclusively worked alone or at best in a team of two. This is a pattern that has repeated for the last 16 years, so it's unlikely to change in the near future. Let's see what the new job has for me. I haven't turned in the /pre-screening/ questionnaire yet, but I have high hopes I'll pass everything. > > Then, the "glue logic" after Pareto law or 80/20 rule, there's > something to be said for the right hammer for the right nail, > these days awash in "bucket-o-dependency-paste". I'm not familiar with that. If you feel it's important, please let me know. > > There's something to be said for pure C++, while, inevitably > there's at least one macro, and inevitably at least one > "extern C", and inevitably at least one import of a C header, > usually with the goal of wrapping that directly in C++ > and hiding and safing the acquire/release, then about > "single abstract methods", vis-a-vis, "related functions", > then for "lambdas", as a simplfied account of "function pointers", > while though I still believe in "callbacks" instead of "async". > I do tend to think of things more as pointers than as objects in the > scope. Java's objects are kind of more like pointers than C++'s objects, > with always new/delete, and smart pointers and unique_pointer. I hope I won't get trapped by any of the new C++ features, in the new job. Yes, a lot of people get trapped by Java's pointers. It's very easy to /leak memory/ in Java if one doesn't realize sometimes it's necessary to null the pointers, and play well with the garbage collector. > > > > Thanks for writing, good luck with your endeavors. > > > You too! -- Johann | email: invalid -> com | http://www.myrkraverk.com/blog/ I'm not from the Internet, I just work there. | via Easynews.com https://bsky.app/profile/myrkraverk.bsky.social | for ( ;; ) _:;
[toc] | [prev] | [next] | [standalone]
| From | Ross Finlayson <ross.a.finlayson@gmail.com> |
|---|---|
| Date | 2026-08-06 20:11 -0700 |
| Subject | Re: Mars, the MIPS emulator in Java |
| Message-ID | <C9KdnVmYPYMj0ej3nZ2dnZfqn_GdnZ2d@giganews.com> |
| In reply to | #143253 |
On 08/06/2026 06:53 PM, Johann 'Myrkraverk' Oskarsson wrote: > On 05/08/2026 2:31 PM, Ross Finlayson wrote: >> On 08/04/2026 07:15 PM, Johann 'Myrkraverk' Oskarsson wrote: >>> On 31/07/2026 12:23 AM, Ross Finlayson wrote: >>> >>>> One might suggest that the "Java Trails" tutorials and "Core Java" >>>> and "Java in a Nutshell" would give an authentic introduction that >>>> were new then and old now, and correct, if not "current", then and now. >>>> >>>> https://docs.oracle.com/javase/tutorial/ >>> >>> >>> Thank you. I've begun to create my own Java course, slightly based on >>> the material in the Java trail. I feel there's a lot to cover for >>> absolute beginners, so I'll take it slowly and write my own intro- >>> duction. >>> >>>> >>>> For something like C++, my first link would be >>>> "https://cppreference.com", usually. Then after >>>> the tutorials there is only API javadoc the API documentation, >>>> which is also surfaced in the IDE's. >>>> >>> >>> >>> Well, my first inclination is to reach up to /Effective Modern C++/ by >>> Meyers, on my shelf; and then Stroustrup's 4th edition if I can be >>> bothered to read him again. I think I prefer the 3rd edition anyway. >>> >>>> >>>> Java11 and C++ 11 are probably appropriate baselines. >>>> >>>> I've programmed in both Swing and Win32, more low-level than >>>> high-level, >>>> Java's worker threads and sychronization utilities >>>> vis-a-vis Win32's message-pump and message-crackers and the >>>> user-defined >>>> pointer in the HWND's MSG, make for various >>>> accounts then for things like OLE/OLE2/COM/DCOM/ActiveX >>>> as about the .NET IL ASM CLR runtime with C#, VB.NET, F#, >>>> C/C++, and so on. >>>> >>>> >>> >>> Well, as you've no doubt noticed, I've added Turbo Vision to my reper- >>> toire of GUI toolkits recently. My personal go-to toolkit in C, is IUP. >>> >>> That's also sufficiently obscure that I'll link the original. >>> >>> https://iup.sourceforge.net/ >>> >>> Note that if you're using Open Watcom -- at least the 1.9 edition from >>> openwatcom.org, you can just use the 32bit binaries for Visual Studio. >>> >>> You don't have to compile your own. The C linkage hasn't changed, and >>> these two compilers are fairly compatible. >>> >>> I offhand don't know about >>> Digital Mars, nor Pelle's C; but if you have 32bit editions of either, >>> it'll probably work. I have no idea, nor expectations that GCC and/or >>> clang will work with that build. >>> >>> It'll be interesting to know if anyone here has experimented with this >>> build of IUP and the Borland 5.5 free command line compiler, and/or >>> a more recent build from Embarcadero. >>> >>> I'll also be interested to know about even more obscure C compilers that >>> work on the Windows platform. >>> >>> >>> About runtimes, I'm still in the Java part of /Crafting Interpreters/, >>> it seems I forgot to continue that course, so thank you for reminding me >>> about it. I have the feeling the 2nd part in C will cover building my >>> own runtime. Well, for some value of "my own." >>> >>> >>> Have you ever built your own programming language environment with a new >>> runtime in C? >> >> Agreeably, Meyers' C++ books were very solid, >> and almost all the advice is sound. For a decade >> they were basically required as part of code-style, >> pretty much everything in them. > > > At the moment, I have only the one. And of course Stroustrup that > nobody ever reads. I guess he lost it, and I haven't heard of any- > one recommend his book since the 3rd. > > I hope I won't need more Meyers books before I start receiving pay- > checks. > >> >> It's been quite a while since Borland was among the best available >> compilers, what with Delphi and so on, or C/C++. Then, there was >> djgpp and also Navia's lcc a C compiler, on Win32, these were >> greatly appreciated, these days MinGW64. Then Visual C++ of >> course was the premier environment. Kai, Wind River, wxWorks, >> I don't know them. >> >> >> I've never written a compiler yet have designed language. > > While I have had interest in the compiler technology, and never designed > a language. > >> >> When reading a book something like "Advanced Compiler Optimizations", >> these days there's much of the e-graphs for re-write rules and the like, >> about porting code besides mapping to concrete forms. > > I believe you mean /Optimizing Compilers for Modern Architectures/ by > Allen Kennedy; you seem to be to talking about the paper by David Padua > and Michael J. Wolfe -- which I haven't read. >> >> The term-rewriting and term-graph-rewriting accounts have a lot >> going on, with basically the idea that anything can be written >> or ported to any language. Porting code of course is of course >> what they used to call it instead of "rewriting" the code. > > > > Yes, with enough effort, one can even process the binary code, put it > into graphs, convert to SSA, optimize, and collapse again into a diff- > erent binary code. > > I believe that's what they do, when they run things under the Rosetta > stone, by the fruit vendor. > >> >> Type theory and exercises in type of course have that there's a >> great account for both the narrowing and widening, and inversions >> of types and with regards to unions of types and so on, >> then "Patterns" is its own and a great field, "Patterns" >> since the '90's and object-orientation and the like, >> are great ways of organizing routine, I'm quite a thorough >> believer in abstraction of the domain objects and four facilities >> like DB MQ FS WS the database, message-queue, file-system, and >> web-services, these sorts of "four facilities" about "four resources" >> CPU RAM DISK NET, "four surrounds", other sorts general categorizations >> of all the things, I have an ideology. > > > > I've started to read books about type theory. At the core, it seems > to be a mathematical discipline about keeping meta data about the var- > iables we use in programming languages. If I'm mistaken about that, > I'm mistaken. I don't have these books here, and don't feel a pressing > need to buy 2nd copies. > >> >> Experience in the distributed-systems environment or the dot-com >> world or the enterprise, I like to think that I've read the >> source code, and knew what it was. I've read tons of the code. > > I've mostly worked for the /smol/ companies, and by nature of my > skillset, almost exclusively worked alone or at best in a team of > two. This is a pattern that has repeated for the last 16 years, so > it's unlikely to change in the near future. Let's see what the new > job has for me. I haven't turned in the /pre-screening/ questionnaire > yet, but I have high hopes I'll pass everything. > >> >> Then, the "glue logic" after Pareto law or 80/20 rule, there's >> something to be said for the right hammer for the right nail, >> these days awash in "bucket-o-dependency-paste". > > I'm not familiar with that. If you feel it's important, please let > me know. > >> >> There's something to be said for pure C++, while, inevitably >> there's at least one macro, and inevitably at least one >> "extern C", and inevitably at least one import of a C header, >> usually with the goal of wrapping that directly in C++ >> and hiding and safing the acquire/release, then about >> "single abstract methods", vis-a-vis, "related functions", >> then for "lambdas", as a simplfied account of "function pointers", >> while though I still believe in "callbacks" instead of "async". >> I do tend to think of things more as pointers than as objects in the >> scope. Java's objects are kind of more like pointers than C++'s objects, >> with always new/delete, and smart pointers and unique_pointer. > > I hope I won't get trapped by any of the new C++ features, in the new > job. > > Yes, a lot of people get trapped by Java's pointers. It's very easy to > /leak memory/ in Java if one doesn't realize sometimes it's necessary to > null the pointers, and play well with the garbage collector. > >> >> >> >> Thanks for writing, good luck with your endeavors. >> >> >> > > You too! I'm a fan of Stroustrup, and have copies of both 3'rd and Special editions. The Special edition does have some extended narrative, and from the time, was quite suitable as both desktop reference and paperweight. That and something like the "Standard C++ IOStreams and Locales" go together. Dangling references and unclosed resource handles are people's own faults, about something like how reference counting mechanisms are yet remarkably relevant from the age when people put away their tools. Then people went to unique_ptr after smart_ptr and shared_ptr, these things neatly hiding reference-counting and ownership. Topicality, staying on topic, respecting the forum, these are good things, while yet, in the desert, when the oasis dries up, sooner or later all the creatures come down to the watering hole.
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-29 22:49 +0200 |
| Subject | Hack ecosystem ignorance paired with paranoia [Nand to Tetris] (Re: Postgres is in C!) |
| Message-ID | <114dovr$kf2n$2@solani.org> |
| In reply to | #143108 |
Hi, > Who exactly is the thief? Does this person > have stats in the Rogue class in dungeons > and dragons? The conspiracy theory of a stealing of Torso VDBE, by Rossy Boy, is probably a result of complete ignorance of the Hack ecosystem. Hack is a very popular computer science project, with a couple of subprojects in hardware and software. It goes also by the name Nand to Tetris, and is programming language agnositic. You can do Hack experiments in any programming language, be it BASIC, ADA or Rust. Nobody cares. The gist are projects like here, first to educate yourself about Hack: https://www.nand2tetris.org/course And then to use Hack in different contexts: https://www.nand2tetris.org/copy-of-talks For didactic purposes, I used Hack for my WebGPU experiment. I didn't even take a look at Torso VDBE, why should I? Hack is nicely documented, has even a book, and fusing the two 16-bit instruction types A and D, into a single 32-bit instruction stream, is nowhere patented. Bye Johann 'Myrkraverk' Oskarsson schrieb: > On 30/07/2026 2:13 AM, Ross Finlayson wrote: > >> https://www.theregister.com/databases/2026/07/29/after-rewriting-sqlite- >> in-rust-turso-turns-its-sights-on-postgres/5279835 >> >> I don't much care about Rust. It's yet another Google product, >> with the idea of not having exception handling, then supposedly >> it's efficient and safe, yet, it's efficient by not being safe, >> and safe by not being efficient. Then there's the macro/metaprogramming >> front-end, which basically doesn't validate >> like templates or otherwise for compile-time invariants, >> that is basically like people who use string substititution instead >> of object models, who all suffer injection attacks. > > Personally, I like Postgres in C, and I hope it stays there. I used to > maintain PL/Java, and got intimately familiar with some of the limi- > tations of the JNI interface. And while there's some new Java foreign > function interface now, it doesn't replace JNI. Especially for projects > that embed the JVM like PL/Java. > > I haven't contributed to that project for maybe one and half decade, and > now that I'm using Java again -- a project I'll mention in another > thread --[1] I may just resume some duties in PL/Java. But that's a > future adventure that may or may not happen. > > So, I was going to say something about Postgres? Right, I'm sure the > author of Postgres-in-Rust will run into some of the problems people > always run into when they attempt to rewrite other large projects, and > that's not learning from the prior mistakes. I try to avoid that. > > Some of that I learned the hard way, and some of that I learned by read- > ing the /Mythical Man Month/. I don't remember the author's name, and > my physical copy is not in my current library, but I believe the author > is famous enough I don't need to mention him by name. > > >> >> >> This latest manic episode has that in some more clinical or caring >> settings, then one might wonder over the author's need to get help >> or whether they're lost their mittens. In another view, though, >> that's crazy-town and it's not a good place and we don't go there >> any-more, population burse-scheiss-bots. Anyways here we just >> generally respect people well enough to let them well alone. > > I don't remote diagnose people. While I don't have a medical license > to lose, I feel it's impolite to potentially mis-diagnose people over > text messages. > > I have not felt very respected here in comp.lang.c. I guess we must > have some different experiences in this place. Who exactly is > welcoming, and a warm person? > >> >> Not to spring on you that you're wrong, it's not a conspiracy >> against you, anyways as per the usual Shut Up goes out to any >> of these JB, JG, PO, WM, ..., sock-puppet bots. > > I'm not sure I recognize all of these initials. I'm sure I'll > learn to not engage with the problem children here in comp.lang.c, > but it's been a few days, and I'm still familiarizing myself with > the regulars. > >> >> Thief. > > Who exactly is the thief? Does this person have stats in the Rogue > class in dungeons and dragons? > > > Happy C coding! > > [1] Those pretend em-dashes will surely make Dan Cross even more > fictional. I hope his rage isn't fictional and he'll byte every > character I type here in comp.lang.c.
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-29 23:10 +0200 |
| Subject | A funny Q16.16 experiment with Hack (Was: Hack ecosystem ignorance paired with paranoia [Nand to Tetris]) |
| Message-ID | <114dq8n$kfq8$1@solani.org> |
| In reply to | #143110 |
Hi, This seems to be a funny Q16.16 experiment. It shows that an integerish Hack can do floatish stuff, by using binary fixpoint: Raytracing on the Hack computer 2021/06/13 - im alex https://blog.alexqua.ch/posts/from-nand-to-raytracer/ That it uses Rust is arbitrary. Feel free to do it in C, C++, FORTRAN or Java. I guess these languages all have basic arithmethic, right? Maybe not a long jump always? Bye Mild Shock schrieb: > Hi, > > > Who exactly is the thief? Does this person > > have stats in the Rogue class in dungeons > > and dragons? > > The conspiracy theory of a stealing of Torso VDBE, > by Rossy Boy, is probably a result of complete > ignorance of the Hack ecosystem. > > Hack is a very popular computer science project, > with a couple of subprojects in hardware and > software. It goes also by the name Nand to Tetris, > > and is programming language agnositic. You can do > Hack experiments in any programming language, be > it BASIC, ADA or Rust. Nobody cares. > > The gist are projects like here, first to > educate yourself about Hack: > > https://www.nand2tetris.org/course > > And then to use Hack in different contexts: > > https://www.nand2tetris.org/copy-of-talks > > For didactic purposes, I used Hack for my WebGPU > experiment. I didn't even take a look at Torso > VDBE, why should I? Hack is nicely documented, > > has even a book, and fusing the two 16-bit > instruction types A and D, into a single 32-bit > instruction stream, is nowhere patented. > > Bye > > > Johann 'Myrkraverk' Oskarsson schrieb: >> On 30/07/2026 2:13 AM, Ross Finlayson wrote: >> >>> https://www.theregister.com/databases/2026/07/29/after-rewriting-sqlite- >>> in-rust-turso-turns-its-sights-on-postgres/5279835 >>> >>> I don't much care about Rust. It's yet another Google product, >>> with the idea of not having exception handling, then supposedly >>> it's efficient and safe, yet, it's efficient by not being safe, >>> and safe by not being efficient. Then there's the macro/metaprogramming >>> front-end, which basically doesn't validate >>> like templates or otherwise for compile-time invariants, >>> that is basically like people who use string substititution instead >>> of object models, who all suffer injection attacks. >> >> Personally, I like Postgres in C, and I hope it stays there. I used to >> maintain PL/Java, and got intimately familiar with some of the limi- >> tations of the JNI interface. And while there's some new Java foreign >> function interface now, it doesn't replace JNI. Especially for projects >> that embed the JVM like PL/Java. >> >> I haven't contributed to that project for maybe one and half decade, and >> now that I'm using Java again -- a project I'll mention in another >> thread --[1] I may just resume some duties in PL/Java. But that's a >> future adventure that may or may not happen. >> >> So, I was going to say something about Postgres? Right, I'm sure the >> author of Postgres-in-Rust will run into some of the problems people >> always run into when they attempt to rewrite other large projects, and >> that's not learning from the prior mistakes. I try to avoid that. >> >> Some of that I learned the hard way, and some of that I learned by read- >> ing the /Mythical Man Month/. I don't remember the author's name, and >> my physical copy is not in my current library, but I believe the author >> is famous enough I don't need to mention him by name. >> >> >>> >>> >>> This latest manic episode has that in some more clinical or caring >>> settings, then one might wonder over the author's need to get help >>> or whether they're lost their mittens. In another view, though, >>> that's crazy-town and it's not a good place and we don't go there >>> any-more, population burse-scheiss-bots. Anyways here we just >>> generally respect people well enough to let them well alone. >> >> I don't remote diagnose people. While I don't have a medical license >> to lose, I feel it's impolite to potentially mis-diagnose people over >> text messages. >> >> I have not felt very respected here in comp.lang.c. I guess we must >> have some different experiences in this place. Who exactly is >> welcoming, and a warm person? >> >>> >>> Not to spring on you that you're wrong, it's not a conspiracy >>> against you, anyways as per the usual Shut Up goes out to any >>> of these JB, JG, PO, WM, ..., sock-puppet bots. >> >> I'm not sure I recognize all of these initials. I'm sure I'll >> learn to not engage with the problem children here in comp.lang.c, >> but it's been a few days, and I'm still familiarizing myself with >> the regulars. >> >>> >>> Thief. >> >> Who exactly is the thief? Does this person have stats in the Rogue >> class in dungeons and dragons? >> >> >> Happy C coding! >> >> [1] Those pretend em-dashes will surely make Dan Cross even more >> fictional. I hope his rage isn't fictional and he'll byte every >> character I type here in comp.lang.c. >
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-30 11:27 +0200 |
| Subject | Summer Challenge: libSQL = Prolog+Modes [VDBE versus π-WAM] (Re: A funny Q16.16 experiment with Hack) |
| Message-ID | <114f5e6$lao5$4@solani.org> |
| In reply to | #143113 |
Hi,
Woa! Thats a very sad and non fitting statement:
"This was before I was indoctrinated into
ISO Prolog and the ways of monotonic logic
programming. Shen Prolog has many semantic
and syntactic limitations that Scryer Prolog
does not. Also, I now know constraints are a
much better, purer solution to the problems
mode declarations were meant to address"
https://github.com/mthom/scryer-prolog/issues/3410#issuecomment-5030471183
Ok, here is the summer challenge, thats the easy one:
SQL --> Prolog --> WAM
Here come two variations, slightly mindboggling maybe?
SQL --> AST --> VDBE
SQL --> Prolog+Modes --> π-WAM
Bye
BTW: What is VDBE? Some abstract machine, that can
be used to run SQL, following some ideas here:
Database Co-Design With Asynchronous I/O
https://penberg.org/papers/penberg-edgesys24.pdf
Or to run Doom:
Doom on the Turso VDBE
https://github.com/tursodatabase/turso-vdbe-doom-example
What if we would run Doom with π-WAM, on a GPU,
using multiple shaders. We could add some ray tracing.
Mild Shock schrieb:
> Hi,
>
> This seems to be a funny Q16.16 experiment.
> It shows that an integerish Hack can do
> floatish stuff, by using binary fixpoint:
>
> Raytracing on the Hack computer
> 2021/06/13 - im alex
> https://blog.alexqua.ch/posts/from-nand-to-raytracer/
>
> That it uses Rust is arbitrary. Feel free
> to do it in C, C++, FORTRAN or Java. I guess
> these languages all have basic arithmethic,
>
> right? Maybe not a long jump always?
>
> Bye
>
> Mild Shock schrieb:
>> Hi,
>>
>> > Who exactly is the thief? Does this person
>> > have stats in the Rogue class in dungeons
>> > and dragons?
>>
>> The conspiracy theory of a stealing of Torso VDBE,
>> by Rossy Boy, is probably a result of complete
>> ignorance of the Hack ecosystem.
>>
>> Hack is a very popular computer science project,
>> with a couple of subprojects in hardware and
>> software. It goes also by the name Nand to Tetris,
>>
>> and is programming language agnositic. You can do
>> Hack experiments in any programming language, be
>> it BASIC, ADA or Rust. Nobody cares.
>>
>> The gist are projects like here, first to
>> educate yourself about Hack:
>>
>> https://www.nand2tetris.org/course
>>
>> And then to use Hack in different contexts:
>>
>> https://www.nand2tetris.org/copy-of-talks
>>
>> For didactic purposes, I used Hack for my WebGPU
>> experiment. I didn't even take a look at Torso
>> VDBE, why should I? Hack is nicely documented,
>>
>> has even a book, and fusing the two 16-bit
>> instruction types A and D, into a single 32-bit
>> instruction stream, is nowhere patented.
>>
>> Bye
>>
>>
>> Johann 'Myrkraverk' Oskarsson schrieb:
>>> On 30/07/2026 2:13 AM, Ross Finlayson wrote:
>>>
>>>> https://www.theregister.com/databases/2026/07/29/after-rewriting-sqlite-
>>>> in-rust-turso-turns-its-sights-on-postgres/5279835
>>>>
>>>> I don't much care about Rust. It's yet another Google product,
>>>> with the idea of not having exception handling, then supposedly
>>>> it's efficient and safe, yet, it's efficient by not being safe,
>>>> and safe by not being efficient. Then there's the macro/metaprogramming
>>>> front-end, which basically doesn't validate
>>>> like templates or otherwise for compile-time invariants,
>>>> that is basically like people who use string substititution instead
>>>> of object models, who all suffer injection attacks.
>>>
>>> Personally, I like Postgres in C, and I hope it stays there. I used to
>>> maintain PL/Java, and got intimately familiar with some of the limi-
>>> tations of the JNI interface. And while there's some new Java foreign
>>> function interface now, it doesn't replace JNI. Especially for projects
>>> that embed the JVM like PL/Java.
>>>
>>> I haven't contributed to that project for maybe one and half decade, and
>>> now that I'm using Java again -- a project I'll mention in another
>>> thread --[1] I may just resume some duties in PL/Java. But that's a
>>> future adventure that may or may not happen.
>>>
>>> So, I was going to say something about Postgres? Right, I'm sure the
>>> author of Postgres-in-Rust will run into some of the problems people
>>> always run into when they attempt to rewrite other large projects, and
>>> that's not learning from the prior mistakes. I try to avoid that.
>>>
>>> Some of that I learned the hard way, and some of that I learned by read-
>>> ing the /Mythical Man Month/. I don't remember the author's name, and
>>> my physical copy is not in my current library, but I believe the author
>>> is famous enough I don't need to mention him by name.
>>>
>>>
>>>>
>>>>
>>>> This latest manic episode has that in some more clinical or caring
>>>> settings, then one might wonder over the author's need to get help
>>>> or whether they're lost their mittens. In another view, though,
>>>> that's crazy-town and it's not a good place and we don't go there
>>>> any-more, population burse-scheiss-bots. Anyways here we just
>>>> generally respect people well enough to let them well alone.
>>>
>>> I don't remote diagnose people. While I don't have a medical license
>>> to lose, I feel it's impolite to potentially mis-diagnose people over
>>> text messages.
>>>
>>> I have not felt very respected here in comp.lang.c. I guess we must
>>> have some different experiences in this place. Who exactly is
>>> welcoming, and a warm person?
>>>
>>>>
>>>> Not to spring on you that you're wrong, it's not a conspiracy
>>>> against you, anyways as per the usual Shut Up goes out to any
>>>> of these JB, JG, PO, WM, ..., sock-puppet bots.
>>>
>>> I'm not sure I recognize all of these initials. I'm sure I'll
>>> learn to not engage with the problem children here in comp.lang.c,
>>> but it's been a few days, and I'm still familiarizing myself with
>>> the regulars.
>>>
>>>>
>>>> Thief.
>>>
>>> Who exactly is the thief? Does this person have stats in the Rogue
>>> class in dungeons and dragons?
>>>
>>>
>>> Happy C coding!
>>>
>>> [1] Those pretend em-dashes will surely make Dan Cross even more
>>> fictional. I hope his rage isn't fictional and he'll byte every
>>> character I type here in comp.lang.c.
>>
>
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-08-12 20:30 +0200 |
| Subject | Re: Bullshit Authorized by Sarah Connor [EyeProlog Failure] (Re: Summer Challenge: libSQL = Prolog+Modes [VDBE versus π-WAM]) |
| Message-ID | <115ie44$c21n$3@solani.org> |
| In reply to | #143116 |
Hi,
Ok, I see, its not really a Prolog.
For example I get the below. Why
does it have ISO compliance tests?
?- T = f(Y,Z,S), f(X,Y,Z) = T.
(no answers)
https://eyereasoner.github.io/eyeprolog/playground
Whoever payed for this nonsense, had
his money lavishly thrown out of a
window. They could use the australian
gas to directly burn some dollar notes.
LoL
Bye
Mild Shock schrieb:
> Hi,
>
> Its interesting that we already have
> like for 50 years the Curry Howard
> isomorphims, as proof justifications terms,
>
> Still it seems extremly hard to generate
> proof certificates for Prolog, isn't it?
> How it started:
>
> Ai x Big Gas. What could go wrong?
> https://www.youtube.com/watch?v=kON2ZI2BNj8
>
> How its going:
>
> eq(Z,Z).
> why eq(f(X,a),f(b,Y))
> eq(f(b, a), f(b, a)).
> why(
> eq(f(b, a), f(b, a)),
> proof(
> goal(eq(f(b, a), f(b, a))),
> by(fact("<input>", clause(1))),
> bindings([binding("Z", f(b, a))])
> )
> ).
> https://eyereasoner.github.io/eyeprolog/playground
>
> Truely some bullshit authorized by Sarah Connor.
> So far there is no danger of an upcoming
> Skynet that will gain self-awareness.
>
> Bye
>
> Mild Shock schrieb:
>> Hi,
>>
>> Woa! Thats a very sad and non fitting statement:
>>
>> "This was before I was indoctrinated into
>> ISO Prolog and the ways of monotonic logic
>> programming. Shen Prolog has many semantic
>> and syntactic limitations that Scryer Prolog
>> does not. Also, I now know constraints are a
>> much better, purer solution to the problems
>> mode declarations were meant to address"
>> https://github.com/mthom/scryer-prolog/issues/3410#issuecomment-5030471183
>>
>>
>> Ok, here is the summer challenge, thats the easy one:
>>
>> SQL --> Prolog --> WAM
>>
>> Here come two variations, slightly mindboggling maybe?
>>
>> SQL --> AST --> VDBE
>>
>> SQL --> Prolog+Modes --> π-WAM
>>
>> Bye
>>
>> BTW: What is VDBE? Some abstract machine, that can
>> be used to run SQL, following some ideas here:
>>
>> Database Co-Design With Asynchronous I/O
>> https://penberg.org/papers/penberg-edgesys24.pdf
>>
>> Or to run Doom:
>>
>> Doom on the Turso VDBE
>> https://github.com/tursodatabase/turso-vdbe-doom-example
>>
>> What if we would run Doom with π-WAM, on a GPU,
>> using multiple shaders. We could add some ray tracing.
>>
>> Mild Shock schrieb:
>>> Hi,
>>>
>>> This seems to be a funny Q16.16 experiment.
>>> It shows that an integerish Hack can do
>>> floatish stuff, by using binary fixpoint:
>>>
>>> Raytracing on the Hack computer
>>> 2021/06/13 - im alex
>>> https://blog.alexqua.ch/posts/from-nand-to-raytracer/
>>>
>>> That it uses Rust is arbitrary. Feel free
>>> to do it in C, C++, FORTRAN or Java. I guess
>>> these languages all have basic arithmethic,
>>>
>>> right? Maybe not a long jump always?
>>>
>>> Bye
>>>
>>> Mild Shock schrieb:
>>>> Hi,
>>>>
>>>> > Who exactly is the thief? Does this person
>>>> > have stats in the Rogue class in dungeons
>>>> > and dragons?
>>>>
>>>> The conspiracy theory of a stealing of Torso VDBE,
>>>> by Rossy Boy, is probably a result of complete
>>>> ignorance of the Hack ecosystem.
>>>>
>>>> Hack is a very popular computer science project,
>>>> with a couple of subprojects in hardware and
>>>> software. It goes also by the name Nand to Tetris,
>>>>
>>>> and is programming language agnositic. You can do
>>>> Hack experiments in any programming language, be
>>>> it BASIC, ADA or Rust. Nobody cares.
>>>>
>>>> The gist are projects like here, first to
>>>> educate yourself about Hack:
>>>>
>>>> https://www.nand2tetris.org/course
>>>>
>>>> And then to use Hack in different contexts:
>>>>
>>>> https://www.nand2tetris.org/copy-of-talks
>>>>
>>>> For didactic purposes, I used Hack for my WebGPU
>>>> experiment. I didn't even take a look at Torso
>>>> VDBE, why should I? Hack is nicely documented,
>>>>
>>>> has even a book, and fusing the two 16-bit
>>>> instruction types A and D, into a single 32-bit
>>>> instruction stream, is nowhere patented.
>>>>
>>>> Bye
>>>>
>>>>
>>>> Johann 'Myrkraverk' Oskarsson schrieb:
>>>>> On 30/07/2026 2:13 AM, Ross Finlayson wrote:
>>>>>
>>>>>> https://www.theregister.com/databases/2026/07/29/after-rewriting-sqlite-
>>>>>> in-rust-turso-turns-its-sights-on-postgres/5279835
>>>>>>
>>>>>> I don't much care about Rust. It's yet another Google product,
>>>>>> with the idea of not having exception handling, then supposedly
>>>>>> it's efficient and safe, yet, it's efficient by not being safe,
>>>>>> and safe by not being efficient. Then there's the
>>>>>> macro/metaprogramming
>>>>>> front-end, which basically doesn't validate
>>>>>> like templates or otherwise for compile-time invariants,
>>>>>> that is basically like people who use string substititution instead
>>>>>> of object models, who all suffer injection attacks.
>>>>>
>>>>> Personally, I like Postgres in C, and I hope it stays there. I
>>>>> used to
>>>>> maintain PL/Java, and got intimately familiar with some of the limi-
>>>>> tations of the JNI interface. And while there's some new Java foreign
>>>>> function interface now, it doesn't replace JNI. Especially for
>>>>> projects
>>>>> that embed the JVM like PL/Java.
>>>>>
>>>>> I haven't contributed to that project for maybe one and half
>>>>> decade, and
>>>>> now that I'm using Java again -- a project I'll mention in another
>>>>> thread --[1] I may just resume some duties in PL/Java. But that's a
>>>>> future adventure that may or may not happen.
>>>>>
>>>>> So, I was going to say something about Postgres? Right, I'm sure the
>>>>> author of Postgres-in-Rust will run into some of the problems people
>>>>> always run into when they attempt to rewrite other large projects, and
>>>>> that's not learning from the prior mistakes. I try to avoid that.
>>>>>
>>>>> Some of that I learned the hard way, and some of that I learned by
>>>>> read-
>>>>> ing the /Mythical Man Month/. I don't remember the author's name, and
>>>>> my physical copy is not in my current library, but I believe the
>>>>> author
>>>>> is famous enough I don't need to mention him by name.
>>>>>
>>>>>
>>>>>>
>>>>>>
>>>>>> This latest manic episode has that in some more clinical or caring
>>>>>> settings, then one might wonder over the author's need to get help
>>>>>> or whether they're lost their mittens. In another view, though,
>>>>>> that's crazy-town and it's not a good place and we don't go there
>>>>>> any-more, population burse-scheiss-bots. Anyways here we just
>>>>>> generally respect people well enough to let them well alone.
>>>>>
>>>>> I don't remote diagnose people. While I don't have a medical license
>>>>> to lose, I feel it's impolite to potentially mis-diagnose people over
>>>>> text messages.
>>>>>
>>>>> I have not felt very respected here in comp.lang.c. I guess we must
>>>>> have some different experiences in this place. Who exactly is
>>>>> welcoming, and a warm person?
>>>>>
>>>>>>
>>>>>> Not to spring on you that you're wrong, it's not a conspiracy
>>>>>> against you, anyways as per the usual Shut Up goes out to any
>>>>>> of these JB, JG, PO, WM, ..., sock-puppet bots.
>>>>>
>>>>> I'm not sure I recognize all of these initials. I'm sure I'll
>>>>> learn to not engage with the problem children here in comp.lang.c,
>>>>> but it's been a few days, and I'm still familiarizing myself with
>>>>> the regulars.
>>>>>
>>>>>>
>>>>>> Thief.
>>>>>
>>>>> Who exactly is the thief? Does this person have stats in the Rogue
>>>>> class in dungeons and dragons?
>>>>>
>>>>>
>>>>> Happy C coding!
>>>>>
>>>>> [1] Those pretend em-dashes will surely make Dan Cross even more
>>>>> fictional. I hope his rage isn't fictional and he'll byte every
>>>>> character I type here in comp.lang.c.
>>>>
>>>
>>
>
[toc] | [prev] | [next] | [standalone]
| From | Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> |
|---|---|
| Date | 2026-07-30 21:27 +0800 |
| Subject | Crating Interpreters, Java part (was: Re: Hack ecosystem ignorance paired with paranoia [Nand to Tetris] (Re: Postgres is in C!)) |
| Message-ID | <1jIaS.2448$la89.2042@fx06.ams4> |
| In reply to | #143110 |
On 30/07/2026 4:49 AM, Mild Shock wrote: > Hi, > > > Who exactly is the thief? Does this person > > have stats in the Rogue class in dungeons > > and dragons? > > The conspiracy theory of a stealing of Torso VDBE, > by Rossy Boy, is probably a result of complete > ignorance of the Hack ecosystem. > > Hack is a very popular computer science project, > with a couple of subprojects in hardware and > software. It goes also by the name Nand to Tetris, > > and is programming language agnositic. You can do > Hack experiments in any programming language, be > it BASIC, ADA or Rust. Nobody cares. > > The gist are projects like here, first to > educate yourself about Hack: > > https://www.nand2tetris.org/course > > And then to use Hack in different contexts: > > https://www.nand2tetris.org/copy-of-talks > > For didactic purposes, I used Hack for my WebGPU > experiment. I didn't even take a look at Torso > VDBE, why should I? Hack is nicely documented, > > has even a book, and fusing the two 16-bit > instruction types A and D, into a single 32-bit > instruction stream, is nowhere patented. > As I said elsewhere, I'm not that interested in Hack, but virtual machines and related code. I mentioned another book, but now I feel I should ask if you've also read /Crafting Interpreters/ by Robert Nystrom? I myself am still on chapter 5, so I'm still in the Java part of the book, so I replaced comp.lang.c++ with comp.lang.java, and am fairly excited to have a working interpreter. This is the type of book people only properly learn from by typing in the code themselves. Just downloading some other person's code, and running an interpreter isn't exactly a learning experience. So I'm taking my time with it, and interleaving it with my Mars adventures. In any case, I do wish you to have fun with your own WebGPU project, whatever that is about! -- Johann | email: invalid -> com | http://www.myrkraverk.com/blog/ I'm not from the Internet, I just work there. | via Easynews.com
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-30 19:32 +0200 |
| Subject | I wrote Hack VM for π-WAM from scratch [4 Months total JavaScript, Python and Java] (Re: Crating Interpreters, Java part) |
| Message-ID | <114g1rn$m15d$1@solani.org> |
| In reply to | #143119 |
Hi, > Just downloading some other person's code I didn't do that, I wrote Hack VM for pi-WAM from scratch, over the last 4 weeks. I came back from holidays on end of June 2026, and now we have end of July 2026. But its only possible because the instruction set is very smal, like ca. 8 functions and ca. 8 modes and ca. 8 conditions, so its ca. 8 x 8 x 8 = 512 opcodes, each has an A parameter and a D parameter simultaneously. It has currently the following CPU backends: - Nnow supports interleaved synchronous emulation. - Now supports warp parallelism via Java platform threads. - Now supports warp parallelism via Python system threads. - Now supports warp parallelism via JavaScript worker threads. - Note: For Python free threads are not yet fully tested. - Note: For JavaScript web workers are not yet fully tested. https://www.dogelog.ch/typtab/doclet/book/14_install/05_notes22/110_224.html But frankly I came to encounter Hack not from the usual university curriculum web resources, but indirectly through a post about a Prolog emulation of Hack, using constrained horn clauses (CHC): Verifying Nand2Tetris Assembly https://www.philipzucker.com/nand2tetris-chc/ The binary encoding is currently that the functions, modes and conditions eat up a nibble (4-bit), in total 12-bit, which I use then 10-bit for A parameter and 10-bit for D parameter. I used AI freemium, Codex by ChatGPT from within IntelliJ to do some fragment code translations automatically from Java to JavaScript or from JavaScript to Python. Have Fun! Bye Johann 'Myrkraverk' Oskarsson schrieb: > As I said elsewhere, I'm not that interested in Hack, but virtual > machines and related code. I mentioned another book, but now I feel > I should ask if you've also read /Crafting Interpreters/ by Robert > Nystrom? I myself am still on chapter 5, so I'm still in the Java > part of the book, so I replaced comp.lang.c++ with comp.lang.java, and > am fairly excited to have a working interpreter. > > This is the type of book people only properly learn from by typing in > the code themselves. Just downloading some other person's code, and > running an interpreter isn't exactly a learning experience. So I'm > taking my time with it, and interleaving it with my Mars adventures. > > > In any case, I do wish you to have fun with your own WebGPU project, > whatever that is about! >
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-30 19:47 +0200 |
| Subject | For WebGPU I first had SIMD in mind (Was: I wrote Hack VM for π-WAM from scratch) |
| Message-ID | <114g2o2$m1rd$1@solani.org> |
| In reply to | #143128 |
Hi,
The op-codes are all uniform, have the
same sub fields. Already Z-80 CPU differs here.
Another difference to a Z-80 CPU is that
their instruction stream was 8-bit, instructions
can 1, 2, 3 or 4 byte long. On the other
hand in my Hack VM all instructions are
one 32-bit chunk. The porting of a first
prototype that I already had, to WebGPU / WGSL
only took like 1-2 hours. The execution
of Hack VM is very simple, veersion 1.0,
for a single shader:
fn run() {
var pc : i32 = 0;
var accu : i32 = 0;
while (pc < i32(arrayLength(&code))) {
var instr : i32 = code[pc];
pc += 1;
var value : i32 = run_get(instr);
accu = run_fun(instr, accu, value);
run_set(instr, accu);
pc += run_jump(instr, accu);
}
}
https://github.com/Jean-Luc-Picard-2021/gigabudget/blob/b8946e891be774c40522267ab17062d32b023e7a/course/example63/boot.mjs#L176-L187
I first though this will be perfect for
SIMD. Until I learnt that modern GPUs have
anyway MIMD. Hell Yeah, thats much better!
Bye
Mild Shock schrieb:
> Hi,
>
> > Just downloading some other person's code
>
> I didn't do that, I wrote Hack VM for pi-WAM
> from scratch, over the last 4 weeks. I came
> back from holidays on end of June 2026, and now
>
> we have end of July 2026. But its only possible
> because the instruction set is very smal, like
> ca. 8 functions and ca. 8 modes and ca. 8 conditions,
>
> so its ca. 8 x 8 x 8 = 512 opcodes, each has an
> A parameter and a D parameter simultaneously.
> It has currently the following CPU backends:
>
> - Nnow supports interleaved synchronous emulation.
> - Now supports warp parallelism via Java platform threads.
> - Now supports warp parallelism via Python system threads.
> - Now supports warp parallelism via JavaScript worker threads.
> - Note: For Python free threads are not yet fully tested.
> - Note: For JavaScript web workers are not yet fully tested.
>
> https://www.dogelog.ch/typtab/doclet/book/14_install/05_notes22/110_224.html
>
>
> But frankly I came to encounter Hack not from
> the usual university curriculum web resources,
> but indirectly through a post about a Prolog
>
> emulation of Hack, using constrained horn clauses (CHC):
>
> Verifying Nand2Tetris Assembly
> https://www.philipzucker.com/nand2tetris-chc/
>
> The binary encoding is currently that the functions,
> modes and conditions eat up a nibble (4-bit), in
> total 12-bit, which I use then 10-bit for A parameter
>
> and 10-bit for D parameter. I used AI freemium, Codex
> by ChatGPT from within IntelliJ to do some fragment
> code translations automatically from Java to JavaScript
>
> or from JavaScript to Python.
>
> Have Fun!
>
> Bye
>
> Johann 'Myrkraverk' Oskarsson schrieb:
>> As I said elsewhere, I'm not that interested in Hack, but virtual
>> machines and related code. I mentioned another book, but now I feel
>> I should ask if you've also read /Crafting Interpreters/ by Robert
>> Nystrom? I myself am still on chapter 5, so I'm still in the Java
>> part of the book, so I replaced comp.lang.c++ with comp.lang.java, and
>> am fairly excited to have a working interpreter.
>>
>> This is the type of book people only properly learn from by typing in
>> the code themselves. Just downloading some other person's code, and
>> running an interpreter isn't exactly a learning experience. So I'm
>> taking my time with it, and interleaving it with my Mars adventures.
>>
>>
>> In any case, I do wish you to have fun with your own WebGPU project,
>> whatever that is about!
>>
>
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-30 20:04 +0200 |
| Subject | Corr.: 4 Months --> 4 Weeks (Was: For WebGPU I first had SIMD in mind) |
| Message-ID | <114g3mn$m2d8$1@solani.org> |
| In reply to | #143129 |
Hi,
There is a typo here:
Subject: I wrote Hack VM for π-WAM from scratch
[4 Months total JavaScript, Python and Java]
It should say:
Subject: I wrote Hack VM for π-WAM from scratch
[4 Weeks total JavaScript, Python and Java]
Sorry!
Bye
Mild Shock schrieb:
> Hi,
>
> The op-codes are all uniform, have the
> same sub fields. Already Z-80 CPU differs here.
> Another difference to a Z-80 CPU is that
>
> their instruction stream was 8-bit, instructions
> can 1, 2, 3 or 4 byte long. On the other
> hand in my Hack VM all instructions are
>
> one 32-bit chunk. The porting of a first
> prototype that I already had, to WebGPU / WGSL
> only took like 1-2 hours. The execution
>
> of Hack VM is very simple, veersion 1.0,
> for a single shader:
>
> fn run() {
> var pc : i32 = 0;
> var accu : i32 = 0;
> while (pc < i32(arrayLength(&code))) {
> var instr : i32 = code[pc];
> pc += 1;
> var value : i32 = run_get(instr);
> accu = run_fun(instr, accu, value);
> run_set(instr, accu);
> pc += run_jump(instr, accu);
> }
> }
>
> https://github.com/Jean-Luc-Picard-2021/gigabudget/blob/b8946e891be774c40522267ab17062d32b023e7a/course/example63/boot.mjs#L176-L187
>
>
> I first though this will be perfect for
> SIMD. Until I learnt that modern GPUs have
> anyway MIMD. Hell Yeah, thats much better!
>
> Bye
>
> Mild Shock schrieb:
>> Hi,
>>
>> > Just downloading some other person's code
>>
>> I didn't do that, I wrote Hack VM for pi-WAM
>> from scratch, over the last 4 weeks. I came
>> back from holidays on end of June 2026, and now
>>
>> we have end of July 2026. But its only possible
>> because the instruction set is very smal, like
>> ca. 8 functions and ca. 8 modes and ca. 8 conditions,
>>
>> so its ca. 8 x 8 x 8 = 512 opcodes, each has an
>> A parameter and a D parameter simultaneously.
>> It has currently the following CPU backends:
>>
>> - Nnow supports interleaved synchronous emulation.
>> - Now supports warp parallelism via Java platform threads.
>> - Now supports warp parallelism via Python system threads.
>> - Now supports warp parallelism via JavaScript worker threads.
>> - Note: For Python free threads are not yet fully tested.
>> - Note: For JavaScript web workers are not yet fully tested.
>>
>> https://www.dogelog.ch/typtab/doclet/book/14_install/05_notes22/110_224.html
>>
>>
>> But frankly I came to encounter Hack not from
>> the usual university curriculum web resources,
>> but indirectly through a post about a Prolog
>>
>> emulation of Hack, using constrained horn clauses (CHC):
>>
>> Verifying Nand2Tetris Assembly
>> https://www.philipzucker.com/nand2tetris-chc/
>>
>> The binary encoding is currently that the functions,
>> modes and conditions eat up a nibble (4-bit), in
>> total 12-bit, which I use then 10-bit for A parameter
>>
>> and 10-bit for D parameter. I used AI freemium, Codex
>> by ChatGPT from within IntelliJ to do some fragment
>> code translations automatically from Java to JavaScript
>>
>> or from JavaScript to Python.
>>
>> Have Fun!
>>
>> Bye
>>
>> Johann 'Myrkraverk' Oskarsson schrieb:
>>> As I said elsewhere, I'm not that interested in Hack, but virtual
>>> machines and related code. I mentioned another book, but now I feel
>>> I should ask if you've also read /Crafting Interpreters/ by Robert
>>> Nystrom? I myself am still on chapter 5, so I'm still in the Java
>>> part of the book, so I replaced comp.lang.c++ with comp.lang.java, and
>>> am fairly excited to have a working interpreter.
>>>
>>> This is the type of book people only properly learn from by typing in
>>> the code themselves. Just downloading some other person's code, and
>>> running an interpreter isn't exactly a learning experience. So I'm
>>> taking my time with it, and interleaving it with my Mars adventures.
>>>
>>>
>>> In any case, I do wish you to have fun with your own WebGPU project,
>>> whatever that is about!
>>>
>>
>
[toc] | [prev] | [next] | [standalone]
| From | Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> |
|---|---|
| Date | 2026-07-31 04:07 +0800 |
| Subject | Re: For WebGPU I first had SIMD in mind (Was: I wrote Hack VM for π-WAM from scratch) |
| Message-ID | <laOaS.15965$yRb.14885@fx13.ams4> |
| In reply to | #143129 |
On 31/07/2026 1:47 AM, Mild Shock wrote:
> Hi,
>
> The op-codes are all uniform, have the
> same sub fields. Already Z-80 CPU differs here.
> Another difference to a Z-80 CPU is that
>
> their instruction stream was 8-bit, instructions
> can 1, 2, 3 or 4 byte long. On the other
> hand in my Hack VM all instructions are
>
> one 32-bit chunk.
That sounds like MIPS.
> The porting of a first
> prototype that I already had, to WebGPU / WGSL
> only took like 1-2 hours. The execution
>
> of Hack VM is very simple, veersion 1.0,
> for a single shader:
>
> fn run() {
> var pc : i32 = 0;
> var accu : i32 = 0;
> while (pc < i32(arrayLength(&code))) {
> var instr : i32 = code[pc];
> pc += 1;
> var value : i32 = run_get(instr);
> accu = run_fun(instr, accu, value);
> run_set(instr, accu);
> pc += run_jump(instr, accu);
> }
> }
>
> https://github.com/Jean-Luc-Picard-2021/gigabudget/blob/
> b8946e891be774c40522267ab17062d32b023e7a/course/example63/boot.mjs#L176-
> L187
>
> I first though this will be perfect for
> SIMD. Until I learnt that modern GPUs have
> anyway MIMD. Hell Yeah, thats much better!
Well, SIMD and MIMD are different, if I understand the terms correctly.
SIMD is something that happens inside one CPU core, where multiple data
points are calculated in parallel. In my experience, usually four
floats[1], though it depends on the data type and size of each vector.
MIMD seems to be about performing multiple calculations in parallel over
several different cores. The programming/optimization strategy is quite
different. You could, in comp.theory, have multiple MIMD cores
performing multiple SIMD instructions in parallel. Those types of work-
loads is something I don't deal with right now.
[1] My experience was limited to vectors of four floats each, when
dealing with direct hardware. For those who don't have reading com-
prehension.
>
> Bye
Have a nice day!
--
Johann | email: invalid -> com | http://www.myrkraverk.com/blog/
I'm not from the Internet, I just work there. | via Easynews.com
[toc] | [prev] | [next] | [standalone]
| From | Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> |
|---|---|
| Date | 2026-07-31 03:49 +0800 |
| Subject | Re: I wrote Hack VM for π-WAM from scratch [4 Months total JavaScript, Python and Java] (Re: Crating Interpreters, Java part) |
| Message-ID | <HVNaS.56362$aXr.13764@fx18.ams4> |
| In reply to | #143128 |
On 31/07/2026 1:32 AM, Mild Shock wrote: > Hi, > > > Just downloading some other person's code > > I didn't do that, I wrote Hack VM for pi-WAM > from scratch, over the last 4 weeks. I came > back from holidays on end of June 2026, and now I'm glad you did, and I hope you had fun. > we have end of July 2026. But its only possible > because the instruction set is very smal, like > ca. 8 functions and ca. 8 modes and ca. 8 conditions, I on the other hand started the VAX emulator, as I said. It's instruction set is very big, as everyone knows, so that's a project that's liable to take years. > > so its ca. 8 x 8 x 8 = 512 opcodes, each has an > A parameter and a D parameter simultaneously. > It has currently the following CPU backends: > > - Nnow supports interleaved synchronous emulation. > - Now supports warp parallelism via Java platform threads. > - Now supports warp parallelism via Python system threads. > - Now supports warp parallelism via JavaScript worker threads. > - Note: For Python free threads are not yet fully tested. > - Note: For JavaScript web workers are not yet fully tested. Have you considered actual instruction set backends? There are several emulators out there that can just load binaries. I have two in mind but will refrain from suggesting anything. You should make up your own mind. > > https://www.dogelog.ch/typtab/doclet/ > book/14_install/05_notes22/110_224.html > > But frankly I came to encounter Hack not from > the usual university curriculum web resources, > but indirectly through a post about a Prolog > > emulation of Hack, using constrained horn clauses (CHC): > > Verifying Nand2Tetris Assembly > https://www.philipzucker.com/nand2tetris-chc/ I had to look up /constrained horn clauses/. Do you habitually prove your code correct? I don't. I like to at least prove the algorithm correct, and there's one algorithm I'd like to prove correct that I haven't yet, even after years. I'm sure I'll get to it some day. I "translated" that code from C to JavaScript once. I guess it's time to make that code public, but I'm in no hurry. It'll probably show up somewhere, eventually. Anyway, I used to have a book about Hoare logic I got when I got first interested in proving programs correct. I hope I'll find that book again. It also taught lambda calculus. That's a fascinating if some- what narrow subject. > The binary encoding is currently that the functions, > modes and conditions eat up a nibble (4-bit), in > total 12-bit, which I use then 10-bit for A parameter > > and 10-bit for D parameter. I used AI freemium, Codex > by ChatGPT from within IntelliJ to do some fragment > code translations automatically from Java to JavaScript > > or from JavaScript to Python. > > Have Fun! Thank you. I'm sure I'll reply to some other posts soon enough. -- Johann | email: invalid -> com | http://www.myrkraverk.com/blog/ I'm not from the Internet, I just work there. | via Easynews.com
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-30 22:26 +0200 |
| Subject | MIPS is a big Huffman mess [But Hack could do it] (Was: I wrote Hack VM for π-WAM from scratch) |
| Message-ID | <114gc28$mmiv$1@solani.org> |
| In reply to | #143128 |
Hi, There is Prolog compiler which spits out Hack. From there on your are free to develop and/or use any Hack realization that goes from abstract to concrete. You could replace the CPU backends that realize a Hack VM by MIPS. Shouldn't be difficult. Basically I refused to think in Huffman Coding (*) while designing Hack VM. On the other hand the MIPS architecture looks like a big Huffman mess. Already its initial design has 3 instructions types: Type format (bits) R opcode(6) rs(5) rt(5) rd(5) shamt(5) funct(6) I opcode(6) rs(5) rt(5) imme(16) J opcode(6) addr(26) While my Hack has only 1 instruction type, when binary encoded for Hack VM, the currently used design looks as follows: Type format (bits) AD opcode(4) mode(4) cond(4) imme(10) addr(10) But since its an abstract machine, nothing prevents you from translating Hack code into MIPS before executing it. In has far you have to distinguish Hack, which is specified in Prolog. And Hack VM which is a virtual machine, with the above instruction packing. And which has currently a JavaScript runtime, a Python runtime and a Java runtime. Bye (*) https://en.wikipedia.org/wiki/Huffman_coding Mild Shock schrieb: > Hi, > > > Just downloading some other person's code > > I didn't do that, I wrote Hack VM for pi-WAM > from scratch, over the last 4 weeks. I came > back from holidays on end of June 2026, and now > > we have end of July 2026. But its only possible > because the instruction set is very smal, like > ca. 8 functions and ca. 8 modes and ca. 8 conditions, > > so its ca. 8 x 8 x 8 = 512 opcodes, each has an > A parameter and a D parameter simultaneously. > It has currently the following CPU backends: > > - Nnow supports interleaved synchronous emulation. > - Now supports warp parallelism via Java platform threads. > - Now supports warp parallelism via Python system threads. > - Now supports warp parallelism via JavaScript worker threads. > - Note: For Python free threads are not yet fully tested. > - Note: For JavaScript web workers are not yet fully tested. > > https://www.dogelog.ch/typtab/doclet/book/14_install/05_notes22/110_224.html > > > But frankly I came to encounter Hack not from > the usual university curriculum web resources, > but indirectly through a post about a Prolog > > emulation of Hack, using constrained horn clauses (CHC): > > Verifying Nand2Tetris Assembly > https://www.philipzucker.com/nand2tetris-chc/ > > The binary encoding is currently that the functions, > modes and conditions eat up a nibble (4-bit), in > total 12-bit, which I use then 10-bit for A parameter > > and 10-bit for D parameter. I used AI freemium, Codex > by ChatGPT from within IntelliJ to do some fragment > code translations automatically from Java to JavaScript > > or from JavaScript to Python. > > Have Fun! > > Bye > > Johann 'Myrkraverk' Oskarsson schrieb: >> As I said elsewhere, I'm not that interested in Hack, but virtual >> machines and related code. I mentioned another book, but now I feel >> I should ask if you've also read /Crafting Interpreters/ by Robert >> Nystrom? I myself am still on chapter 5, so I'm still in the Java >> part of the book, so I replaced comp.lang.c++ with comp.lang.java, and >> am fairly excited to have a working interpreter. >> >> This is the type of book people only properly learn from by typing in >> the code themselves. Just downloading some other person's code, and >> running an interpreter isn't exactly a learning experience. So I'm >> taking my time with it, and interleaving it with my Mars adventures. >> >> >> In any case, I do wish you to have fun with your own WebGPU project, >> whatever that is about! >> >
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-30 22:41 +0200 |
| Subject | Not declarative with PHI (Φ) nodes (Re: MIPS is a big Huffman mess [But Hack could do it]) |
| Message-ID | <114gct8$mn2q$3@solani.org> |
| In reply to | #143134 |
Hi, Another choice for naming Hack, would be to call it an intermediate format. But this is typically used here: The intermediate representation, or IR for short, is an in-memory data structure that represents executable code. https://www.llvmpy.org/llvmpy-doc/dev/doc/llvm_concepts.html#ssa-form-and-phi-nodes So I still like the term abstract machine, as already used in the past by David H. D. Warren for the famous, and in my opinion infamous: Warren Abstract Machine 1983 https://en.wikipedia.org/wiki/Warren_Abstract_Machine Maybe you can take the term abstract machine as a hint that it is more lower level, and more imperative. Not something highlevel, that is easily malleable. But abstract also captures the notion that there is still a level further down, making it concrete. And you find many Prolog systems that did just that, they compile WAM into a further instruction stream, like x86 or whatever, for binary compiled code, that is not interpreted WAM. Bye Mild Shock schrieb: > Hi, > > There is Prolog compiler which spits out Hack. > From there on your are free to develop > and/or use any Hack realization that goes > > from abstract to concrete. You could > replace the CPU backends that realize > a Hack VM by MIPS. Shouldn't be difficult. > > Basically I refused to think in Huffman > Coding (*) while designing Hack VM. On the > other hand the MIPS architecture looks > > like a big Huffman mess. Already its > initial design has 3 instructions types: > > Type format (bits) > R opcode(6) rs(5) rt(5) rd(5) shamt(5) funct(6) > I opcode(6) rs(5) rt(5) imme(16) > J opcode(6) addr(26) > > While my Hack has only 1 instruction > type, when binary encoded for Hack VM, > the currently used design looks as follows: > > Type format (bits) > AD opcode(4) mode(4) cond(4) imme(10) addr(10) > > But since its an abstract machine, nothing > prevents you from translating Hack code > into MIPS before executing it. > > In has far you have to distinguish Hack, > which is specified in Prolog. And Hack VM > which is a virtual machine, with the above > > instruction packing. And which has currently > a JavaScript runtime, a Python runtime > and a Java runtime. > > Bye > > (*) > https://en.wikipedia.org/wiki/Huffman_coding >
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-07-31 20:47 +0200 |
| Subject | Quo Vadis: Extend investigations to WebNN (Re: I wrote Hack VM for π-WAM from scratch) |
| Message-ID | <114iqjb$obtb$3@solani.org> |
| In reply to | #143128 |
Hi, Since we have a good flow, and since NPUs share the same system memory, and possibly a lot of other traits as well with the GPU in libary(edge/furryhaze), we just developed. The idea here is to do first some off Dogelog experiments and then create a library that provides npu_exec/2 for pi-WAM code, the analogue to gpu_exec/2. A name suggestion would be: - edge/ironpaw.p The new Prolog library The NPU will be clearly underutilized when only doing scalar, not sure whether this is even permitted. But in the long run it is planned that pi-WAM will have vector and matrix traits anyways. Here is an example goal can be run with matrix and quantization traits: ?- [X,Y] ins 0..3, Z is X*2+Y*3+4, T is X*3-Y*2-1 These traits will demand some CPU, GPU and NPU translation. If we keep these traits simple, we might indeed arrive at concrete realization from the same abstract machine LoL, ironpaw the little brother of ironfist. Bye Mild Shock schrieb: > Hi, > > > Just downloading some other person's code > > I didn't do that, I wrote Hack VM for pi-WAM > from scratch, over the last 4 weeks. I came > back from holidays on end of June 2026, and now > > we have end of July 2026. But its only possible > because the instruction set is very smal, like > ca. 8 functions and ca. 8 modes and ca. 8 conditions, > > so its ca. 8 x 8 x 8 = 512 opcodes, each has an > A parameter and a D parameter simultaneously. > It has currently the following CPU backends: > > - Nnow supports interleaved synchronous emulation. > - Now supports warp parallelism via Java platform threads. > - Now supports warp parallelism via Python system threads. > - Now supports warp parallelism via JavaScript worker threads. > - Note: For Python free threads are not yet fully tested. > - Note: For JavaScript web workers are not yet fully tested. > > https://www.dogelog.ch/typtab/doclet/book/14_install/05_notes22/110_224.html > > > But frankly I came to encounter Hack not from > the usual university curriculum web resources, > but indirectly through a post about a Prolog > > emulation of Hack, using constrained horn clauses (CHC): > > Verifying Nand2Tetris Assembly > https://www.philipzucker.com/nand2tetris-chc/ > > The binary encoding is currently that the functions, > modes and conditions eat up a nibble (4-bit), in > total 12-bit, which I use then 10-bit for A parameter > > and 10-bit for D parameter. I used AI freemium, Codex > by ChatGPT from within IntelliJ to do some fragment > code translations automatically from Java to JavaScript > > or from JavaScript to Python. > > Have Fun! > > Bye > > Johann 'Myrkraverk' Oskarsson schrieb: >> As I said elsewhere, I'm not that interested in Hack, but virtual >> machines and related code. I mentioned another book, but now I feel >> I should ask if you've also read /Crafting Interpreters/ by Robert >> Nystrom? I myself am still on chapter 5, so I'm still in the Java >> part of the book, so I replaced comp.lang.c++ with comp.lang.java, and >> am fairly excited to have a working interpreter. >> >> This is the type of book people only properly learn from by typing in >> the code themselves. Just downloading some other person's code, and >> running an interpreter isn't exactly a learning experience. So I'm >> taking my time with it, and interleaving it with my Mars adventures. >> >> >> In any case, I do wish you to have fun with your own WebGPU project, >> whatever that is about! >> >
[toc] | [prev] | [next] | [standalone]
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Date | 2026-08-01 02:33 +0200 |
| Subject | RCan library(ironpaw) repurpose FFT hardware [Glimps into Ryzen AI 7 350] (Re: Hack ecosystem ignorance paired with paranoia) |
| Message-ID | <114jeth$o8qj$3@solani.org> |
| In reply to | #143110 |
Hi, One could believe the AI boom is a kind of Charles Darvin Galapagos Island Evolution Trick of repurposing FFT hardware. But this is of course not true, HPC, high performance computing, has already defined level 3 ops years ago. But look at this rabit hole of Ryzen AI 7 350 NPU design, which is a stripped down Xilinx, stripped of exotic FFT features: Getting peak TOPS on a Ryzen AI 7 350 NPU https://destevez.net/2026/05/getting-peak-tops-on-a-ryzen-ai-7-350-npu/ But the core feature, very long instruction word (VLIW) engines, with hardware accelerated GEMMs, scattered in grids of ASIC tiles, connected by DMA and NoC, is even not very specific to AMD, you find it also in Snapdragon / Qualcomm SoCs for AI Laptops. Bye P.S.: My brain playing tricks, why should I name a library(ironpaw) ? From the same article above. Maybe WebNN is easier to use? "mlir-aie contains a Python framework called IRON that generates LLVM MLIR code representing a workload that runs on the NPU, including the code that runs on each compute tile processor and the configuration of DMAs and other hardware. Kernels for the compute tile processor can be written in C++ and compiled either with the open-source llvm-aie Peano compiler, which is a fork of LLVM that adds support for the Xilinx AI engine processors, or with the closed-source Xilinx CHESS compiler, which is included in Vitis. In simple cases the kernels can also be directly written in Python with IRON." Getting peak TOPS on a Ryzen AI 7 350 NPU https://destevez.net/2026/05/getting-peak-tops-on-a-ryzen-ai-7-350-npu/ Mild Shock schrieb: > Hi, > > > Who exactly is the thief? Does this person > > have stats in the Rogue class in dungeons > > and dragons? > > The conspiracy theory of a stealing of Torso VDBE, > by Rossy Boy, is probably a result of complete > ignorance of the Hack ecosystem. > > Hack is a very popular computer science project, > with a couple of subprojects in hardware and > software. It goes also by the name Nand to Tetris, > > and is programming language agnositic. You can do > Hack experiments in any programming language, be > it BASIC, ADA or Rust. Nobody cares. > > The gist are projects like here, first to > educate yourself about Hack: > > https://www.nand2tetris.org/course > > And then to use Hack in different contexts: > > https://www.nand2tetris.org/copy-of-talks > > For didactic purposes, I used Hack for my WebGPU > experiment. I didn't even take a look at Torso > VDBE, why should I? Hack is nicely documented, > > has even a book, and fusing the two 16-bit > instruction types A and D, into a single 32-bit > instruction stream, is nowhere patented. > > Bye > > > Johann 'Myrkraverk' Oskarsson schrieb: >> On 30/07/2026 2:13 AM, Ross Finlayson wrote: >> >>> https://www.theregister.com/databases/2026/07/29/after-rewriting-sqlite- >>> in-rust-turso-turns-its-sights-on-postgres/5279835 >>> >>> I don't much care about Rust. It's yet another Google product, >>> with the idea of not having exception handling, then supposedly >>> it's efficient and safe, yet, it's efficient by not being safe, >>> and safe by not being efficient. Then there's the macro/metaprogramming >>> front-end, which basically doesn't validate >>> like templates or otherwise for compile-time invariants, >>> that is basically like people who use string substititution instead >>> of object models, who all suffer injection attacks. >> >> Personally, I like Postgres in C, and I hope it stays there. I used to >> maintain PL/Java, and got intimately familiar with some of the limi- >> tations of the JNI interface. And while there's some new Java foreign >> function interface now, it doesn't replace JNI. Especially for projects >> that embed the JVM like PL/Java. >> >> I haven't contributed to that project for maybe one and half decade, and >> now that I'm using Java again -- a project I'll mention in another >> thread --[1] I may just resume some duties in PL/Java. But that's a >> future adventure that may or may not happen. >> >> So, I was going to say something about Postgres? Right, I'm sure the >> author of Postgres-in-Rust will run into some of the problems people >> always run into when they attempt to rewrite other large projects, and >> that's not learning from the prior mistakes. I try to avoid that. >> >> Some of that I learned the hard way, and some of that I learned by read- >> ing the /Mythical Man Month/. I don't remember the author's name, and >> my physical copy is not in my current library, but I believe the author >> is famous enough I don't need to mention him by name. >> >> >>> >>> >>> This latest manic episode has that in some more clinical or caring >>> settings, then one might wonder over the author's need to get help >>> or whether they're lost their mittens. In another view, though, >>> that's crazy-town and it's not a good place and we don't go there >>> any-more, population burse-scheiss-bots. Anyways here we just >>> generally respect people well enough to let them well alone. >> >> I don't remote diagnose people. While I don't have a medical license >> to lose, I feel it's impolite to potentially mis-diagnose people over >> text messages. >> >> I have not felt very respected here in comp.lang.c. I guess we must >> have some different experiences in this place. Who exactly is >> welcoming, and a warm person? >> >>> >>> Not to spring on you that you're wrong, it's not a conspiracy >>> against you, anyways as per the usual Shut Up goes out to any >>> of these JB, JG, PO, WM, ..., sock-puppet bots. >> >> I'm not sure I recognize all of these initials. I'm sure I'll >> learn to not engage with the problem children here in comp.lang.c, >> but it's been a few days, and I'm still familiarizing myself with >> the regulars. >> >>> >>> Thief. >> >> Who exactly is the thief? Does this person have stats in the Rogue >> class in dungeons and dragons? >> >> >> Happy C coding! >> >> [1] Those pretend em-dashes will surely make Dan Cross even more >> fictional. I hope his rage isn't fictional and he'll byte every >> character I type here in comp.lang.c. >
[toc] | [prev] | [next] | [standalone]
Page 4 of 7 — ← Prev page 1 2 3 [4] 5 6 7 Next page →
Back to top | Article view | comp.theory
csiph-web