ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQ
1
@dropdownProjectRemix StudioFOAMEnso (was Luna)Red (not FoC)DynamicLand (not FoC?)Unison (not FoC)Cranq (formerly flowCODE)YazzJaiValOS (Valaa Open System)InstadeqLamduGlanceCurvWaspKayiaOnex/Object NetworkSubtextObjective-SInfusionUltorg (formerly SIEUFERD)ParasailLobsterTree NotationLESHestHilltopCeptreFreewheeling AppsBeadsMaracaDarkMechLynxtoolLeibnizUnitMuTelivaEveRestructorAardappel
2
Primary dev(s)Gerd Stolpmann, Chris Vermilion, Didier Prophete, Simon Hampton, Fred Im, Tyler Lentz, Shritesh Bhattarai, Benedikt Becker, Arvind ThyagarajanKevin Greer Wojciech Daniło, Marcin KostrzewaNenad RakocevicBret Victor, Luke IanniniDan StockerZubair QuraishiJonathan BlowIridian Kiiskinen, Ville Ilkkala, Ilari KajasteMariano Guerra, Javier Dall' AmoreEyal Lotem, Yair ChuchemRobbie Gleichman, Daniel GarciaDoug MoenMartin Sosic, Matija SosicDavid BroderickDuncan CraggJonathan EdwardsMarcel WeiherAntranig Basman/Fluid ProjectEirik BakkeTucker TaftWouter van OortmerssenBreck YunitsDavid PiepgrassIvan ReeseDan SwirskyChris MartensKartik AgaramEdward de JongJon WhiteheadPaul Biggar, Ellen ChisaCorey MontellaTim BabbKonrad HinsenSamuel TimbóKartik AgaramKartik AgaramChris Granger, Rob Attorri, Josh Cole, Corey Montella, Wouter van OortmerssenWouter van Oortmerssen
3
Unique Selling Proposition (or your elevator pitch!)Feature-Oriented Active Modeller: A Cross-language cross-tier framework which generates many interoperable software components (features) from high-level specificaions (models). Luna is a data processing and visualization environment built on a principle that people need an immediate connection to what they are building. It provides an ever-growing library of highly tailored, domain specific components and an extensible framework for building new ones.A language with two levels, one for system programming, and one for general purpose programming. The system language is custom built to allow smart contracts in cryptocurrency, the general purpose language builds on the long history of Rebol, with fresh improvements, and a much wider platform span. Red is a very powerful and compact language.Programming made tangible (edj best guess)
A physical medium for thought made manifest
Code is stored not as text, but in AST form, and each unique AST is given a hash so it becomes immutable.Visual programming language and development platform.

Reduces cross-organization communication overhead related to code, and boosts productivity by shortening path between intent and implementation.
Low code tool inspired by Visual Basic:

- Uses Javascript for events and actions
- All code stored by Hash on the source content
- Component editor built in
- All aps have an embedded Sqlite database and DB schemea and data editor
- Source control system built in
- Most apps ( including the sqlite data) can be exported to HTML so that reports can be emailed to colleagues
No Code Data Analysis and VisualizationAn experiment in creating a visual programming environment that's both powerful and easy to learn.A language for live coding of procedurally generated art. 2D, 3D, simple interactive animations. Full colour 3D printing. Text based now, visual programming in the future.Declarative language for building full-stack web apps faster and with less code. Frontend, backend and deployment - all in one concise DSL.Normal people can build and share dynamic digital stuff through a peer-to-peer / decentralised architecture and animate it with accessible declarative programming.The missing link between spreadsheets and programming languages. Visual and tangible like a spreadsheet, general purpose like a programming language.
Architecture Oriented Programming fixes the mismatch between systems and programming languages, making programs concise, expressive and fun to write,Ultorg is a graphical user interface for relational databases. By directly manipulating query results on the screen, users can construct and modify database queries at a level of expressivensess equivalent to SQL-92.A language that makes loops automatically parallel. By the author of one of the leading ADA compilers.The friendlyness of Python at the speed of Rust? Bringing advanced type and lifetime inference to the masses. Initially targetting game development.Tree Notation supports all of the semantic structures in programming—scalars, strings, lists, sets, maps, trees, scopes, expressions, statements, etc—without any syntax characters. It's a very dumb notation that simply splits a document into cells and nodes with scopes, using only spaces, newlines, and indentation.People have learned to avoid custom text formats for data, since we've standardized on JSON and XML. Code is data too, yet every new programming language has its own incompatible notation & syntax tree. LES (stored in memory as Loyc trees) is the first step toward fixing this. It's a flexible C-like language for building DSLs, with a parser simpler than C.A drawing tool with visual programming features. Execution happens in time and space, and the programmer-artist actively participates in execution.High readability, low complexity. Flappy Bird in 91 lines with < 3 code elements per line on average.Ceptre is a rule-based programming language based on a fragment of linear logic (roughly equivalent to multiset rewriting). It has a flexible user-defined type language and is designed to permit rapid prototyping of rule systems, such as game mechanics.Apps that are easy to run, easy to modify, easy to share, run indefinitely without needing updates.

