Aller au contenu

Veprimet e kodit

Kur grafi nuk mjafton, kutia Code ekzekuton një skript.

Janë të disponueshme shtatë gjuhë, të gjitha të ekzekutuara brenda një kutie rëre WebAssembly të integruar: nuk kërkohet asnjë interpretues në makinën tuaj dhe skripti nuk ka qasje te sistemi juaj i skedarëve.

GjuhaMotori
TypeScriptQuickJS (tipat hiqen gjatë përpilimit)
JavaScriptQuickJS
PythonPyodide (CPython i përpiluar në WebAssembly)
LuaLua 5.4 në WebAssembly
RubyCRuby në WebAssembly
RWebR
C#.NET në WebAssembly me Roslyn

Gjuha e parazgjedhur është TypeScript.

Cilado qoftë gjuha, kutia ekspozon të njëjtën gjë:

Hyrjetvalue (e quajtur input), code (varg)
Daljetresult
Konfigurimilanguage, code, timeout, packages
  • input — vlera e marrë mbi portën e hyrjes.
  • varsvariablat e ekzekutimit.
  • Dalja standarde e gjuhës (console.log, print, puts, cat, Console.WriteLine) ushqen regjistrin e ekzekutimit.
  • Vlera e kthyer niset mbi portën result. Një gabim ose një tejkalim kohe niset mbi error.

timeout, në sekonda: 5 si parazgjedhje, 60 maksimumi. Një skript që e tejkalon ndërpritet dhe ekzekutimi niset mbi portën error.

Fusha packages pranon një listë me { name, version }. Versionet e sakta shërbejnë si çelës memorieje: varësitë zgjidhen gjatë ekzekutimit të parë, ruhen në memorie dhe pastaj ngrihen jashtë linje në çdo ekzekutim pasues — përfshirë në CI.

GjuhaBurimi
TypeScript / JavaScriptnpm (gjithçka paketohet)
PythonRrota thjesht Python nga PyPI
LuaLuaRocks (burime thjesht Lua)
RubyGem-e thjesht Ruby
RCRAN, përmes depos WebAssembly të WebR
C#Asnjë — vetëm biblioteka standarde .NET

Shumë nevoja mbulohen tashmë nga kuti, të cilat janë më të lexueshme dhe më të shpejta:

NevojaKutia
Të nxjerrësh një vlerë nga një përgjigjeNjë zgjedhës lidhjeje
Të formatosh një vargTransformo
Të filtrosh, renditësh, agregosh një listëListat
Të hashosh, kodosh, nënshkruashKodimi
Të verifikosh një strukturëValido një skemë

Ruajeni kutinë Code për logjikën vërtet specifike.