Tom's Avatar

Tom

@contextfree.bsky.social

I make videos about computer programming at https://youtube.com/@contextfree - he/him - God is good. Black lives matter.

163 Followers  |  138 Following  |  138 Posts  |  Joined: 26.08.2023  |  2.0083

Latest posts by contextfree.bsky.social on Bluesky


Closure capture in JS, Kotlin, Java, Python, Go, Temper, Rust, C++, & Odin
YouTube video by Context Free Closure capture in JS, Kotlin, Java, Python, Go, Temper, Rust, C++, & Odin

New video! Closure capture in JS, Kotlin, Java, Python, Go, Temper, Rust, C++, & Odin youtu.be/FfkDXmcslAM

17.02.2026 14:58 โ€” ๐Ÿ‘ 3    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

It was very helpful! Thanks!

15.02.2026 12:37 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

That demo of the learning site was great, by the way.

11.02.2026 20:48 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

I guess AI bots technically already had access anyway. Maybe it didn't feel like as much of a sellout because of that? Anyway, I guess we'll see how it goes.

16.01.2026 14:49 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
C# code that reads:
public interface IThing {
	internal int _Number => 1; // hidden default impl.
	public int Number { get; } // *public* accessor
}
public interface IThingA : IThing {
	int IThing._Number => 4; // override
}
public class BThing : IThingA {
	// public accessor emitted from source generator:
	public int Number => ( (IThing)this )._Number;
}
public class CThing : IThingA {
	public int Number => 8; // override
}

C# code that reads: public interface IThing { internal int _Number => 1; // hidden default impl. public int Number { get; } // *public* accessor } public interface IThingA : IThing { int IThing._Number => 4; // override } public class BThing : IThingA { // public accessor emitted from source generator: public int Number => ( (IThing)this )._Number; } public class CThing : IThingA { public int Number => 8; // override }

okay - approximately how unhinged is this workaround for not being able to call default interface member implementations without a cast in C#?

16.01.2026 13:28 โ€” ๐Ÿ‘ 57    ๐Ÿ” 1    ๐Ÿ’ฌ 10    ๐Ÿ“Œ 0

See the linked blog post at the start of the thread for more on "Why a new language?"

14.01.2026 19:32 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Introduction The Temper programming language for solving problems once via ubiquitous libraries.

But in Java:

jshell> Map.ofEntries(
...> Map.entry(0, "0"),
...> Map.entry(0.0, "0.0"),
...> Map.entry(-0.0, "-0.0"),
...> Map.entry(false, "false")
...> )
$2 ==> {-0.0=-0.0, 0.0=0.0, 0=0, false=false}

Temper has to think about things like this. temperlang.dev

14.01.2026 19:31 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

For example, in Python:

>>> {
... 0: "0",
... 0.0: "0.0",
... -0.0: "-0.0",
... False: "False",
... }
...
{0: 'False'}

14.01.2026 19:30 โ€” ๐Ÿ‘ 4    ๐Ÿ” 0    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 0
Programming Languages in 2025!
YouTube video by Context Free Programming Languages in 2025!

2025 in programming languages! youtu.be/CzFiPcuMnWM

07.01.2026 15:27 โ€” ๐Ÿ‘ 5    ๐Ÿ” 2    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

After going open source last week, I've already started doing some of my hobby coding in Temper.

06.01.2026 19:58 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

This has been my day job for the past few years. Super excited to share it!

06.01.2026 19:57 โ€” ๐Ÿ‘ 3    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Thanks! I'd still be curious to find one that applies. I'm unsure I'd call Nim tiny, but I could review its size. And I was looking for refcounting specifically, which I wouldn't typically expect from WasmGC. And I understand that WasmGC is pluggable. I'm also hating tracing GC a bit less recently.

28.11.2025 14:49 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

I've seen Unison, but I haven't tried it out. I probably should sometime. Thanks for helping me to keep it in mind!

28.11.2025 14:46 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Easy tile maps inspired by PICO-8!
YouTube video by Context Free Easy tile maps inspired by PICO-8!

New video on my tile map editor and file formats. youtu.be/q2-a7Gztw2g

05.11.2025 15:35 โ€” ๐Ÿ‘ 3    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Nice release! I feel like all the fast start and small binary things should have been there from the beginning. If they can work it all out, Julia might become pretty awesome.

09.10.2025 16:37 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Prototype like PICO-8 but then scale up - Starting a new project again!
YouTube video by Context Free Prototype like PICO-8 but then scale up - Starting a new project again!

New video, new project. I'm so distractable. youtu.be/x3tOCLvSQT8

06.10.2025 13:50 โ€” ๐Ÿ‘ 2    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Started a new side project in Go. First time I've tried using the language seriously. Some things I like and some things I don't. And vaguely related, thinking that wide low res map grid screens should be 240x128.

23.08.2025 14:34 โ€” ๐Ÿ‘ 5    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Profundo.

23.08.2025 11:09 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Suddenly remembering the days before multilevel undo/redo was mostly everywhere.

23.08.2025 03:31 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Thanks for the review!

23.08.2025 03:28 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

I still haven't tried out typst. Is it good then?

23.08.2025 01:49 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

80 years today since nuclear weapons have been targeted at people. Hoping to see 90 and 100 years and many more in the future.

09.08.2025 20:21 โ€” ๐Ÿ‘ 4    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Are there are any memory safe, reference counting languages that have a tiny implementation and compile directly to wasm? I'd like to think I know a good answer to this, but I'm unsure.

07.08.2025 12:30 โ€” ๐Ÿ‘ 2    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Preview
Escape Loop by Tom Play in your browser

Very small PICO-8 game I made for the GMTK Jam. tjpalmer.itch.io/escape-loop

02.08.2025 18:26 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Post image

I'm the bear

01.08.2025 08:51 โ€” ๐Ÿ‘ 31    ๐Ÿ” 9    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 1

Yeah, this video was awesome. Where hacker geek meets nature.

28.07.2025 18:45 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Faster GDScript in Godot? Compiling and running as WebAssembly
YouTube video by Context Free Faster GDScript in Godot? Compiling and running as WebAssembly

New video! Compiling GDScript to and running on WebAssembly youtu.be/hmyxqrzgL28

28.07.2025 14:10 โ€” ๐Ÿ‘ 2    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

It was brutal by the end for me, but yeah, I'm still glad I went on the walk.

16.07.2025 17:35 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Happily the high today in Tucson is only about 29C. Last Saturday, I walked by choice for about 15 miles at about 37C. (That can be dangerous, but I know how to be careful, at least.) I'm crazy enough to enjoy the heat somewhat, but it's nice to have cooler days also.

16.07.2025 14:24 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

It's interesting how Recreational Programming scratches the same itch as Gaming. You are basically playing Factorio on your CPU.

16.07.2025 13:34 โ€” ๐Ÿ‘ 100    ๐Ÿ” 9    ๐Ÿ’ฌ 3    ๐Ÿ“Œ 0

@contextfree is following 20 prominent accounts