From 31ed9fafa7b4f00d3f22112a9b0ea0f9ff018fcf Mon Sep 17 00:00:00 2001 From: cl4cnam <40176886+cl4cnam@users.noreply.github.com> Date: Mon, 14 Sep 2026 23:26:50 +0200 Subject: [PATCH] Add FuncSug programming language --- concepts/funcsug.scroll | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 concepts/funcsug.scroll diff --git a/concepts/funcsug.scroll b/concepts/funcsug.scroll new file mode 100644 index 000000000000..872e697d1e1b --- /dev/null +++ b/concepts/funcsug.scroll @@ -0,0 +1,42 @@ +../code/conceptPage.scroll + +id funcsug +name FuncSug +appeared 2022 +creators Claude Lion +country France +tags pl +website https://github.com/cl4cnam/funcSug +rosettaCode http://www.rosettacode.org/wiki/Category:FuncSug +description FuncSug is a simple alternative to event-driven programming and game loops. It features deterministic structured concurrency, waiting of a determinate event and automatic branch cancellation. +fileExtensions fg +writtenIn javascript +tryItOnline https://cl4cnam.github.io/try_FuncSug +keywords and awaitBeep awaitBip branch break calljs def do else exitAfter exitWith false finished for if in js not onBreak or par parallel select seq sequence spawn true var while + +lineCommentToken # +assignmentToken := +booleanTokens true false + +hasAssignment true + name := 'John' +hasComments true +hasStrings true + "Hello, World!" +hasConditionals true +hasWhileLoops true +hasFunctions true +hasInfixNotation true +hasLists true + myParallelList := |1, 2, 3, 4, 5| +hasSemanticIndentation true + +isOpenSource true +example + parallel exitAfter 1 finished: + while true: + waitSeconds(2) + displayNewMessage('Hello, World!') + awaitClick('#stop') + +githubRepo https://github.com/cl4cnam/funcSug