Build simple apps that do one thing.

When two people disagree about the boundaries of the one thing, fork.
Bugs are easy to fix because the system can run backwards as well as forwards. A language so concise and mathematically symmetrical that your specification becomes executable, Progams are reliable and transfer of code bases to new staff is a breeze because programs are comprehendable. Dark is a holistic programming language, structured editor, and infrastructure, for building backend web services. It's for frontend, backend, and mobile engineers.Mech is a language for developing data-driven, reactive systems like animations, games, and robots. It makes composing, transforming, and distributing data easy, allowing you to focus on the essential complexity of your work.Pure functional programming with node+wire; using well-tested UI elements from visual effects software, plus advancements. Marketplace of code where users can share (or sell) their work.Digital Scientific Notation: a formal language designed for encoding scientific models embedded into narrratives (as in Literate Programming). Turing-complete but not really meant for "programming".unit is a General Purpose Visual Programming Language and Environment built with a primary focus on Developer Experience. The unit system is set to grow into a simple and approachable Web Operating System, which is sandboxed by default, enabling a new era of Software Sharing and Collaboration, unifying the currently fragmented Computer Experience.

http://futureofautomation.wikidot.com/muSandboxed platform for end-user programmable appsStructured programming with fully automatic whole program code refactoringGraphical Concurrent Tree Rewriting: Program by example visual programming with concurrent/distributed computing.
4
Active/Dormant/ArchivedActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveActive (struggling for time)DormantActiveActiveActiveActiveActiveActiveActiveActiveActiveActiveDormantDormantArchivedArchivedArchived
5
URLhttps://remixlabs.comhttps://github.com/kgrgreer/foam3https://enso.org/https://www.red-lang.org/dynamicland.orghttps://www.unisonweb.org/cranq.iohttps://yazz.comhttps://www.mrphilgames.com/jaivalaa.comhttps://instadeq.com/lamdu.orgcurv3d.orghttps://wasp-lang.dev/https://kayia.comhttp://object.networkhttp://www.subtext-lang.org/https://objective.st https://docs.fluidproject.org/infusion/development/https://vimeo.com/372006027https://adacore.github.io/ParaSail/http://strlen.com/lobster/treenotation.orghttp://loyc.net/lesPrivatehilltop-lang.org
https://github.com/chrisamaphone/interactive-lp
Web editor prototype: http://microceptre.glitch.me/
http://akkartik.name/freewheelingbeadslang.orgmaraca-lang.orgdarklang.commech-lang.orglynxtool.com
http://science-in-the-digital-era.khinsen.net/#Leibniz
https://unit.mdhttp://akkartik.name/aboutwitheve.comhttp://strlen.com/restructor/http://strlen.com/aardappel-language/
6
Github URLhttps://github.com/kgrgreer/foam3https://github.com/enso-org/ensohttps://github.com/red/redhttps://github.com/unisonweb/unisonhttps://github.com/Cranq-iohttps://github.com/yazz/yazzhttps://github.com/valaatech/vaultgithub.com/lamdu/lamduhttps://github.com/rgleichman/glance/github.com/curv3d/curv
https://github.com/wasp-lang/wasp/
NONEhttps://github.com/DuncanCragg/https://gitlab.com/mpwmo/ObjectiveSmalltalkhttps://github.com/fluid-project/infusionN/ANONEhttps://github.com/aardappel/lobsterhttps://github.com/treenotationhttps://github.com/qwertie/ecsharpPrivate
https://github.com/chrisamaphone/interactive-lp
Many; see bottom of http://akkartik.name/freewheelinghttps://github.com/magicmouse/beads-examples7 repositories, see website for linksgithub.com/mech-langhttps://github.com/khinsen/leibniz-pharohttps://github.com/samuelmtimbo/unit/https://github.com/akkartik/muhttps://github.com/akkartik/telivaKJhttps://github.com/withevehttps://github.com/aardappel/restructorhttps://github.com/aardappel/aarded
7
Twitter URL (main one for you or project)https://twitter.com/dynamicland1
https://twitter.com/worrydream
https://twitter.com/cranqiohttps://twitter.com/zubairqhttps://twitter.com/instadeqtwitter.com/LamduProjecthttps://twitter.com/wasplanghttps://twitter.com/Duncan__Cragghttps://twitter.com/jonathodahttps://twitter.com/mpweiherhttps://twitter.com/amb26ponderhttps://twitter.com/eirikbakkehttps://twitter.com/wvohttps://twitter.com/treenotationhttps://twitter.com/DPiepgrasshttps://twitter.com/spiralgangliontwitter.com/chrisamaphonetwitter.com/CodingFiendhttps://twitter.com/darklangtwitter.com/MechLanghttps://twitter.com/tr_babbhttps://scholar.social/@khinsen/https://twitter.com/io_sammthttps://mastodon.social/@akkartikhttps://twitter.com/With_Evehttps://twitter.com/wvohttps://twitter.com/wvo
8
Open or commercial or mixcommercialopenopen (I think) mixapparently neither open nor closed: people can visit but there's no public repo; it's a non-profit, but..openmixOpen source, MIT licensewill be open sourceopen core (with potential for commercial plugins)commercialopenFree softwareopen source (Apache 2)Open source (with plans to build additional commercial products on top)commercialcore open, may commercialise i/o, adaptors, devices, content..Research prototypeOpenopenCommercialopenopenopenopenCommercialopenopenopenmixopenmixopencommercialopenopenopen; forks encouragedopen; forks encouragedopenopenopen
9
If commercial, name of companyRemix LabsOriginally developed at GoogleNew Byte Order Inc.Red Foundation, et al.non-profitUnison computing, public benefit corp.Cranq LtdPrivately fundedThekla IncValaa Technologies Ltd.gnandooKayiaindividualindividualUltorg LLCAdaCore sponsoredindividualLunchBox SessionsindividualindividualindividualDark IncindividualVC funded (2.3 million from Andreesen/Horowitz)individualindividual
10
Team size
(plz order project cols by this!)
14+128~7~471 full time staff (Zubair)4332222111111111 full time11 (plus 5 artists)111111 (project shrunk in july 2020)111131411
11
Year project codebase started
(then order project cols by this!)
201720112018201520142019201320142017Last version started in July 2019
20122015201620191997Settled on state rewriting model in 1985
Added distributed state updates in 1992
Implemented multiple times in many languages
Nearest to current form gestated 2002..2009
200520052008Since 2008 (commercial since 2016)2009201120122012research started 2013-ish
prototyping started 2015
production started 2019
201420142022long gestation20172018201820192020202020142022201620152016
12
CountriesUSA, Germany, Belgium, Chile, Spain, FranceCanadaPolandChina, Europe, US, SerbiaUSAUSAUK, HungaryGibraltarUSASuomi (aka Finland)Argentina, Portugal, GermanyIsraelUSA, remoteCanadaCroatiaUSAUKUSAGermanyCanada, UKUSAUSAUSAUSA, IndiaCanadaCanadaIsraelUSUSAUSAUKUSAUSAUSAFranceUSA, BrazilUSAUSAUSAUSAUK
13
Most unusual feature(s)Near-general-purpose node & wire based visual live-reactive-programming system that exports executables to a .remix file format which can run on a single platform webcomponent. It packages an immutable row-based database along with the full runtime on the following surfaces: web, flutter android, flutter ios, native ios appclips, native ios widgets. Unusually broad scope. Meant to solve the whole problem of software development (for certain types of software), and not just a point-solution, since no point-solution can solve the problem of the need to integrate between so many point-solutions. FOAM models are themselves modelled as FOAM models, making the system very consistent and relatively compact.Bidirectional graphical and textual programming. You can change the graphics and it will update the code, or change the code and it will update the graphics. A very concise notation, with great combining power. Special attention is paid to producing Crypto contractsYou work with paper on tables animated via projectors on the ceiling, that have cameras reading dots on the page which form a barcode identifying the code.Designed to be distributed-first. Code is stored in a database, not text files.Compiles to multiple languages
Hierarchical graph
Forced focus on single component & its 1st-degree children
Global, indexed component repository
Strong emphasis on user experience
Emailable apps: All apps have a built in SQLite database with a Rails like migration schema. All apps can be saved as HTML, which saves the SQlite database schema, AND the data. That single HTML file can be emailed around which means emailable appssuper high performance at execution timeNo loops, no text entry, formula calculator, everything is draggable.Shape programs are compiled into GPU shader code for fast preview, animation and interaction.Generates nice code in web tech stack of your choice (currently only React, Redux, Node, Mongo). Allows extending via existing web technologies (js, html, css, ...). Not a general programming language (for now).Works with data as an object model. Code is not stored in text files but as data, and you work with it directly in AST form.There is no concept of an "application", it's more like a global cyberspace or metaverse. Each object is autonomous. Objects communicate through state updates.WYSIWYG semantics: code is not a dead text fed into a black box; code is live executing data structures that are fully visible. No need for a debugger. Supports Programming by Demonstration.Possible to overlay program designs from multiple authors using a CSS-like syntaxA single visual representation shows the structure of the current database query overlaid on its own result. To achieve this, the data model of results are extended beyond the flat tabular model of SQL, to the so-called nested relational data model.automatic parallelization of codeCan infer static types and compile time memory management without the help of the programmer, goes further in this aspect than existing such languages.There are no syntax characters -- no parens, no brackets, no quotation marks, etc.LES v2 is backward-compatible with JSON. LES has no semantics, but a universal Lisp-style macro system called LeMP (Lexical Macro Processor) is built on it. Enhanced C# is an example of a programming language built upon Loyc trees (same data structure as LES) and LeMP.Rich drawing features that the programming model emerges from. You see data flowing through your system like balls in a Rube Goldberg machine. Debug the running program by pausing, rewinding, and moving in slow motion.Every value-associated element has a built-in event handler that is triggered when the value changeslinear logic programming and stagesPannable, zoomable, spatial UI
Browser-like box model in 50 LoC
A replacement for Javascript, Java, and Swift. Generate web apps, mobile apps, and desktop software from a single code base. Uses deduction to dramatically reduce the amount of code that needs to be written.Compiles to native machine code. "Pure" visual language; no grammars in the interface or implementation. Heavy emphasis on design simplicity and domain agnosticism (providing small, simple, and complete set of generic primitives).Based on term rewriting. Fully declarative. Syntax designed for embedding into prose, like mathematical notation.Purely visual (no textual code); Automatic Graphic Layout (using physics engine); Gesture Based; Program by Drawing;Bootstraps from machine code.
Has an ugly, verbose syntax.
To minimize machine code written, optimizes for good error messages rather than clean syntax.
Code is designed to be run interactively rather than passively read.
You can build any app you like -- as long as it runs within a text-mode terminal.Automatically introduces (and removes) functions to improve the quality of code (DRY abstraction). Visual environment with type and structured error feedback.Visual/Graphical programming language based on tree rewriting (by example). Can elegantly do state & concurrency.
14
It's a programming languageyes: a visual programming language sitting atop a homegrown functional programming languageno, but it feels like oneyesyesRealtalkyesMore like a markup language for dataflow graphsYes, but based on Javascriptyes; a greatly cleaned up C++yes; extends JS with a transparent ORM to global object spaceyesyesIt's a visual programming language for a subset of Haskellyesyesyesyes (Onex)yesyesno, is a JS framework, but in a sense - aims to disintermediate languagesnoyesyesit's a syntax. you can build programming languages on top of it we call "tree languages"No, it's a foundation for building programming languages (and DSLs, build systems, etc.)it's a programming systemyesyesno; use LuayesyesyesyesyesnoyesMuno; use Luayesyesyes
15
It's an IDEyes: Studio is a node-wire IDE for the authoring of software in "Mix" (the language the programmes are expressed in)noyesnokinda!yesyesnoincludes an IDEyesyesyesyesnoyesyesyesparts includedeventuallyyesnonononoit's a programming systemyesnoyesnonoyesyesyesyesyesMufor modifying existing apps: yes
for creating new apps: no
yesyesyes
16
It's an OSI'm not sure yet.....nononoyesnonoIt has a scheduler and a process model. It runs multiple child NodeJS processes so that simple rogue processes do not bring the system downnono (wrt hardware), debatably yes (wrt applications)nononononoeventuallyyeseventuallynoin a loose sense, will have "drivers" etc.nononononoit's a programming systemnonono; works with any desktop OSnononoyes (see https://gitlab.com/cmontella/hivemind)nonoyesMuno; works with any desktop OSnonono
17
Live programmingyesyesyesyesyesyesyessuperfast compileryesyesyeshopefullyyesyesyesyesyesyesyesinstant startuptree languages can supportnoyesnonoyesnot yetyesyesyesyesyesnonoyesnono
18
New "paradigm" (conceptual programming model) or using an existing one (e.g. Functional Programming, Logic Programming, FRP, OO, etc)?probably a mix of existing ones?Does appear to have a novel modelYes, in that the physical objects interact with one another and Realtalk has its "wish" system and a blackboard-like state databaseNew paradigm: was called Functional Observer but may call it Distributed Functional Observer.

