Källa (programmeringsspråk)
Paradigm | Multiparadigm : scripting , imperativ , procedural , funktionell |
---|---|
Dök först upp | 2017 |
Stabil frisättning | 2022 (Rook) / 31 december 2021
|
Maskinskrivningsdisciplin | Dynamisk , anka |
OS | webbläsarbaserad |
Licens | Apache |
Filnamnstillägg | .js |
Hemsida | |
Stora implementeringar | |
Safari (Safaris JavaScript är korrekt svansrekursivt ), Source Academy | |
Dialects | |
Källa §1, Källa §2, Källa §3, Källa §4 | |
Influerad av | |
JavaScript , Schema |
Source är en familj av underspråk av JavaScript , utvecklad för läroboken Structure and Interpretation of Computer Programs, JavaScript Edition ( SICP JS). JavaScript-underspråken Källa §1, Källa §2, Källa §3 och Källa §4 är utformade för att vara precis tillräckligt uttrycksfulla för att stödja alla exempel på respektive kapitel i läroboken.
Syfte och designprincip
Under utvecklingen av SICP JS, med start 2008, blev det klart att specialanpassade underspråk av JavaScript skulle bidra till inlärningsupplevelsen. Ursprungligen kallad "JediScript" och inspirerad av boken "JavaScript: The Good Parts" av Douglas Crockford , Source-underspråken följer kapitlen i SICP JS; varje språk Källa §x är ett underspråk till nästa språk Källa §(x+1). Efter det minimalistiska tillvägagångssättet hos SICP JS förväntas implementeringar av Source ta bort alla JavaScript-språkfunktioner som inte ingår i språkspecifikationen.
Funktioner
Källa §1 är ett mycket litet rent funktionellt underspråk till JavaScript, designat för kapitel 1 i SICP JS. Källa §2 lägger till par och ett listbibliotek, enligt datastrukturtemat i kapitel 2. Källa §3 lägger till statistiska konstruktioner, och Källa §4 lägger till stöd för meta-cirkulär utvärdering. Kapitel 5 i SICP JS kräver inte språkstöd utöver Källa §4. Alla källspråk är korrekt svansrekursiva , som krävs enligt kapitel 1 i SICP och enligt ECMAScript 2015.
Källa Academy
Eftersom webbläsaren Safari är ECMAScript -2015-kompatibel, inklusive korrekta svansanrop , kan den fungera som en implementering av alla källspråk, förutsatt att SICP-paketet är laddat. Source Academy är en webbaserad programmeringsmiljö som implementerar alla källspråk, oavsett webbläsarstöd för korrekta tail calls, och har olika verktyg för läsarna av SICP JS. Språkimplementeringen i Source Academy, js-slang, är också tillgänglig som en fristående miljö baserad på Node.js.
externa länkar
- "Källa (officiell webbplats)" . 31 december 2021 . Hämtad 25 mars 2022 .