Kodåtgärder
När grafen inte räcker kör rutan Kod ett skript.
Sju språk finns tillgängliga, alla körda i en inbäddad WebAssembly-sandlåda: ingen tolk krävs på din maskin, och skriptet har ingen åtkomst till ditt filsystem.
| Språk | Motor |
|---|---|
| TypeScript | QuickJS (typerna tas bort vid kompileringen) |
| JavaScript | QuickJS |
| Python | Pyodide (CPython kompilerat till WebAssembly) |
| Lua | Lua 5.4 i WebAssembly |
| Ruby | CRuby i WebAssembly |
| R | WebR |
| C# | .NET i WebAssembly med Roslyn |
Standardspråket är TypeScript.
Det gemensamma kontraktet
Section titled “Det gemensamma kontraktet”Oavsett språk exponerar rutan samma sak:
| Ingångar | value (kallad input), code (sträng) |
| Utgångar | result |
| Konfiguration | language, code, timeout, packages |
input— värdet som tas emot på ingångsporten.vars— körningsvariablerna.- Språkets standardutmatning (
console.log,print,puts,cat,Console.WriteLine) matar körningsloggen. - Det returnerade värdet går ut på porten
result. Ett fel eller en överskriden tidsgräns går ut påerror.
Tidsgränsen
Section titled “Tidsgränsen”timeout, i sekunder: 5 som standard, 60 som mest. Ett skript som
överskrider den avbryts och körningen går ut på porten error.
Externa paket
Section titled “Externa paket”Fältet packages accepterar en lista av { namn, version }. De exakta
versionerna fungerar som cachenyckel: beroendena löses upp vid den första
körningen, cachas, och monteras sedan offline vid varje följande körning —
även i CI.
| Språk | Källa |
|---|---|
| TypeScript / JavaScript | npm (allt paketeras) |
| Python | Hjul i ren Python från PyPI |
| Lua | LuaRocks (källkod i ren Lua) |
| Ruby | Gems i ren Ruby |
| R | CRAN, via WebR:s WebAssembly-förvar |
| C# | Inga — enbart .NET:s standardbibliotek |
När du inte ska skriva kod
Section titled “När du inte ska skriva kod”Många behov täcks redan av rutor, som är både läsbarare och snabbare:
| Behov | Ruta |
|---|---|
| Extrahera ett värde ur ett svar | En kopplingsväljare |
| Formatera en sträng | Transform template |
| Filtrera, sortera, aggregera en lista | Listor |
| Hasha, koda, signera | Kodning |
| Kontrollera en struktur | Schema validate |
Spara rutan Kod till den logik som verkligen är specifik.