1
0
Fork 0
forked from fun/fun

Added lot more example code. (0.39.8).

This commit is contained in:
Johannes Findeisen 2026-03-25 23:38:04 +01:00
commit 564999709c
32 changed files with 1353 additions and 53 deletions

View file

@ -0,0 +1,25 @@
#!/usr/bin/env fun
/*
* This file is part of the Fun programming language.
* https://fun-lang.xyz/
*
* Copyright 2026 Johannes Findeisen
* Licensed under the terms of the Apache-2.0 license.
* https://opensource.org/license/apache-2-0
*
* Added: 2026-03-25
*/
fun assert_like(cond, msg)
if (!cond)
print("ASSERT FAILED: " + to_string(msg))
return 0
return 1
ok = assert_like(1 + 1 == 2, "math broke")
print("assert returned: " + to_string(ok))
/* Expected output:
assert returned: 1
*/

View file

@ -0,0 +1,37 @@
#!/usr/bin/env fun
/*
* This file is part of the Fun programming language.
* https://fun-lang.xyz/
*
* Copyright 2026 Johannes Findeisen
* Licensed under the terms of the Apache-2.0 license.
* https://opensource.org/license/apache-2-0
*
* Added: 2026-03-25
*/
// Minimal helper: remove trailing newline from a string (no full strings lib needed)
fun chomp(s)
t = to_string(s)
if (len(t) > 0 && substr(t, len(t) - 1, 1) == "\n")
return substr(t, 0, len(t) - 1)
return t
fun now()
// Very rough timestamp using system 'date' for demo
r = proc_run("date +%Y-%m-%dT%H:%M:%S%z")
return chomp(r["out"])
fun log_line(level, msg)
print("[" + now() + "] [" + to_string(level) + "] " + to_string(msg))
log_line("INFO", "Service starting")
log_line("DEBUG", "Config loaded")
log_line("INFO", "Service running")
/* Expected output (timestamps will vary):
[2026-03-25T23:00:00+0000] [INFO] Service starting
[2026-03-25T23:00:00+0000] [DEBUG] Config loaded
[2026-03-25T23:00:00+0000] [INFO] Service running
*/