Skip to content

Manuel — syntaxe ALB vérifiée · programmes .alb

Manuel AdaLogic BASIC (ALB)

Syntaxe sûre pour les personnes qui apprennent et les outils qui écrivent du code, fondée sur le parseur et les backends actuels. Des programmes exécutables se trouvent dans la galerie d’exemples.

Règles générales

Squelette d’un programme

BEGIN
    VERSION 0.0.0.1
    CREATE_WINDOW "ALB APP", 960, 640
    ON TICK
        -- logique de mise à jour
    END
    ON PAINT
        -- logique de dessin
    END
    LISTEN
END

Déclarations

-- commentaire
#MAX_ENTITIES = 64
LET score = 0
LET hp AS U16 = 100
LET name AS STRING = "ALB"
TYPE SmallHealth IS U16 RANGE 1 .. 255
TEMPORAL LET px AS I32 HISTORY 16 = 140

Types de déclaration sûrs

U0, U8, U16, U32, U64, S32, I8–I64, F64/REAL, PURE/RATIONAL, FLOAT2/FLOAT4, MAT2–MAT4, BOOL, STRING/BINARY et HW8/HW16/HW32.

Contrôle du déroulement

IF hp > 0 THEN
    alive = TRUE
ELSE
    alive = FALSE
END IF
WHILE hp > 0
    hp = hp - 1
END WHILE
FOR i = 1 TO 10 THEN
    PRINT i
END FOR
MATCH mode
    0 => state = 1
    ELSE => state = 99
END MATCH

MATCH emploie des branches =>. SELECT emploie CASE.

Fonctions et modules

FUNCTION Twice(x AS U32) AS U32
    RETURN x + x
END FUNCTION
MODULE MathKit BEGIN
    FUNCTION Add2(x AS U32) AS U32
        RETURN x + 2
    END FUNCTION
END MODULE
IMPORT MathKit

Tableaux à partir de 1

STRICT cells[64] AS U16
cells[1] = 10
PARALLEL swarm[128]
    x AS S32
    y AS S32
    hp AS U16
END PARALLEL
swarm[1].x = 100
SWAPPOP swarm[dead_slot], active_count

Graphismes

CREATE_WINDOW "Demo", 320, 200
CLEAR $050511
COLOR $FF3300
FILL RECT x, y, w, h
DRAW LINE x1, y1, x2, y2
TEXT 8, 8, "BONJOUR"
DRAW TEXT 8, 24, "SCORE: " | score

| et & concatènent les chaînes ; ils ne représentent pas un OU bit à bit. Utilisez OR, XOR et AND pour les opérations binaires.

Entrées et environnement

PRINT "HP=" | hp
INPUT "Nom", player_name
LET pressed = KEY(4)
LET mx = MOUSE_X
LET vw = VIRTUAL_WIDTH

Utilisez KEY(code), et non KEY_STATE(code).

Parcours pratique

  1. BEGIN, PRINT, LISTEN
  2. LET typé, IF, FOR
  3. INPUT et concaténation |
  4. CREATE_WINDOW et ON PAINT
  5. Tableaux STRICT commençant à 1

Erreurs fréquentes

Accueil · À propos