An object's next state is a function of its current state and the state of peer objects it observes through links - which may be links to remote objects
19
Declarative or Imperativebothbothvisual direct manipulation language, bidirectional with textimperative, kinda like LISP without parenthesesmixed? there's Lua, C, Haskell, python etc plus a state-driven assertion system and when/then triggersmixImperativeimperativeboth? scripts are imperative, ui is declarativedeclarativedeclarative with support for imperativefunctionalimperative style programming in a pure functional languagedeclarativedeclarativeDeclarativeyesyesdeclarativedeclarativeimperative, automatic parallelizationimperative, functional, oo, in that ordertree languages can be anyeither/bothit dependsdeclarative with some imperativedeclarativeimperativecombines declarative, imperative, deductive, and constraint-based featuresvisual direct manipulation + code snippetsdeclarative, mostlyfunctionaldeclarative
functional, imperative and declarative included
imperativeimperativedeclarativemostly functionalmostly functional
20
static, strictly, dynamically typed, untypedstrictDepends on target language. You can provide types for JS which are checked at runtime. Required for Java.based on Haskelldynamicstatic, strictlystatic, strictlyUntyped mostly, except for Custom Components which use typing for type hints in the editorstatic, strictlydynamicdynamically typedstaticstaticdynamic. 6 primitive types. No user defined types (they aren't needed, just as Self doesn't need classes). Statically typed subset compiles into efficient GPU shader code.dynamictypes are syntax, "in the eye of the beholder"staticmostly gradual untyped, will have "type goggles"staticstatic, inferred + flow sensitive specializationtree languages can be anyanydynamic-ishstaticstrictly typeddynamically typedstatic, strongly typed with an escape hatchstatic, strictlyuntypedhindley-milnersemi-statically typed (static coarse-grained typing, dynamic fine-grained)Mudynamically typeduntypedstatic, inferreddynamically typed
21
Pure functional in whole or in partyesobject-functionalyesnoyesin partnonopureyespurepure functionalnoPure functional in part: uses tree/graph rewriting so doesn't have a higher level concept of "function".Pure functional looking in,
imperative looking out.
No. Separating out state-oriented programming via storage combinators probably allows the algorithmic parts to be more pure, but that's conjecture at this point.functional at the leaves, stateful at the corepureimpure (has e.g. very powerful higher order function features)tree languages can be anyanynoin partnonohyperfunctional (code compiles to a thicket of composed calls, 2 function calls per line avg)almostnopurepurepure (the part that is functional)nononoimpureimpure
22
Based on logic programmingnonononononononononoyesnonono, logic programming should be implementable in straightforward waysnounsure (perhaps in the same sense as SQL is based on first-order logic)used to have backtracking, was removedyou can build logic tree languagesN/Anoyesnokindanoseminononononoyesnono
23
Elements of constraint programmingnonononoIn development so that methods can be found based on example inputs and outputsnot yetnononoyesnonoYes, polymorphically. One of the goals (achieved!) was to be able to express constraint programming naturally + to abstract over itsome, via "lenses to self"nonoyou can build constraint tree languagesN/Anononoyes, lots of constraint language usednoyesnononononoyesnono
24
Based on FRPi guess a littleSupports FRP, but not a core featureyesnofundamentally, but hiddenit's reactive and functionalnonoeasy-to-use mix of FRP and Elm ArchitecturenononoNo. "FRP" is almost always incorrect terminology. Does include dataflow as an architectural style.very looselyunsure (not sure of the definition of FRP; Ultorg is reactive and functional, and permits set operations, but does not expose an explicit "map" type, for instance)used to, removedyou can build frp tree languagesN/Anoif spreadsheets are FRP, then yes (mostly), but with Eve-like code blocks instead of cellsnonohas event model in the languagea littlenonoyesnononono
25
Based on Object Oriented Paradigm?you could certainly mimic the paradigm based on your visual programming choicesyesbased on REBOLnoyes, Visual basic 6yesyesnononononoYes. Includes OO as an architectural style, and also largely implemented via metaobject protocols.nonovery much optionallyyou can build oo tree languagesN/Anonononocomplete opposite of OOP, no NEW or DISPOSE in languagenonononoyesnononono
26
"State first" or "State last"?
state firstState is explicit through DAO's and Contexts.State first (or mixed with visibility of the program printouts)State lastState lastState firstExpressions are referentially transparent. No objects, values are immutable. But there are mutable local variables, assignments, a while statement, to support imperative programming style.State firstState firstState and code are coequal in dev mode. State-only in user mode.state first where appropriate. Which is oftenState firststate firststate firsttree languages can be anyeither/bothextremely state firstState firststate-firststate lastState firstState firststate first (considering terms as "state")state firstState lastState laststate laststate last
27
Homoiconic (code and data look the same; self-modifying code)yesyesyes, you can also create domain specific languages easily.nononoyou can modify the code after the parsing pass, compiler gives you full ability to modify the code via an innovative feedback into the parser.in essence; source code Media's are first class resources of the data modelno code representation, "code" is the visual representationHopefully will support self-modificationnonoyesyesnot in terms of syntax as in LISP; yes in terms of semanticsComplex object literals enable this, but it's not really a core featuresignificantlynonoyesyesnonononono self-modifying code, but you do have a fancy preprocessor with aliasing, shortcuts, compile time IF, etc.noyesnot currently, but likely at some point.yes, it's terms all the way down
yes (code can be turned data and vice-versa)
nonoyesnokinda, functions and data structures rewritten using same graphical rules
28
Target audience skill level: beginners/intermediate/advancedintermediate, eventually ideally beginnersintermediate to advancedall rangesintermediateallall rangesVisual Basic 6 crowdintended for 3D game developmentall rangesall rangesall rangesalltech-savvy artists & 3D printer enthusiastsbeginner and intermediate web developersallall rangesbeginnersintermediateintermediateintermediateintermediate - advancedallallartistsall rangesallintermediateall rangesintermediateadvancedall rangesearly: non-coders. late: everyone, coders included.
intermediate, domain experts (computational science)
beginners/intermediateintermediateintermediateall rangesall rangesbeginner - intermediate
29
Learning curve - easy to start, empower users, etcsteep to start, but widely powerful once familiar"mostly enable easy adoption" and "empower users""mostly enable easy adoption" and "empower users"give user a tactile method of interacting with the computer"mostly enable easy adoption" and "empower users"This is just a toy language, a fun enterprise Dev experiment some people have used to build throwaway API front ends"mostly enable easy adoption" and "empower users""mostly enable easy adoption" and "empower users". tiered APIs from easy to powerful.easy adoptionquickly empower normal peopleeasy adoption by casual users"mostly enable easy adoption" and "empower users"easy adoption (by any frequent Excel user)a more solid Python-like experiencetree languages can target complete non-programmers (even with pen and paper) or the most power users on the planetwhat is this row for?Empower expert userseasy adoptiongoal is to improve productivity of programming by a factor of 10, by eliminating most of the common errors, and ensuring all bugs are repeatableeasy adoptionfor motivated users at this timeprogram without having to think about abstraction: copy & paste your code and let the IDE refactor ittries to be beginner friendly by replacing variables by examples, and being graphical
30
language programmed inElm / Rust / Ocaml / C / smatterings of a few others...JS, Java, SwiftRust and ScalaRed (itself), REBOLLua, Python, C, Haskell etcHaskellTypeScript, CranqLang2013 - 2016, Clojure.

