Skip to content
An experimental programming system that combines modern research in programming languages and artificial intelligence. Typed, purely functional concatenative code for scripting the web β€” and others! With deep learning! πŸš€
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs Did a bunch of things the last few days, committing just to get back Feb 28, 2019
src Adding `{ brackets }` around continuation regions, instead of bare Mar 18, 2019
.gitignore Unbreak REPL, ignore bin. Feb 8, 2019
LICENSE Add a LICENSE file. Jan 3, 2019
README.md Synthesis is done in `Bots`, not `Functions`. Mar 8, 2019
book.toml Adding mdBook documentation (again?) Feb 25, 2019
magic-word.sln

README.md

Magic Word

Donate using Liberapay ko-fi

An experimental programming system that combines modern research in programming languages and artificial intelligence. Typed, purely functional concatenative code for scripting the web β€” and others! With deep learning! πŸš€

Contents

About

Magic Word is a collection of compilers and services written in F# and targeting the web platform. The common theme is ABC, a purely functional bytecode designed for livecoding and program synthesis.

Getting Started

dotnet build at the top-level will build all projects. At the moment Magic Word is vaporware, but some time real soon, dotnet run --project ./src/MagicWord.Wiki will start the wiki, which will walk you through further configuration and usage.

magic-word.sln is a .NET solution containing a number of projects:

MagicWord.Functions

MagicWord.Functions provides evaluators for the purely functional bytecode, known as ABC, that powers the Magic Word project. Its unique feature is its rewriting semantics, that allows programs to be paused, migrated, and resumed at arbitrary points during execution.

MagicWord.Bots

The Magic Word project takes the view that programming language theory should embrace techniques based on statistics as well as logic. MagicWord.Bots implements neural language models trained on selected corpuses of ABC code. These models are used for program synthesis, taking inspiration from several recent developments in machine learning, such as Language Models are Unsupervised Multitask Learners and Neural Program Synthesis with Priority Queue Training.

MagicWord.Wiki

MagicWord.Wiki implements a web server that allows collaborative community development of ABC programs.

MagicWord.Media

MagicWord.Media implements conversions between ABC and various multimedia formats: audio, images, video and so on. A typical example is a function from infinite, continuous two dimensional space to some color space being interpreted as an image (e.g. R^2 -> R^4).

Documentation

Documentation created with mdBook is available on GitHub Pages.

License

Magic Word is available under the terms of the GNU Affero General Public License, version 3; see the LICENSE file for details.

You can’t perform that action at this time.