This repository has been archived on 2024-02-27. You can view files and clone it, but cannot push or open issues or pull requests.
arf/examples/full/main.arf

36 lines
571 B
Plaintext
Raw Normal View History

2022-08-03 15:09:00 +00:00
:arf
author "Sasha Koshka"
license "GPLv3"
require "io"
---
# this is a global variable
2022-09-17 16:33:52 +00:00
data pv helloText:String:<"Hello, world!">
2022-08-03 15:09:00 +00:00
# this is a struct definition
2022-09-17 16:33:52 +00:00
type ro Greeter:Obj:(
.rw text:String:<"Hi.">)
2022-08-03 15:09:00 +00:00
# this is a function
func ro main
> arguments:{String ..}
2022-09-17 16:33:52 +00:00
< status:Int:<0>
---
2022-09-17 16:33:52 +00:00
let greeter:Greeter:mut
greeter.setText helloText
greeter.greet
2022-08-03 15:09:00 +00:00
# this is a member function
func ro greet
@ greeter:{Greeter}
---
io.println greeter.text
2022-08-03 15:09:00 +00:00
# this is mutator member function
func ro setText
@ greeter:{Greeter}
> text:String
---
greeter.text.set text
2022-08-03 15:09:00 +00:00