-------------------------------------------------------------------------------
-- NAME (body)                  : logo-parser.adb
-- AUTHOR                       : Pascal Pignard
-- ROLE                         : Logo primitive parser unit.
-- NOTES                        : Ada 2012, GNOGA 1.4 beta
--
-- COPYRIGHT                    : (c) Pascal Pignard 2018
-- LICENCE                      : CeCILL V2 (http://www.cecill.info)
-- CONTACT                      : http://blady.pagesperso-orange.fr
-------------------------------------------------------------------------------

with logo_messages.logo_Strings;

package body Logo.Parser is

   procedure Check_Spelling (Name : Standard.String) is
   begin
      null; -- Accept anything
   end Check_Spelling;
   function Check_Matched
     (Source  : Standard.String;
      Pointer : Integer)
      return Boolean
   is
   begin
      case Source (Pointer) is
         when ' ' | Character'Val (9) .. Character'Val (15) =>
            return True;  -- Blank must follow
         when others =>
            return False;
      end case;
   end Check_Matched;

   procedure Fill
     (Primitives : out Primitive_Tables.Dictionary;
      Locale     :     ZanyBlue.Text.Locales.Locale_Type)
   is
      use logo_messages.logo_Strings;
   begin
      Primitives.Add (To_UTF_8 (Format_help (Locale)), help);
      Primitives.Add (To_UTF_8 (Format_abs (Locale)), absolute);
      Primitives.Add (To_UTF_8 (Format_absolute (Locale)), absolute);
      Primitives.Add (To_UTF_8 (Format_acos (Locale)), arccosine);
      Primitives.Add (To_UTF_8 (Format_additem (Locale)), additem);
      Primitives.Add (To_UTF_8 (Format_and (Locale)), and_k);
      Primitives.Add (To_UTF_8 (Format_anim (Locale)), animation);
      Primitives.Add (To_UTF_8 (Format_animation (Locale)), animation);
      Primitives.Add (To_UTF_8 (Format_appendlineflow (Locale)), appendlineflow);
      Primitives.Add (To_UTF_8 (Format_arc (Locale)), arc);
      Primitives.Add (To_UTF_8 (Format_arccosine (Locale)), arccosine);
      Primitives.Add (To_UTF_8 (Format_arcsine (Locale)), arcsine);
      Primitives.Add (To_UTF_8 (Format_arctan (Locale)), arctan);
      Primitives.Add (To_UTF_8 (Format_asin (Locale)), arcsine);
      Primitives.Add (To_UTF_8 (Format_atan (Locale)), arctan);
      Primitives.Add (To_UTF_8 (Format_back (Locale)), back);
      Primitives.Add (To_UTF_8 (Format_before (Locale)), beforep);
      Primitives.Add (To_UTF_8 (Format_beforep (Locale)), beforep);
      Primitives.Add (To_UTF_8 (Format_bf (Locale)), butfirst);
      Primitives.Add (To_UTF_8 (Format_bk (Locale)), back);
      Primitives.Add (To_UTF_8 (Format_bl (Locale)), butlast);
      Primitives.Add (To_UTF_8 (Format_black (Locale)), black);
      Primitives.Add (To_UTF_8 (Format_blue (Locale)), blue);
      Primitives.Add (To_UTF_8 (Format_brown (Locale)), brown);
      Primitives.Add (To_UTF_8 (Format_butfirst (Locale)), butfirst);
      Primitives.Add (To_UTF_8 (Format_butlast (Locale)), butlast);
      Primitives.Add (To_UTF_8 (Format_cd (Locale)), changedirectory);
      Primitives.Add (To_UTF_8 (Format_changedirectory (Locale)), changedirectory);
      Primitives.Add (To_UTF_8 (Format_char (Locale)), character_k);
      Primitives.Add (To_UTF_8 (Format_character (Locale)), character_k);
      Primitives.Add (To_UTF_8 (Format_chattcp (Locale)), chattcp);
      Primitives.Add (To_UTF_8 (Format_circle (Locale)), circle);
      Primitives.Add (To_UTF_8 (Format_clearscreen (Locale)), clearscreen);
      Primitives.Add (To_UTF_8 (Format_cleartext (Locale)), cleartext);
      Primitives.Add (To_UTF_8 (Format_close (Locale)), close);
      Primitives.Add (To_UTF_8 (Format_closeflow (Locale)), closeflow);
      Primitives.Add (To_UTF_8 (Format_cos (Locale)), cosine);
      Primitives.Add (To_UTF_8 (Format_cosine (Locale)), cosine);
      Primitives.Add (To_UTF_8 (Format_count (Locale)), count);
      Primitives.Add (To_UTF_8 (Format_countdown (Locale)), countdown);
      Primitives.Add (To_UTF_8 (Format_cs (Locale)), clearscreen);
      Primitives.Add (To_UTF_8 (Format_ct (Locale)), cleartext);
      Primitives.Add (To_UTF_8 (Format_cyan (Locale)), cyan);
      Primitives.Add (To_UTF_8 (Format_darkblue (Locale)), darkblue);
      Primitives.Add (To_UTF_8 (Format_darkgreen (Locale)), darkgreen);
      Primitives.Add (To_UTF_8 (Format_darkred (Locale)), darkred);
      Primitives.Add (To_UTF_8 (Format_date (Locale)), date);
      Primitives.Add (To_UTF_8 (Format_def (Locale)), define);
      Primitives.Add (To_UTF_8 (Format_define (Locale)), define);
      Primitives.Add (To_UTF_8 (Format_deletesequence (Locale)), deletesequence);
      Primitives.Add (To_UTF_8 (Format_delseq (Locale)), deletesequence);
      Primitives.Add (To_UTF_8 (Format_diff (Locale)), difference);
      Primitives.Add (To_UTF_8 (Format_difference (Locale)), difference);
      Primitives.Add (To_UTF_8 (Format_dir (Locale)), directory);
      Primitives.Add (To_UTF_8 (Format_directory (Locale)), directory);
      Primitives.Add (To_UTF_8 (Format_distance (Locale)), distance);
      Primitives.Add (To_UTF_8 (Format_div (Locale)), divide);
      Primitives.Add (To_UTF_8 (Format_divide (Locale)), divide);
      Primitives.Add (To_UTF_8 (Format_dot (Locale)), dot);
      Primitives.Add (To_UTF_8 (Format_dq (Locale)), drawingquality);
      Primitives.Add (To_UTF_8 (Format_drawingquality (Locale)), drawingquality);
      Primitives.Add (To_UTF_8 (Format_empty (Locale)), emptyp);
      Primitives.Add (To_UTF_8 (Format_emptyp (Locale)), emptyp);
      Primitives.Add (To_UTF_8 (Format_endcountdown (Locale)), endcountdown);
      Primitives.Add (To_UTF_8 (Format_endflow (Locale)), endflow);
      Primitives.Add (To_UTF_8 (Format_equal (Locale)), equalp);
      Primitives.Add (To_UTF_8 (Format_equalp (Locale)), equalp);
      Primitives.Add (To_UTF_8 (Format_er (Locale)), erase);
      Primitives.Add (To_UTF_8 (Format_erall (Locale)), eraseall);
      Primitives.Add (To_UTF_8 (Format_erase (Locale)), erase);
      Primitives.Add (To_UTF_8 (Format_eraseall (Locale)), eraseall);
      Primitives.Add (To_UTF_8 (Format_executetcp (Locale)), executetcp);
      Primitives.Add (To_UTF_8 (Format_false (Locale)), false_k);
      Primitives.Add (To_UTF_8 (Format_fc (Locale)), findcolor);
      Primitives.Add (To_UTF_8 (Format_fd (Locale)), forward);
      Primitives.Add (To_UTF_8 (Format_files (Locale)), files);
      Primitives.Add (To_UTF_8 (Format_fill (Locale)), fill);
      Primitives.Add (To_UTF_8 (Format_fillzone (Locale)), fillzone);
      Primitives.Add (To_UTF_8 (Format_findcolor (Locale)), findcolor);
      Primitives.Add (To_UTF_8 (Format_first (Locale)), first);
      Primitives.Add (To_UTF_8 (Format_fontname (Locale)), fontname);
      Primitives.Add (To_UTF_8 (Format_fontsize (Locale)), fontsize);
      Primitives.Add (To_UTF_8 (Format_for (Locale)), for_k);
      Primitives.Add (To_UTF_8 (Format_forward (Locale)), forward);
      Primitives.Add (To_UTF_8 (Format_fput (Locale)), fput);
      Primitives.Add (To_UTF_8 (Format_globalmake (Locale)), globalmake);
      Primitives.Add (To_UTF_8 (Format_gray (Locale)), gray);
      Primitives.Add (To_UTF_8 (Format_green (Locale)), green);
      Primitives.Add (To_UTF_8 (Format_grid (Locale)), grid);
      Primitives.Add (To_UTF_8 (Format_guiaction (Locale)), guiaction);
      Primitives.Add (To_UTF_8 (Format_guibutton (Locale)), guibutton);
      Primitives.Add (To_UTF_8 (Format_guidraw (Locale)), guidraw);
      Primitives.Add (To_UTF_8 (Format_guimenu (Locale)), guimenu);
      Primitives.Add (To_UTF_8 (Format_guiposition (Locale)), guiposition);
      Primitives.Add (To_UTF_8 (Format_guiremove (Locale)), guiremove);
      Primitives.Add (To_UTF_8 (Format_heading (Locale)), heading);
      Primitives.Add (To_UTF_8 (Format_hideturtle (Locale)), hideturtle);
      Primitives.Add (To_UTF_8 (Format_home (Locale)), home);
      Primitives.Add (To_UTF_8 (Format_ht (Locale)), hideturtle);
      Primitives.Add (To_UTF_8 (Format_if (Locale)), if_k);
      Primitives.Add (To_UTF_8 (Format_indexsequence (Locale)), indexsequence);
      Primitives.Add (To_UTF_8 (Format_indseq (Locale)), indexsequence);
      Primitives.Add (To_UTF_8 (Format_instr (Locale)), instrument);
      Primitives.Add (To_UTF_8 (Format_instrument (Locale)), instrument);
      Primitives.Add (To_UTF_8 (Format_int (Locale)), integer_k);
      Primitives.Add (To_UTF_8 (Format_integer (Locale)), integer_k);
      Primitives.Add (To_UTF_8 (Format_item (Locale)), item);
      Primitives.Add (To_UTF_8 (Format_key (Locale)), key);
      Primitives.Add (To_UTF_8 (Format_kill (Locale)), kill);
      Primitives.Add (To_UTF_8 (Format_killturtle (Locale)), killturtle);
      Primitives.Add (To_UTF_8 (Format_label (Locale)), label);
      Primitives.Add (To_UTF_8 (Format_labellength (Locale)), labellength);
      Primitives.Add (To_UTF_8 (Format_last (Locale)), last);
      Primitives.Add (To_UTF_8 (Format_left (Locale)), left);
      Primitives.Add (To_UTF_8 (Format_li (Locale)), loadimage);
      Primitives.Add (To_UTF_8 (Format_lightgray (Locale)), lightgray);
      Primitives.Add (To_UTF_8 (Format_list (Locale)), list);
      Primitives.Add (To_UTF_8 (Format_listentcp (Locale)), listentcp);
      Primitives.Add (To_UTF_8 (Format_listflow (Locale)), listflow);
      Primitives.Add (To_UTF_8 (Format_listp (Locale)), listp);
      Primitives.Add (To_UTF_8 (Format_load (Locale)), load);
      Primitives.Add (To_UTF_8 (Format_loadimage (Locale)), loadimage);
      Primitives.Add (To_UTF_8 (Format_local (Locale)), local);
      Primitives.Add (To_UTF_8 (Format_localmake (Locale)), localmake);
      Primitives.Add (To_UTF_8 (Format_log10 (Locale)), log10);
      Primitives.Add (To_UTF_8 (Format_lput (Locale)), lput);
      Primitives.Add (To_UTF_8 (Format_lt (Locale)), left);
      Primitives.Add (To_UTF_8 (Format_magenta (Locale)), magenta);
      Primitives.Add (To_UTF_8 (Format_make (Locale)), globalmake);
      Primitives.Add (To_UTF_8 (Format_member (Locale)), member);
      Primitives.Add (To_UTF_8 (Format_memberp (Locale)), memberp);
      Primitives.Add (To_UTF_8 (Format_message (Locale)), message);
      Primitives.Add (To_UTF_8 (Format_minus (Locale)), minus);
      Primitives.Add (To_UTF_8 (Format_mod (Locale)), modulo);
      Primitives.Add (To_UTF_8 (Format_modulo (Locale)), modulo);
      Primitives.Add (To_UTF_8 (Format_mouse (Locale)), mouse);
      Primitives.Add (To_UTF_8 (Format_mousepos (Locale)), mousepos);
      Primitives.Add (To_UTF_8 (Format_mouseposition (Locale)), mouseposition);
      Primitives.Add (To_UTF_8 (Format_msg (Locale)), msg);
      Primitives.Add (To_UTF_8 (Format_not (Locale)), not_k);
      Primitives.Add (To_UTF_8 (Format_number (Locale)), numberp);
      Primitives.Add (To_UTF_8 (Format_numberp (Locale)), numberp);
      Primitives.Add (To_UTF_8 (Format_op (Locale)), output);
      Primitives.Add (To_UTF_8 (Format_openflow (Locale)), openflow);
      Primitives.Add (To_UTF_8 (Format_or (Locale)), or_k);
      Primitives.Add (To_UTF_8 (Format_orange (Locale)), orange);
      Primitives.Add (To_UTF_8 (Format_output (Locale)), output);
      Primitives.Add (To_UTF_8 (Format_pasttime (Locale)), pasttime);
      Primitives.Add (To_UTF_8 (Format_pc (Locale)), pencolor);
      Primitives.Add (To_UTF_8 (Format_pd (Locale)), pendown);
      Primitives.Add (To_UTF_8 (Format_pe (Locale)), penerase);
      Primitives.Add (To_UTF_8 (Format_pencolor (Locale)), pencolor);
      Primitives.Add (To_UTF_8 (Format_pendown (Locale)), pendown);
      Primitives.Add (To_UTF_8 (Format_penerase (Locale)), penerase);
      Primitives.Add (To_UTF_8 (Format_penpaint (Locale)), penpaint);
      Primitives.Add (To_UTF_8 (Format_penreverse (Locale)), penreverse);
      Primitives.Add (To_UTF_8 (Format_penshape (Locale)), penshape);
      Primitives.Add (To_UTF_8 (Format_penup (Locale)), penup);
      Primitives.Add (To_UTF_8 (Format_penwidth (Locale)), penwidth);
      Primitives.Add (To_UTF_8 (Format_pi (Locale)), pi);
      Primitives.Add (To_UTF_8 (Format_pick (Locale)), pick);
      Primitives.Add (To_UTF_8 (Format_pink (Locale)), pink);
      Primitives.Add (To_UTF_8 (Format_play (Locale)), play);
      Primitives.Add (To_UTF_8 (Format_poall (Locale)), printoutall);
      Primitives.Add (To_UTF_8 (Format_pos (Locale)), position);
      Primitives.Add (To_UTF_8 (Format_position (Locale)), position);
      Primitives.Add (To_UTF_8 (Format_power (Locale)), power);
      Primitives.Add (To_UTF_8 (Format_ppt (Locale)), penpaint);
      Primitives.Add (To_UTF_8 (Format_pr (Locale)), print);
      Primitives.Add (To_UTF_8 (Format_prim (Locale)), primitive_k);
      Primitives.Add (To_UTF_8 (Format_primitive (Locale)), primitive_k);
      Primitives.Add (To_UTF_8 (Format_print (Locale)), print);
      Primitives.Add (To_UTF_8 (Format_printoutall (Locale)), printoutall);
      Primitives.Add (To_UTF_8 (Format_proc (Locale)), procedure_k);
      Primitives.Add (To_UTF_8 (Format_procedure (Locale)), procedure_k);
      Primitives.Add (To_UTF_8 (Format_product (Locale)), product);
      Primitives.Add (To_UTF_8 (Format_ps (Locale)), penshape);
      Primitives.Add (To_UTF_8 (Format_pu (Locale)), penup);
      Primitives.Add (To_UTF_8 (Format_purple (Locale)), purple);
      Primitives.Add (To_UTF_8 (Format_pw (Locale)), penwidth);
      Primitives.Add (To_UTF_8 (Format_px (Locale)), penreverse);
      Primitives.Add (To_UTF_8 (Format_quotient (Locale)), quotient);
      Primitives.Add (To_UTF_8 (Format_ran (Locale)), random);
      Primitives.Add (To_UTF_8 (Format_random (Locale)), random);
      Primitives.Add (To_UTF_8 (Format_read (Locale)), read);
      Primitives.Add (To_UTF_8 (Format_readchar (Locale)), readcharacter);
      Primitives.Add (To_UTF_8 (Format_readcharacter (Locale)), readcharacter);
      Primitives.Add (To_UTF_8 (Format_readcharflow (Locale)), readcharflow);
      Primitives.Add (To_UTF_8 (Format_readlineflow (Locale)), readlineflow);
      Primitives.Add (To_UTF_8 (Format_readmouse (Locale)), readmouse);
      Primitives.Add (To_UTF_8 (Format_red (Locale)), red);
      Primitives.Add (To_UTF_8 (Format_refresh (Locale)), refresh);
      Primitives.Add (To_UTF_8 (Format_remove (Locale)), remove);
      Primitives.Add (To_UTF_8 (Format_repaint (Locale)), refresh);
      Primitives.Add (To_UTF_8 (Format_repcount (Locale)), repcount);
      Primitives.Add (To_UTF_8 (Format_repeat (Locale)), repeat);
      Primitives.Add (To_UTF_8 (Format_replace (Locale)), replace);
      Primitives.Add (To_UTF_8 (Format_resetall (Locale)), resetall);
      Primitives.Add (To_UTF_8 (Format_reverse (Locale)), reverse_k);
      Primitives.Add (To_UTF_8 (Format_right (Locale)), right);
      Primitives.Add (To_UTF_8 (Format_rnd (Locale)), round);
      Primitives.Add (To_UTF_8 (Format_round (Locale)), round);
      Primitives.Add (To_UTF_8 (Format_rt (Locale)), right);
      Primitives.Add (To_UTF_8 (Format_run (Locale)), run);
      Primitives.Add (To_UTF_8 (Format_save (Locale)), save);
      Primitives.Add (To_UTF_8 (Format_saved (Locale)), saved);
      Primitives.Add (To_UTF_8 (Format_sc (Locale)), screencolor);
      Primitives.Add (To_UTF_8 (Format_screencolor (Locale)), screencolor);
      Primitives.Add (To_UTF_8 (Format_screensize (Locale)), screensize);
      Primitives.Add (To_UTF_8 (Format_se (Locale)), sentence);
      Primitives.Add (To_UTF_8 (Format_sendtcp (Locale)), sendtcp);
      Primitives.Add (To_UTF_8 (Format_sentence (Locale)), sentence);
      Primitives.Add (To_UTF_8 (Format_sep (Locale)), separation);
      Primitives.Add (To_UTF_8 (Format_separation (Locale)), separation);
      Primitives.Add (To_UTF_8 (Format_seq (Locale)), sequence);
      Primitives.Add (To_UTF_8 (Format_sequence (Locale)), sequence);
      Primitives.Add (To_UTF_8 (Format_setdir (Locale)), setdirectory);
      Primitives.Add (To_UTF_8 (Format_setdirectory (Locale)), setdirectory);
      Primitives.Add (To_UTF_8 (Format_setdq (Locale)), setdrawingquality);
      Primitives.Add (To_UTF_8 (Format_setdrawingquality (Locale)), setdrawingquality);
      Primitives.Add (To_UTF_8 (Format_setfn (Locale)), setfontname);
      Primitives.Add (To_UTF_8 (Format_setfontname (Locale)), setfontname);
      Primitives.Add (To_UTF_8 (Format_setfontsize (Locale)), setfontsize);
      Primitives.Add (To_UTF_8 (Format_setfs (Locale)), setfontsize);
      Primitives.Add (To_UTF_8 (Format_setheading (Locale)), setheading);
      Primitives.Add (To_UTF_8 (Format_setindexsequence (Locale)), setindexsequence);
      Primitives.Add (To_UTF_8 (Format_setinstrument (Locale)), setinstrument);
      Primitives.Add (To_UTF_8 (Format_setitem (Locale)), replace);
      Primitives.Add (To_UTF_8 (Format_setpc (Locale)), setpencolor);
      Primitives.Add (To_UTF_8 (Format_setpencolor (Locale)), setpencolor);
      Primitives.Add (To_UTF_8 (Format_setpenshape (Locale)), setpenshape);
      Primitives.Add (To_UTF_8 (Format_setpenwidth (Locale)), setpenwidth);
      Primitives.Add (To_UTF_8 (Format_setpos (Locale)), setposition);
      Primitives.Add (To_UTF_8 (Format_setposition (Locale)), setposition);
      Primitives.Add (To_UTF_8 (Format_setps (Locale)), setpenshape);
      Primitives.Add (To_UTF_8 (Format_setpw (Locale)), setpenwidth);
      Primitives.Add (To_UTF_8 (Format_setsc (Locale)), setscreencolor);
      Primitives.Add (To_UTF_8 (Format_setscreencolor (Locale)), setscreencolor);
      Primitives.Add (To_UTF_8 (Format_setscreensize (Locale)), setscreensize);
      Primitives.Add (To_UTF_8 (Format_setsep (Locale)), setsep);
      Primitives.Add (To_UTF_8 (Format_setseparation (Locale)), setseparation);
      Primitives.Add (To_UTF_8 (Format_setshape (Locale)), setshape);
      Primitives.Add (To_UTF_8 (Format_setsty (Locale)), setstyle);
      Primitives.Add (To_UTF_8 (Format_setstyle (Locale)), setstyle);
      Primitives.Add (To_UTF_8 (Format_settc (Locale)), settextcolor);
      Primitives.Add (To_UTF_8 (Format_settextcolor (Locale)), settextcolor);
      Primitives.Add (To_UTF_8 (Format_settextname (Locale)), settextname);
      Primitives.Add (To_UTF_8 (Format_settextsize (Locale)), settextsize);
      Primitives.Add (To_UTF_8 (Format_settm (Locale)), setturtlesmax);
      Primitives.Add (To_UTF_8 (Format_settn (Locale)), settextname);
      Primitives.Add (To_UTF_8 (Format_setts (Locale)), settextsize);
      Primitives.Add (To_UTF_8 (Format_setturtle (Locale)), setturtle);
      Primitives.Add (To_UTF_8 (Format_setturtlesmax (Locale)), setturtlesmax);
      Primitives.Add (To_UTF_8 (Format_setx (Locale)), setx);
      Primitives.Add (To_UTF_8 (Format_setxy (Locale)), setxy);
      Primitives.Add (To_UTF_8 (Format_sety (Locale)), sety);
      Primitives.Add (To_UTF_8 (Format_shape (Locale)), shape);
      Primitives.Add (To_UTF_8 (Format_showturtle (Locale)), showturtle);
      Primitives.Add (To_UTF_8 (Format_sin (Locale)), sin);
      Primitives.Add (To_UTF_8 (Format_sindseq (Locale)), setindexsequence);
      Primitives.Add (To_UTF_8 (Format_sine (Locale)), sine);
      Primitives.Add (To_UTF_8 (Format_sinstr (Locale)), setinstrument);
      Primitives.Add (To_UTF_8 (Format_sqrt (Locale)), squareroot);
      Primitives.Add (To_UTF_8 (Format_squareroot (Locale)), squareroot);
      Primitives.Add (To_UTF_8 (Format_st (Locale)), showturtle);
      Primitives.Add (To_UTF_8 (Format_stop (Locale)), stop);
      Primitives.Add (To_UTF_8 (Format_stopall (Locale)), stopall);
      Primitives.Add (To_UTF_8 (Format_stopanim (Locale)), stopanimation);
      Primitives.Add (To_UTF_8 (Format_stopanimation (Locale)), stopanimation);
      Primitives.Add (To_UTF_8 (Format_stopgrid (Locale)), stopgrid);
      Primitives.Add (To_UTF_8 (Format_stoptrace (Locale)), stoptrace);
      Primitives.Add (To_UTF_8 (Format_sturtle (Locale)), setturtle);
      Primitives.Add (To_UTF_8 (Format_sty (Locale)), style);
      Primitives.Add (To_UTF_8 (Format_style (Locale)), style);
      Primitives.Add (To_UTF_8 (Format_sum (Locale)), sum);
      Primitives.Add (To_UTF_8 (Format_tan (Locale)), tangent);
      Primitives.Add (To_UTF_8 (Format_tangent (Locale)), tangent);
      Primitives.Add (To_UTF_8 (Format_tc (Locale)), textcolor);
      Primitives.Add (To_UTF_8 (Format_textcolor (Locale)), textcolor);
      Primitives.Add (To_UTF_8 (Format_textname (Locale)), textname);
      Primitives.Add (To_UTF_8 (Format_textsize (Locale)), textsize);
      Primitives.Add (To_UTF_8 (Format_thing (Locale)), thing);
      Primitives.Add (To_UTF_8 (Format_time (Locale)), time);
      Primitives.Add (To_UTF_8 (Format_tm (Locale)), turtlesmax);
      Primitives.Add (To_UTF_8 (Format_tn (Locale)), textname);
      Primitives.Add (To_UTF_8 (Format_towards (Locale)), towards);
      Primitives.Add (To_UTF_8 (Format_trace (Locale)), trace);
      Primitives.Add (To_UTF_8 (Format_true (Locale)), true_k);
      Primitives.Add (To_UTF_8 (Format_ts (Locale)), textsize);
      Primitives.Add (To_UTF_8 (Format_turtle (Locale)), turtle);
      Primitives.Add (To_UTF_8 (Format_turtles (Locale)), turtles);
      Primitives.Add (To_UTF_8 (Format_turtlesmax (Locale)), turtlesmax);
      Primitives.Add (To_UTF_8 (Format_unicode (Locale)), unicode);
      Primitives.Add (To_UTF_8 (Format_variables (Locale)), variables);
      Primitives.Add (To_UTF_8 (Format_vars (Locale)), variables);
      Primitives.Add (To_UTF_8 (Format_visible (Locale)), visible);
      Primitives.Add (To_UTF_8 (Format_wait (Locale)), wait);
      Primitives.Add (To_UTF_8 (Format_wash (Locale)), wash);
      Primitives.Add (To_UTF_8 (Format_while (Locale)), while_k);
      Primitives.Add (To_UTF_8 (Format_white (Locale)), white);
      Primitives.Add (To_UTF_8 (Format_window (Locale)), window);
      Primitives.Add (To_UTF_8 (Format_word (Locale)), word);
      Primitives.Add (To_UTF_8 (Format_wordp (Locale)), wordp);
      Primitives.Add (To_UTF_8 (Format_wrap (Locale)), wrap);
      Primitives.Add (To_UTF_8 (Format_write (Locale)), write);
      Primitives.Add (To_UTF_8 (Format_writelineflow (Locale)), writelineflow);
      Primitives.Add (To_UTF_8 (Format_yellow (Locale)), yellow);
      Primitives.Add (To_UTF_8 (Format_zonesize (Locale)), zonesize);
      Primitives.Add (To_UTF_8 (Format_zoom (Locale)), zoom);
   end Fill;

end Logo.Parser;
