pseudocode gramatics