Plain language is easier to read than it is to write. It takes time and skill to make your message simple to understand. But the payoff is worth the work. Why? Because plain language makes your content more engaging and accessible for all audiences. And it drives business success as a result.
This guide explains how to write content that’s crystal clear and a joy to read. We’ve included lots of practical advice, fun facts, examples, and tools to help you on your way.
An implementation of BASIC for the BBC micro:bit, written in Micropython.
Snek is a tiny embeddable language targeting processors with only a few kB of flash and ram. Think of something that would have been running BASIC years ago and you'll have the idea. These processors are too small to run MicroPython.
Snek borrows semantics and syntax from python, but only provides a tiny subset of that large language. The goal is to have Snek programs able to run in a full Python (version 3) implementation so that any knowledge gained in learning Snek will transfer directly to learning Python.
Github and list of supported microcontrollers: https://github.com/keith-packard/snek
This is a fast interpreter for the BASIC language on the Atari 8-bit computers and the Atari 5200 console. Support for Atari floating point and 16bit integer variables. Support for string arrays, substrings and concatenation. Small size (currently the full floating point IDE is 9.3k, the integer IDE is 8k, and the runtime is less than 3k). Fast execution (currently, 2 times faster than compiled TurboBasicXL in the "sieve.bas" benchmark, 6 times faster than OSS Integer Basic). Modern syntax (no line numbers, many control structures). Procedures with parameters and short calling syntax. Feels "alike" TurboBasicXL, with many of the extended statements. Integrated editor and compiler running in the Atari 8-bit. A cross-compiler is available that directly compiles sources to Atari executables on any modern PC. Statements for Player/Missile graphics and Display List Interrupts.
This is an in-depth guide to the different elements of the Pebble code language. It is set up to be a reference more than a tutorial, so if you are just starting out, you might want to go through the welcome document first. (This is the first file that loads when you start Pebble.) Or you could try out one of the demo files, by typing demo1, demo2, or demo3 into the File bar and pressing Load. You can also enter help to access this guide in-program, or use ref to get the quick-reference guide. The default soundpack is sounds which you can import (IMP sounds) to access many basic sounds, or you can load it directly to scope out how they are created.
The Pebble code language is modular, which means that all the sounds, instruments, and patterns are created by combining and arranging different modules, each of which typically performs a simple function (like addition, or changing volume).
Portable Forth written in 'C' for most 32 and 64-bit platforms.
PForth is written in 'C' and can be easily ported to new 32 and 64-bit platforms. It only needs character input and output functions to operate and, therefore, does not require an operating system. This makes it handy for bringing up and testing embedded systems.
PForth also works on desktops including Windows, Mac and Linux and supports command line history. This lets you develop hardware tests on a desktop before trying them on your embedded system. But pForth is not a rich and friendly desktop programming environment. There are no GUI tools for developing desktop applications. PForth is lean and mean and optimized for portability.
PForth has a tool for compiling code on a desktop, then exporting the dictionary in big or little endian format as 'C' source code. This lets you compile tests for an embedded system that does not have file I/O.
PForth is based on ANSI-Forth but is not 100% compatible.
Liquid is a template language created by Shopify. It's available as an open source project on GitHub, and is used by many different software projects and companies.
This reference documents the Liquid tags, filters, and objects that you can use to build Shopify Themes.
Of course, this applies to anything else that uses Liquid as its templating language.
Melody is a language that compiles to ECMAScript regular expressions, while aiming to be more readable and maintainable. This:
16 of "na";
2 of match {
<space>;
"batman";
}
turns into this: /(?:na){16}(?: batman){2}/
What can you do with Vision BASIC? Pretty much anything you want to. Speed will no longer be a problem! Why? Because on it's own, Vision BASIC is VERY fast! But when you need to crank out even more speed, all you need to do is insert machine language anywhere you wish to. Yes, you can actually type machine language instructions right next to BASIC commands! You won't need to load in external machine language files, and you won't need to poke machine language code to memory. This is because Vision BASIC also doubles as an assembler – you can write BASIC programs with it or machine language programs with it, or a blend of the two!
Vision BASIC also includes a whole new batch of commands to help you realize your programming dreams! Need sprites? Vision BASIC's got you covered! Need sound and graphics? Yep, gotcha covered there too! Vision BASIC was designed to greatly minimize your need to POKE around with all those crazy registers. In fact, you might never need to POKE again! And if you find yourself needing a command or function that isn't available, you can simply create it yourself – by creating the needed subroutine and calling it by whatever name you choose to give it. These "user defined" commands and functions can be saved into separate files and added to your programs whenever you need them!
Pyodide is a Python distribution for the browser and Node.js based on WebAssembly and makes it possible to install and run Python packages in the browser with micropip. Any pure Python package with a wheel available on PyPI is supported. Many packages with C extensions have also been ported for use with Pyodide. Comes with a robust Javascript ⟺ Python foreign function interface so that you can freely mix these two languages in your code with minimal friction. This includes full support for error handling (throw an error in one language, catch it in the other), async/await, and much more.
When used inside a browser, Python has full access to the Web APIs.
Github: https://github.com/pyodide/pyodide
Online REPL console: https://pyodide.org/en/stable/console.html
Inform is a programming language used for interactive fiction and other creative purposes. Most users engage with Inform as an app on their devices: there are apps for MacOS, Windows, Linux and Android, but in the centre of each is the same core compiler and software. This website is part of the Github repository for that core, which is written as a "literate program", meaning that it is compiled both to a "woven", human-readable version as well as a "tangled", computer-executable version. You are now reading the woven version.
This is a proof-of-concept implementation of CPython that supports multithreading without the global interpreter lock (GIL). An overview of the design is described in the Python Multithreading without GIL Google doc.
The proof-of-concept works best on Linux x86-64. It also builds on Linux ARM64, Windows (64-bit), and macOS, but you will have to recompile extension modules yourself for these platforms. The build process has not changed from upstream CPython.
The proof-of-concept comes with a modified bundled "pip" that includes an alternative package index. The alternative package index includes C extensions that are either slow to build from source or require some modifications for compatibility.
The GIL is disabled by default, but if you wish, you can enable it at runtime using the environment variable PYTHONGIL=1
. You can use the existing Python APIs, such as the threading module and the ThreadPoolExecutor class.
Still maintained and under development - tracks v3.9.x!
batari Basic (bB) is a BASIC-like language for creating Atari 2600 games. It is a compiled language that runs on a computer, and it creates a binary file that can be run on an Atari 2600 emulator or the binary file may be used to make a cartridge that will operate on a real Atari 2600.
Lain is a LISP dialect used as a templating and scripting engine.
A lightweight BASIC interpreter written in standard C. It's aimed to be embeddable, extendable and portable. It is a dynamic typed programming language, reserves structured syntax, supports a style of prototype-based programming (OOP), also implements a functional paradigm by lambda abstraction. The core is written in a C source file and an associated header file. It's easy to either use it as a standalone interpreter or embed it with existing projects.
A version of it is embedded in WWIV these days.
"Commodore BASIC" (cbmbasic) is a 100% compatible version of Commodore's version of Microsoft BASIC 6502 as found on the Commodore 64. You can use it in interactive mode or pass a BASIC file as a command line parameter.
This source does not emulate 6502 code; all code is completely native. On a 1 GHz CPU you get about 1000x speed compared to a 1 MHz 6502.
Full text indexing and search in go. Index any data object in your software: Text strings, numbers, dates, JSON. Extensible. Aims to have smart defaults. Multiple query types supported, even multiple natural languages. Aims to be easy to use: Three lines of code to index, another three lines to search.
This symbolism dictionary endeavors to provide some possible cultural significances of various symbols, and suggest ways in which those symbols may have been used in context. Most symbols are not code signals, like traffic lights, where red means stop and green means go, but part of a complex language in which green can mean jealousy or fertility or even both, depending on context. It is up to each of us to explore works of art sensitively, and decide for ourselves how the symbols in each work function. This website is offered as an aid in that enriching activity.
A fascinating blog post on twenty-first century terminology (in particular, transhumanist terminology), what the terms mean, links to more information, and how they're manifesting right now.
Ambrose Bierce's Devil's Dictionary, updated for the 21st century.