## 2025-02-16 # aa**2 # ? is aa an array or an integer ? -> array # aa++2 # ? is aa an array or an integer ? -> integer # aa ** 2 # aa is an array # aa + +2 # aa is an integer # keyword ( arguments ) | parameters | { block } # keyword : type ` label ` ( arguments ) | parameters | { block } # if args params block # ^^^^^^^------------------ # if args params block else params block # ^^^^^^^------------------ ^^^^------------- # if args params block elif args params block # ^^^^^^^------------------ ^^^^------------------ # if args params block elif args params block else params block # ^^^^^^^------------------ ^^^^------------------ ^^^^------------- # for args params block # ^^^^^^^------------------ # for args params block else block # ^^^^^^^------------------ ^^^^------------- # switch args else params block # ^^^^^^^----- ^^^^------------- # switch args case args params block # ^^^^^^^----- ^^^^------------------ # switch args case args params block else params block # ^^^^^^^----- ^^^^------------------ ^^^^------------- # print args # ^^^^^^^----- # fn :type params block # ^^^^^^^******------------- # XXX ifnil, iferr, catch