O teu primeiro programa
Escribe unha función como unha táboa, execútaa con ridgunc run e constrúe un executable nativo.
Crea un ficheiro chamado hello.rg:
fn :: greet String => String
greet "" = "Hello, mysterious traveler!"
greet "Root" = "Hey there, Root! Careful what you delete today."
greet name = "Hello, {name}! Welcome to Ridgun."
fn :: main => ()
main =
echo (greet "Ada")
echo (greet "Root")
echo (greet "")
Lese como unha táboa. A primeira liña é a sinatura: greet recibe un String e devolve un String. Cada liña de debaixo é unha cláusula, e responde a primeira cláusula cuxo patrón coincide co argumento. {name} dentro dunha cadea pon alí o valor de name.
Execútao
ridgunc run hello.rg
Hello, Ada! Welcome to Ridgun.
Hey there, Root! Careful what you delete today.
Hello, mysterious traveler!
ridgunc run compila o ficheiro e execútao de seguido. ridgunc check hello.rg só comproba os tipos, que é a forma máis rápida de atopar un erro.
Constrúe un executable
ridgunc build hello.rg -o hello
./hello
hello é un executable ELF64 estático. Cópiao a calquera máquina Linux co mesmo procesador e funcionará: non hai ningún runtime que instalar.
Gardas
Cando a elección depende dunha condición e non dun patrón, usa gardas. Cada liña | próbase por orde:
fn :: size Int => String
size n =
| n == 0 = "nothing"
| n < 100 = "small"
| otherwise = "large"
A continuación, comeza un proxecto con stable.