#BabelOfCode 2024
Week 11 (??)
Language: Textual Wasm

Confidence level: Medium high

PREV WEEK: https://mastodon.social/@mcc/114524697727786286
RULES: https://mastodon.social/@mcc/113676228091546556

I'm now doing the puzzles slightly out of order.

"Wasm" is a bytecode VM that runs in web browsers as an alternative to JavaScript. Oddly for a modern VM, it's designed to be targeted by C.

A thing I've heard repeatedly claimed, both excitedly and with eye-rolls, is that Wasm's human readable form is "a LISP". I want to know what that means.

#BabelOfCode 2024
Week 9.5??
Language: Spark

Against my better judgement, but since it was one of the main things that intrigued me about Ada, I decide to port my "day 9" solution to Spark.

I put at the top of my program:

with SPARK_Mode => On

And run it. Nothing happens. Or rather it runs normally. I assume that this sets an attribute read by the Spark toolchain, and is ignored by basic Ada.

The docs suggest running gnatprove. Which… isn't in debian apt? I think I have to go to Github?

#BabelOfCode 2024
Week 9
Language: Ada (Spark?)

Confidence level: High

PREV WEEK: https://mastodon.social/@mcc/114463342416949024
NEXT WEEK: https://mastodon.social/@mcc/114582208242623432

So I start reading the manual for Ada. I think: This is *great!* This has all these features, conveniences etc I was wishing for for years in C++, and didn't get until I jumped to Rust. I might have been using this for games in 2010 if I'd dug into it then!

Then I start writing an actual Ada program. It turns out to be basically a pain in the ass.

@eigen @dobbymoodge If you're asking me personally, if you watch my feed and/or the #BabelOfCode hashtag I will be writing a thread on it sometime in the next week-or-two?

#BabelOfCode 2024
Week 8
Language: Fennel

Confidence level: High

PREV WEEK: https://mastodon.social/@mcc/114433465965880352
NEXT WEEK: https://mastodon.social/@mcc/114524697727786286
RULES: https://mastodon.social/@mcc/113676228091546556

Lua is my favorite programming language. Because of Reasons¹ I have stopped using it, but it is still a jewel of design to me. Any description of what I want in a programming language will sound like "Lua, but—"

Fennel is "Lua, but with LISP syntax". Which is… if anything the opposite of what I want. Hm.

¹ I NEED TYPES

#BabelOfCode 2024
Week 7
Language: Haskell

Confidence level: Medium low

PREV WEEK: https://mastodon.social/@mcc/114308850669653826
NEXT WEEK: https://mastodon.social/@mcc/114463342416949024
RULES: https://mastodon.social/@mcc/113676228091546556

I was going to do Fennel this week, but then I looked at the problem and thought "this is ideal for Haskell "amb". I have been looking for an excuse to use Haskell "amb" for 25 years. So Haskell.

I have tried to learn Haskell 3 times now and failed. This "Babel of Code" thing was originally in part an excuse to do Haskell

#BabelOfCode 2024
Week 6
Language: Nameless experimental LISP

Confidence level: High

PREV WEEK: https://mastodon.social/@mcc/113975448813565537
NEXT WEEK: https://mastodon.social/@mcc/114433465965880352
RULES: https://mastodon.social/@mcc/113676228091546556

Okay… here things get weird!

My project to, gradually over the course of 2025, do each puzzle from Advent of Code 2024 in a different programming language I've never used before, has stalled out for exactly two months now as I've instead been creating…

…the programming language I'm going to use this week!

#BabelOfCode 2024
Week 5
Language: TCL

Confidence level: Medium high

PREV WEEK: https://mastodon.social/@mcc/113906616486081430
NEXT WEEK: https://mastodon.social/@mcc/114308850669653826
RULES: https://mastodon.social/@mcc/113676228091546556

TCL is an odd language. I think anyone who's tried developing a programming language has probably at some point thought "what if I just didn't bother with types and did all operations as string transformations?". I think TCL is just that language.

Officially, TCL is supposed to be capitalized "Tcl". I will not be complying.

#BabelOfCode 2024
Week 4
Language: FORTRAN

Confidence level: High

PREV WEEK: https://mastodon.social/@mcc/113867584791780280
NEXT WEEK: https://mastodon.social/@mcc/113975448813565537
RULES: https://mastodon.social/@mcc/113676228091546556

I was very excited about doing TCL this week, but I told myself the first time I get a two-dimensional array problem I'd go FORTRAN, so I guess this week is FORTRAN.

A friend of mine who did AOC2024 in December noted the early challenges this year were *very* easy. Today's definitely is. I wonder if part 2 will have any depth.

#BabelOfCode 2024
Week 3
Language: x86_64 assembly [AMD64] (macroassembler: GNU as/gas)

PREV WEEK: https://mastodon.social/@mcc/113783248514095140
NEXT WEEK: https://mastodon.social/@mcc/113906616486081430
RULES: https://mastodon.social/@mcc/113676228091546556

I planned ASM for today and when I saw the challenge *almost* bounced to TCL, because I *don't* wanna write a parser in ASM. But the language here is exceedingly regular, so probs a state machine is enough.

Successfully ran this hello world https://cs.lmu.edu/~ray/notes/gasexamples/ which I think should be all I need to start

gasexamples