Il est temps. Rockstar 2 : "La deuxième version difficile"
Le processus de construction
Construire codewithrockstar.com fonctionne comme ceci :
construire et tester le moteur rockstar
SI CELA MARCHE :
construire-windows-binaire
construire-macos-binaire
build-and-deploy-website * Télécharge l'artefact binaire Linux Rockstar WASM de l'étape 1 * Télécharge les binaires Windows et macOS des étapes 2 et 3 * Construit le site Jekyll
En mode développement, j'utilise des liens de répertoires symboliques entre les différentes parties du projet. La reconstruction de la solution .NET reconstruira l'interpréteur WASM, que Jekyll peut voir comme /wasm/**
, et déclenchera une reconstruction du site, et tous les exemples de code Rockstar font partie à la fois du projet de suite de tests Rockstar.Test
.NET et du codewithrockstar.com
Site codewithrockstar.com
:
> cd codewithrockstar.com
> mklink /d wasm ..StarshipRockstar.WasmbinDebugnet8.0-browser
> mklink /d examples ..StarshipRockstar.Testprogramsexamples
codewithrockstar.com
/wasm --> [ /Starship/Rockstar.Wasm/bin/Debug/net8.0-browser ]
/examples --> [ /Starship/Rockstar.Test/programs/examples ]
/index.html
/example.md
/js
/rockstar-editor.js (from codemirror)
Fonction curry
output
function call: product
function call: sum
number: 2
number: 4
function call: sum
number: 5
number: 6
Donc : product(sum(2,4,sum(5,6))
doit être traduit en product(sum(2,4),sum(5,6))
en fonction de l'arité des fonctions
Donc sum(2,4,sum(5,6))
doit évaluer sum(2,4)
et laisser l'expression sum(5,6)
dans le compartiment
Alors product(sum(2,4)