2016 - present, Javascript
C++JSfrontend: javascript

backend: elixir
HaskellHaskellC++HaskellCCTypeScript/ReactObjective-C and itself.JavaScriptJavaC++any. host language implementations in typescript, c++, python, more in the worksC# (but have been wanting to port it elsewhere since the beginning)CoffeeScriptdesigning first, then we'll seestandard ML and TypeScriptLuaAS3, JStypescriptDarkrustbackend: python + llvm; front: JS/reactPharo SmalltalkVanilla JavaScript (TypeScript)C++ for OS and a tiny bootstrap of userland; then self-hosted. Can build itself without C++.Luarust, jsC#Java
31
Web-basedyesstrong web support, but not essentialnosome supportyes + CLI + IDE toolingyesnocurrentlyyesnonot currentlynext version will beyesyesnoBrowser basedNot "based". Identifiers are URIs and (in-process-)REST architectural style is supported natively.fundamentallynonohas dedicated Wasm backendlots of tree stuff is on the webnot specificallyyesweb-based editor in progress: http://microceptre.glitch.me/noonly for product delivery, development on Mac/Winnoyesyesyesnoyesnonoyesnono
32
Development platforms supported (mac, win, linux, ios, android, web)mac, win, webmac, linuxmac + win + linuxmac + windows + linux + Ethereum contracts + Raspberry PiLinuxall (to different extent)NodeJS, Docker, Kubernetes, or Ubuntu Snapat least win + mac + linuxweb
mac + windows + linuxmac, linuxmax, linuxalways-on, no dev phaseBrowsermac, linux (incl. Raspi) + win/android via GNUstepMacOS, Windows, Linuxmac + windows + linuxwin + linux + macany. supports pen and paper too!anywebmac/win/linuxwindows + linux + macmac + win desktop, Linux (with Wine installed)web, currently focused on generating server-side back-endsmac + windows + linux + webbrowserlinux + mac + windowsall (web)*nixmac, windows, linuxwin (.net + wpf)win + linux + mac
33
Output target platforms (mac, win, linux, ios, android, web client, web server, game consoles, VR/AR, embedded)mac, web client, web server, ios, androidJava Android and server, JS web and nodejs, Swift iOSmac + win + linuxnoLinuxanything program components supportweb, and WebVR (via Aframe). AR in developmentmac + win + linux + consolesweb
mac + windowsmac, linux, maybe VR in futurewebLinux PCs, bare-metal nRF52Browser, desktop via electronmac, win, web via electron, some IOT via NexusMacOS, Windows, Linuxmac + windows + linuxwin + linux + mac + ios + android + wasm/web + steamvrtree languages run on anyalmost any (via Blazor, mono, .NET Core)weball programs are interpretedwindows + linux + macweb apps, mac + win desktop, Node.JS server side, Android/IOS for mobilemac, win, weblinux backend server to support web appsmac, win, web, embeddedanything LLVM will targetsame (live environment)all (web)Mumac, windows, linuxwin, possibly monowin + linux + mac + android?
34
Tools available (compiler, interpreter, debugger, lint)visual builder, code-generator, eventually a debuggercode-generatorscompiler, interpreter, not sure if debugger availcompiler, editor, live data inspectorcompiler, editor, basic debuggerlive codingat the moment "live debugging" and transpiler to JSlive coding environmentcompilerno dev outside IDE features offered "in the space"IDEInterpreter, compiler (arm64), CLI, embeddable frameworks, Smalltalk-style IDE, Web-Dev environment, live-graphical coding, live-GUI dev, web-server, etc.fully visual environment; automatic visualization of nested hierarchical results; highlighting spreadsheet-like formula editorcompiler uses LLVM, debuggercompilercompiler compilers, grammar builders, interpreters, debuggers, web frameworks, syntax highlighter generators, type checkers, etcparsers, printers, syntax highlighting for Notepad++ and Visual Studiolive graphics environmentcommand-line interpreter, browser editorN/Atranspiler, debugger in progresscompilerinterpreter and debugger integrated in editor/languagecompilerlive coding
authoring system with exploration functionality
live codingcompiler; time-travel debuggerN/AIDE + compilerIDE + compiler
35
Networked to the core, or provided by a librarylibrarynetworkedin corecorelibrarylibraryin librarycorenonoyesto coreSelf-contained distributed execution, eventuallyYesto whatever extent JS is networkeddelegates execution to external database server (PostgreSQL, MySQL, Oracle, or Microsoft SQL Server)nono, but would be cool for a tree language that did this!nonononot yet (until LÖVE v12 comes out)in languagein coreyesnonocorenoyes, can run distributed computations
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100