Codice C#
C# si esegue tramite .NET compilato in WebAssembly, con il motore di script Roslyn. Il runtime è incluso in Restorm: non è richiesto nessun SDK .NET sulla macchina.
| Simbolo | Ruolo |
|---|---|
input | Il valore ricevuto sulla porta di input |
vars | Un dizionario delle variabili di run |
Console.Write / Console.WriteLine | Scrivono nel log dell’esecuzione |
| L’espressione finale | Il suo valore parte sulla porta result |
Il codice è script C# (stile Roslyn): non c’è nessuna classe contenitore né
Main da scrivere, le istruzioni sono al livello superiore e l’espressione
finale è il risultato.
Esempio
Section titled “Esempio”using System.Linq;using System.Text.Json;
var doc = JsonDocument.Parse(input.ToString());var commandes = doc.RootElement.GetProperty("commandes").EnumerateArray();
var payees = commandes .Where(c => c.GetProperty("statut").GetString() == "payee") .ToList();
var total = payees.Sum(c => c.GetProperty("montant").GetDouble());
Console.WriteLine($"{payees.Count} commandes payées, total {total} €");
new { nombre = payees.Count, total }Che cosa è disponibile
Section titled “Che cosa è disponibile”La libreria di classi di base di .NET: System.Linq,
System.Text.Json, System.Text.RegularExpressions,
System.Security.Cryptography, System.Collections.Generic…
Limiti specifici di C#
Section titled “Limiti specifici di C#”È il linguaggio da scegliere quando si vuole riutilizzare una logica applicativa già scritta in C#, oppure quando il team si trova più a suo agio con esso — non quando serve chiamare qualcosa.