View difference between Paste ID: 2jyP8Pif and P29aEVzV
SHOW: | | - or go back to the newest paste.
1-
IF -> if IFH TAB
1+
CODE -> INSTRUCTION*
2-
    | if IFH TAB else: TAB
2+
3
INSTRUCTIONS -> FOR
4-
IFH -> ID OP ID:
4+
				IF
5
				WHILE
6-
TAB -> tab INSTRUCTIONS (INSTRUCTION)* untab
6+
				INPUT
7
				ASSIGN
8-
WHILE -> while WHILEH TAB
8+
				PRINT
9
				pass
10-
ASSGN -> ID ASG INPUT
10+
11-
       | ID ASG ID
11+
FOR -> for VAR in range(VARB, VARB): TAB
12-
       | ID ASG ARITH
12+
13
IF -> if BOOL TAB
14-
ARRAY -> ID ASG [ID (,ID*)]
14+
	  if BOOL TAB else: TAB
15-
       | ID[ID]
15+
16
BOOL -> EXPRESSION {B_OP EXPRESSION}* :
17-
PRINT -> print (VALOR [, VALOR]*)
17+
18
TAB -> tab INSTRUCCTIONS* untab
19-
LEN -> len(ID)
19+
20
WHILE -> BOOL TABW
21-
FOR -> FORH TAB
21+
22
TABW -> tab INSTRUCTIONS* pass untab
23-
FORH -> ID in RANGE:
23+
24
INPUT -> VAR = ("string")
25-
RANGE -> (ID, ID)
25+
26
ASSIGN -> VAR = VARB
27-
INSTRUCTION -> ASSGN
27+
		  VAR = INPUT
28-
	     | PRINT
28+
		  VAR = [VARB {, VARB}* ]
29-
   	     | PASS
29+
30-
	     | ARITH
30+
PRINT -> print(PRT {,prt}* )
31-
  	     | IF
31+
32-
	     | WHILE
32+
VAR- > ID
33-
         | ARRAY
33+
	   ID[VARB]
34-
	     | len
34+
35
VARB -> EXPRESSION
36-
EXPRE -> E+E
36+
		LEN
37-
       | E-E
37+
		VAR[VARB]	
38-
       | E*E
38+
39-
       | E/E
39+
PRT -> string
40-
       | E%E
40+
	   Input
41-
       | E**E
41+
	   VARB
42
43
LEN -> len(VAR)
44
45
EXPRESSION -> F[(+||-)F]*
46
47
F -> M[(x||/)F]*
48
49
M -> L[(%||**)M]*
50
51
L-> ID
52
	INT
53
	(EXPRESSION)