17 Jul 23
This lesser-known form of poetry plays with both the immense capabilities and the restrictions of a computer to manipulate language and create original works of art. There is a wide net of works that can be categorized as computational poetry, and it becomes tough to define it as just one thing. Some works play with language as form and create visual poetry. Some works destroy language all together and force the viewer to make meaning in seas of algorithmically choreographed letters. Other pieces create more traditional poems by utilizing programs to fill in poetic templates and create works that go on forever.
16 Jul 23
Note: This page is my personal journey to discover Forth and put it in the context of computing history. It is adapted from my slides for a short talk. I’ve done everything in my power to make this page scale up and down for various screen sizes. I welcome suggestions and corrections for both the content and display of this page.
14 Jul 23
Ohm is a parsing library for JavaScript, which was created at HARC to support our programming language research. We think of it as a language implementation toolkit that lets you quickly prototype new languages and experiment with extensions to existing languages. You can use Ohm to parse custom file formats or quickly build parsers, interpreters, and compilers for programming languages.
Climate anxiety differs from many forms of anxiety a person might discuss in therapy—anxiety about crowds, or public speaking, or insufficiently washing one’s hands—because the goal is not to resolve the intrusive feeling and put it away. “It’s not a keep-calm-and-carry-on approach,” Davenport told me. When it comes to climate change, the brain’s desire to resolve anxiety and distress often leads either to denial or fatalism: some people convince themselves that climate change is not a big deal, or that someone else will take care of it; others conclude that all is lost and there’s nothing to be done. Davenport pushes her clients to aim for a middle ground of sustainable distress. We must, she says, become more comfortable in uncertainty, and remain present and active in the midst of fear and grief. Her clients usually struggle with this task in one of two ways, she said: they tend to be activists who can’t acknowledge their feelings or people so aware of their feelings that they fail to act.
;; So we want a rhyming dictionary in Clojure. Jack Rusher put up
;; this code here:
;;
;; https://gist.github.com/jackrusher/8640437
;;
;; I'm going to study this code and learn as I go.
Nimona process docs and sketches by Stevenson. I love to see stuff like this
13 Jul 23
It’s also at a level of complexity that most game development tutorials don’t cover. Most of the problems beginners have when starting out with game development have to do with scope. The usual advice is to start small and work your way up, and while that might be a good idea, if the types of projects you’re interested in cannot be made any smaller then there are very few resources out there that attempt to guide you through the problems that come up.
12 Jul 23
Horror employs dissociation to unmoor us from a place of comfort and disarm us so we become malleable and easily frightened. That’s a messy analysis, all told, but I think it goes some way to explain why so much of MGS1 feels almost somnambulant in the way it carries itself.
I saw that what was a nested block in JS became nested data in Elixir, nested for loops became nested lists, and nested control structure became nested data-structure. Variables became functions. By the end of it I had worked the program into the data. The difference between Structured Programming (the JS code) and Functional Programming (the Elixir code) became so clear to me. It’s easy to see this if you compare and contrast the JS above with the Elixir below construct-by-construct.
The essence of FP isn’t just about functions, inputs, and outputs. FP is about representation; Specifically, one representation after the other. The succession of data; Not a succession of instructions. A succession of collections; Not a succession of statements. It’s your application snap-shot by snap-shot; Not step by step. Now with this idea in mind, it’s much easier to see how a bigger program is coded in a functional style, how it’s pieced together from plain old functions, and just their inputs, and outputs.
A pretty slick javascript implementation of Conway’s life:
The universe of the Game of Life is an infinite two-dimensional orthogonal grid of square cells, each of which is in one of two possible states, alive or dead, or “populated” “unpopulated”. Every cell interacts with its eight neighbours, which are the cells that are horizontally, vertically, or diagonally adjacent.
Basically when you’re writing Janet-style macros, you can/should unquote pretty much every symbol in order to do lexical lookup at the macro-definition at compile time, rather than the call-site at runtime
11 Jul 23
..there is never an unambiguous cut between the material, the political, the economic and the epistemological: If computer scientists ‘think through hardware’ then the process of production of that hardware has just as much influence on theoretical structures as those theories can exert on hardware through technological innovation
a collection of examples using janet
10 Jul 23
Summary: AI is introducing the third user-interface paradigm in computing history, shifting to a new interaction mechanism where users tell the computer what they want, not how to do it — thus reversing the locus of control.
…me, salty Kuhn fan will add that “this is not a paradigm shift, it is just a new thing.”
It’s also important for journalists to ask what metric the company is using to evaluate the model—and whether that is the right one to use. A useful question to consider is whether a false positive or false negative is worse. For example, in a cancer screening tool, a false positive may result in people getting an unnecessary test, while a false negative might result in missing a tumor in its early stage when it is treatable.
08 Jul 23
What this story tells us is that software has consequences. It’s easy to look at a missile guidance system or High Frequency Trading and say “that’s unethical!”, but far more mundane software performing far more mundane tasks can also have dangerous or even lethal failure modes.
06 Jul 23
What is evident across all methods of analysis however is that larger file size = more data transferred = more CO2 emitted. This is particularly evident when PDFs use large amounts of visual content, such as decorative graphics and high-resolution images or diagrams.Consider inclusion beyond disability. Light, mobile-friendly web pages are critical for users who experience data poverty or have intermittent connections in remote locations. Loading speed has a major impact on the user experience of any online activity, including government services and information.
05 Jul 23
Nicely searchable Verizon of the hyperspec.
Consider a pair of hypotheses: first, that one major strand of Jewish mysticism supports both the study and the practice of computer science, which I take to include both the formal mathematical and scientific study of the informational and the engineering of informational systems. Second, that our current technical understanding of computation helps clarify a key aspect of the Jewish mystical tradition. Begin with a digression on the role of computer science in showing scientifically that the world itself is more than just material, turn to an examination of one aspect of the Kabbalah, and then look at the practice of computer science as a modern realization of this aspect of the Kabbalah.
a wiki all about the tic80 fantasy console