[go: up one dir, main page]

22 Aug 24

The story of Ella was an example of a chatbot working badly. It was also an example of a chatbot working wonderfully. Not once was a landlord’s silence disturbed by this woman and her problems. She was not even a person in the database, but a hysterical pronoun. And how apt, in the end, for her troubles to divert to us, a group of poets and novelists hired specifically for our feelings, who could feel for her endlessly but do nothing else, as we did not know the landlord’s name or how to reach him and lived very far away.

by eli 1 year ago

23 Jan 24

different ways to type “haha” in many languages

by eli 2 years ago

E-Prime excludes forms such as be, being, been, present tense forms (am, is, are), past tense forms (was, were) along with their negative contractions (isn’t, aren’t, wasn’t, weren’t), and nonstandard contractions such as ain’t. E-Prime also excludes contractions such as I’m, we’re, you’re, he’s, she’s, it’s, they’re, there’s, here’s, where’s, when’s, why’s, how’s, who’s, what’s, and that’s.

by eli 2 years ago
Tags:

29 Nov 23

Scrapscript is a tiny programming language and messaging notation. Use it to make small programs and share them with others! Our community celebrates connectedness, correctness, and compression.

by eli 2 years ago

14 Nov 23

The title is clickbait. I did not design and implement a programming language for the sole or even primary purpose of leaderboarding on Advent of Code. It just turned out that the programming language I was working on fit the task remarkably well.

by eli 2 years ago

06 Nov 23

RBBF is based on Brainfuck, but adds multiple pointers. Each of these pointers has a color of their own. On top of having multiple pointers, RBBF decouples the source pointer and the target pointer for each command. For example: in normal brainfuck a “ “ means “load the value at the pointer, increase it by one, then store it at the pointer”. In RBBF the character color is the source, the background color the target. So a red plus on a green background would mean “load the value from pointer to by red, increase it by one, then store it in the byte pointed to by green”. From now on I’ll refer to character color with FG (foreground) and background color with BG (background).

by eli 2 years ago

14 Sep 23

In early 2015 I was honored to be invited to develop and present a graduate course on Virtual Machines at UC Berkeley. The result is CS294-113: Virtual Machines and Managed Runtimes, which was presented in the Fall of 2015.This page contains the materials from that course.

by eli 2 years ago

05 Sep 23

Juno is a self-hosted Lisp dialect that compiles to JavaScript. It combines fast execution and ease of use with features such as a macro facility modeled on Common Lisp and the ability to save and restore the running image. Juno provides a Lisp computing environment for JavaScript platforms: the browser, Deno or Node (ala V8), or similar, without requiring any dependencies except the JavaScript container itself.

by eli 2 years ago

05 Jul 23

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.

by eli 2 years ago

07 Jun 23

When we—as people—inhabit the physical world, the laws of physics, chemistry, biology, sociology, and even of governments help us by providing constraints against which our actions can gain leverage to get things done. Software obeys few laws—computability is an important limitation, but it sets only a fairly abstract bar for feasibility. Types provide other laws, but so far they have not enabled the breakthroughs in programming language design we need to be able to construct reliable, resilient ultra large scale systems.

by eli 2 years ago

23 May 23

This was not a fruitful conversation, I think we both felt like we weren’t valuing what the other cared about. When people talk about languages they like or dislike, I group the things people talk about into three broad categories, which I’ll call soil, surface, and atmosphere

by eli 2 years ago

18 May 23

miniKanren is a family of Domain Specific Languages for logic programming.The name kanren comes from a Japanese word (関連) meaning “relation”.The core miniKanren language is very simple, with only three logical operators and one interface operator.The core language, using Scheme as the host language, is described in this short, interactive tutorial.

by eli 2 years ago saved 2 times

14 May 23

K is the executable notation at the heart of a high performance programming platform. It is designed for analyzing massive amounts of real-time and historical data – ideal for financial modelling.

by eli 2 years ago

04 May 23

But not all languages have the same set of patterns. The patterns for looping in C or Python are very different from the patterns of recursion in Standard ML or Prolog. The way you organize a program in Lisp, where you name new language constructs, is very different from how you organize it in APL, where fragments of symbol sequences are both the definitions of behavior and become the label for that behavior in your mind.These distinct collections of fundamentals form various ur-languages. Learning a new language that traces to the same ur-language is an easy shift. Learning one that traces to an unfamiliar ur-language requires significant time and effort and new neural pathways.

by eli 2 years ago

25 Mar 23

Psi-Forth is a reversible programming language taking its primitives from Henry G. Baker’s psi-lisp and Brent Kerby’s concatenative combinators. It’s not quite a htro-forth, but a stack machine made of cons cells or the reverse image of a linear lisp.

by eli 2 years ago

NESFab is a new programming language for creating NES games. Designed with 8-bit limitations in mind, the language is more ergonomic to use than C, while also producing faster assembly code. It’s easy to get started with, and has a useful set of libraries for making your first — or hundredth — NES game.

by eli 2 years ago saved 3 times

13 Mar 23

  • This is a compiler for the Tiny-C language. Tiny-C is a
  • considerably stripped down version of C and it is meant as a
  • pedagogical tool for learning about compilers. The integer global
  • variables “a” to “z” are predefined and initialized to zero, and it
  • is not possible to declare new variables. The compiler reads the
  • program from standard input and prints out the value of the
  • variables that are not zero.
by eli 2 years ago

A deque (“double-ended queue”) is a linear list for which all insertions and deletions (and usually all accesses) are made at the ends of the list. A deque is therefore more general than a stack or a queue; it has some properties in common with a deck of cards, and it is pronounced the same way.

by eli 2 years ago