------------------------------
differences from original bash
------------------------------

   * bash/2 translates `:' in values assigned to IFS variable into `;'.
     This is not too correct but seems to work, so now this script
     will work okay:

	  IFS="${IFS=	}"; save_ifs="$IFS"; IFS="${IFS}:"
	  for dir in $PATH; do
		echo ${dir}
	  done

     while before it didn`t.

   * `test -x' will return TRUE for any file. This is due to the fact that
     OS/2 has no e`x'ecutable attribute bit on files, and can really run
     any file.

   * bash/2 has a transparent file-name translator that maps:

	/dev/null    ->      /dev/nul
	/tmp/        ->      ${TMP-/tmp/}
	/etc/        ->      ${ETC-/etc/}

     however, this only work for bash itself, i.e.

	ls >/dev/null

     works okay, while

	ls /tmp/a*

     won`t.

   * Programs run with a `&' as last character will run as DETACHed.
     The properties of Unix programs run with `&' are slightly different.
     example: ls&

   * bash/2 appends following `executable' extensions to files when file
     cannot be found in the order:

     ".exe", ".cmd", ".sh",".com", ".bat", ".btm"

   * bash/2 maps the codes of some control keys to some (mostly invented
     by me) escape sequences (alas, GNU readline doesn`t correctly handle
     assignments of keys that contains \0, unlike tcsh). You can use them
     to bind functions to keys, as I`ve done at the end of .inputrc file.
     Here are escape sequences:

     k_up      = "\EOA";
     k_down    = "\EOB";
     k_right   = "\EOC";
     k_left    = "\EOD";
     k_f1      = "\EOP";
     k_f2      = "\EOQ";
     k_f3      = "\EOR";
     k_f4      = "\EOS";
     k_f5      = "\EOT";
     k_f6      = "\EOU";
     k_f7      = "\EOV";
     k_f8      = "\EOW";
     k_f9      = "\EOX";
     k_f10     = "\EOY";
     k_c_back  = "\E[M";
     k_ins     = "\E[@";
     k_del     = "\E[P";
     k_c_home  = "\E[2J";
     k_c_end   = "\E[K";
     k_home    = "\E]7";
     k_end     = "\E]1";
     k_pgup    = "\E]9";
     k_pgdn    = "\E]3";
     k_a_tab   = "\E]at";
     k_c_tab   = "\E]ct";
     k_s_tab   = "\E]st";
     k_c_pgup  = "\E]c9";
     k_c_pgdn  = "\E]c3";
     k_c_up    = "\E]c8";
     k_c_down  = "\E]c2";
     k_c_left  = "\E]c4";
     k_c_right = "\E]c6";
     k_c_ins   = "\E]ci";
     k_c_del   = "\E]cd";
     k_s_ins   = "\E]si";
     k_s_del   = "\E]sd";
     k_c_space = "\E]c ";
     k_a_lbrck = "\E][";
     k_a_rbrck = "\E]]";
     k_a_enter = "\E]ae";
     k_a_a     = "\EaA";
     k_a_b     = "\EaB";
     k_a_c     = "\EaC";
     k_a_d     = "\EaD";
     k_a_e     = "\EaE";
     k_a_f     = "\EaF";
     k_a_g     = "\EaG";
     k_a_h     = "\EaH";
     k_a_i     = "\EaI";
     k_a_j     = "\EaJ";
     k_a_k     = "\EaK";
     k_a_l     = "\EaL";
     k_a_m     = "\EaM";
     k_a_n     = "\EaN";
     k_a_o     = "\EaO";
     k_a_p     = "\EaP";
     k_a_q     = "\EaQ";
     k_a_r     = "\EaR";
     k_a_s     = "\EaS";
     k_a_t     = "\EaT";
     k_a_u     = "\EaU";
     k_a_v     = "\EaV";
     k_a_w     = "\EaW";
     k_a_x     = "\EaX";
     k_a_y     = "\EaY";
     k_a_z     = "\EaZ";

-----------------------
Features under question
-----------------------

   * When testing for existence of files (i.e. test -f gcc) Unix scripts
     don`t know anything about executable extensions. This results in configure
     not finding gcc, for example. I can add a feature to `test' command
     to search for file with different `executable' extensions, if required
     file is not found, but don`t know if this is desirable.
