Własny język programowania. Część 3: Reprezentacja i interpretacja języka programowania

13.07.2010 - Maciej Piróg
TrudnośćTrudność

Test

Nadszedł czas na mały test. Napiszmy program, który wypisuje liczby od 0 do 9. W pseudokodzie taki program mógbły wyglądać tak (pamiętajmy, że póki co nie interesuje nas konkretna składnia, będziemy się nią zajmować w kolejnej części cyklu):

1
2
3
4
  int i = 0
  while 10 - i
    write i
    i = i + 1

Ponieważ nasz jężyk nie ma jeszcze składni, a tym bardziej parsera, drzewo programu trzeba wpisać ręcznie:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int main()
{
  Program* p = new Composition(
    new Assign("i", new Constant(0)),
    new Whaile(
      new Binary_operator('-', new Constant(10), new Variable("i")),
      new Composition(
        new Write("i"),
        new Assign("i",
          new Binary_operator('+', new Variable("i"), new Constant(1)))
      )
    )
  );
 
  Memory m;
  p->eval(m);
 
  return 0;
}

Po uruchomieniu tej funkcji, na ekranie pokaże się kolumna z cyframi od 0 do 9, więc zgodnie z planem.

5
Twoja ocena: Brak Ocena: 5 (1 ocena)

Copyright © 2008-2010 Wrocławski Portal Informatyczny

design: rafalpolito.com