User Tools

Site Tools


notes:language-inspiration

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
notes:language-inspiration [2025/07/28 13:19] – Created, exploring Realtalk & WWC syntax historical cousins adminnotes:language-inspiration [2025/07/28 14:29] (current) – Add more color to the DL section admin
Line 1: Line 1:
 ====== Inspirations and historical connections for the folk programming language ====== ====== Inspirations and historical connections for the folk programming language ======
  
-===== Dynamicland | Realtalk =====+===== Note =====
  
-  * [[https://cwervo.com/|Andrés]] and [[https://omar.website/|Omar]] met at Dynamicland in 2017their experiences with Dynamicland'[[https://dynamicland.org/archive/2016/Realtalk_Toys|Realtalk]] shaping their [[https://github.com/FolkComputer/folk/commit/16e07238b593c0a2253bc29deb117061b3427f8d|creation of folk in 2022]] +//**Note**:// there are more recentdirect ''folk'' inspiration papers we reference in the //[[https://folk.computer/links#programming-language-db-implementation|Programming language & DB implementation 
-  While they both used Realtalk extensively, when they moved to New York and began building their open source tangible computing language they picked a different architecture ([[https://www.tcl-lang.org/about/|Tcl]] & C heavy, with [[https://compileralchemy.substack.com/p/apriltags-why-robotics-invented-its|AprilTags]] as the core fiducial marker) and started anew.+]]// section of our **[[https://folk.computer/links|links page]]**What follows below is **Andrés' attempt** to ground our recent (from ~2005 2025) citations to the deeper history of programming language design.
  
 ===== The historical roots of Wish, When, and Claim ===== ===== The historical roots of Wish, When, and Claim =====
- 
-//Note: there are many more historical roots and papers we reference in the [[https://folk.computer/links#programming-language-db-implementation|Programming language & DB implementation 
-]] section of our [[https://folk.computer/links|links page]]. What follows below is **Andrés' attempt** to ground our recent (from ~2005 - 2025) citations to the deeper history of programming language design  // 
  
 ==== When ==== ==== When ====
Line 33: Line 30:
  * ''Claim'' is the direct descendant of this tradition, providing a lightweight but powerful way to assert formal guarantees about a program's behavior at runtime.  * ''Claim'' is the direct descendant of this tradition, providing a lightweight but powerful way to assert formal guarantees about a program's behavior at runtime.
  
 +===== Dynamicland | Realtalk =====
 +
 +  * [[https://cwervo.com/|Andrés]] and [[https://omar.website/|Omar]] met at Dynamicland in 2017, their experiences with Dynamicland's [[https://omar.website/posts/notes-from-dynamicland-geokit/#background-on-realtalk|Realtalk]] (a superset of [[https://www.lua.org/|Lua]]) being an inspiration for the [[https://github.com/FolkComputer/folk/commit/16e07238b593c0a2253bc29deb117061b3427f8d|creation of folk in 2022]].
 +
 +==== Realtalk 2017 ====
 + * [[https://dynamicland.org/archive/2017/Realtalk|Realtalk 2017]]
 +    * Omar spent a few years as a volunteer and then a researcher at Dynamicland and built many things at Dynamicland including, but not limited to:
 +    * [[https://dynamicland.org/archive/2020/Web_browser|A web browser]]
 +    * [[https://dynamicland.org/archive/2018/Geokit|Geokit]] (more context [https://omar.website/posts/notes-from-dynamicland-geokit/|in the form a fantastic blog post from Omar])
 +    * [[https://dynamicland.org/archive/2018/Pi_bots|Pi bots]] — Raspberry Pis on wheels that got their instructions to drive from programs placed on the table
 +    * [[https://dynamicland.org/archive/2019/Clause_cards|Clause cards]] (see also: [[https://dynamicland.org/archive/2019/Clause_card_music_sequencer|a musical sequencer built with clause cards]]
 +    * [[https://dynamicland.org/archive/2019/Zone_timelines|Zone timelines]]
 +    * [[https://dynamicland.org/archive/2019/Dynalamps|Dynalamps]]
 +  * Andrés was a volunteer at Dynamicland from 2017 to 2019, teaching workshops on Realtalk, giving tours, and writing in Realtalk to make [[https://dynamicland.org/archive/2017/ILLUMINATION_booklet|this "book for learning to draw pictures in Realtalk. Each page is a sample program intended to be edited in place."]], [[https://dynamicland.org/archive/2018/IAMBICland|IAMBICland]] (a program to display [[https://www.opensourceshakespeare.org/views/sonnets/sonnets.php|all 154 of Shakespeare's sonnets]] by placing cubes in the ones, tens, and hundreds position of a number-selector-page), and [[https://cwervo.com/projects/dynamicland-experiments|a few other things.]]
 +  * While we initially were inspired by the Realtalk paradigm, there are hundreds of influences in [[https://steshaw.org/plt/|programming language theory]] and, in particular, the [[https://prologhub.com/50-years-prolog-and-beyond/|history of ProLog]], with particular attention to the influences in the //[[https://folk.computer/links#programming-language-db-implementation|Programming language & DB implementation
 +]]// of our [[https://folk.computer/links|links page]]
 +  * Both ''folk'' and ''Realtalk'' are reactive DB systems implemented as [[https://en.wikipedia.org/wiki/Metaprogramming|metalangauges]] (in Lua and Tcl, respectively)*, though they have diverged in their implementation of [[https://github.com/FolkComputer/folk/tree/main/virtual-programs|OS primitives]] and the [[https://folk.computer/guides/what-folk-can-do|functionality]] as a result of Folk being in New York City, with a different group of people and concerns about what programs are possible in this tangible paradigm.
 +  * ''*''
 +    * ''folk'''s architecture:
 +      * [[https://www.tcl-lang.org/about/|Tcl]] & C language internals
 +      * Fiducial: [[https://compileralchemy.substack.com/p/apriltags-why-robotics-invented-its|AprilTags]]
 +    * Realtalk (2017)'s architecture:
 +      * Lua core, Lua JIT with C
 +      * Fiducial: [[https://dynamicland.org/archive/2017/Dotframes|custom dot recognizer known as "dotframes"]]
 +  
notes/language-inspiration.1753708791.txt.gz · Last modified: by admin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki