view admin/notes/iftc @ 66168:28718fa5d988

Moved all remaining images from lisp/toolbar to etc/images, moved lisp/toolbar/tool-bar to lisp and "deleted" lisp/toolbar. The low resolution images were placed in their own directory (low-color). Replaced underscore (_) in filenames with dash (-) per convention * make-dist: Create and populate etc/images/low-color. * admin/FOR-RELEASE (DOCUMENTATION): Removed lisp/toolbar from list since it's gone. Also marked mh-e as done. * lisp/toolbar/attach.*, lisp/toolbar/cancel.*, lisp/toolbar/close.*: * lisp/toolbar/copy.*, lisp/toolbar/cut.*, lisp/toolbar/diropen.*: * lisp/toolbar/exit.*, lisp/toolbar/help.*, lisp/toolbar/home.*: * lisp/toolbar/index.*, lisp/toolbar/info.*, lisp/toolbar/mail.*: * lisp/toolbar/new.*, lisp/toolbar/open.*, lisp/toolbar/paste.*, * * lisp/toolbar/preferences.*, lisp/toolbar/print.*, lisp/toolbar/save.*: * lisp/toolbar/saveas.*, lisp/toolbar/search.*: * lisp/toolbar/search-replace.*: lisp/toolbar/spell.*: * lisp/toolbar/undo.*: Moved to etc/images. * lisp/toolbar/lc-copy.*: Moved to etc/images/low-color/copy.*. * lisp/toolbar/lc-cut.*: Moved to etc/images/low-color/cut.*. * lisp/toolbar/lc-help.*: Moved to etc/images/low-color/help.*. * lisp/toolbar/lc-home.*: Moved to etc/images/low-color/home.*. * lisp/toolbar/lc-index.*: Moved to etc/images/low-color/index.*. * lisp/toolbar/lc-new.*: Moved to etc/images/low-color/new.*. * lisp/toolbar/lc-open.*: Moved to etc/images/low-color/open.*. * lisp/toolbar/lc-paste.*: Moved to etc/images/low-color/paste.*. * lisp/toolbar/lc-preferences.*: Moved to etc/images/low-color/preferences.*. * lisp/toolbar/lc-print.*: Moved to etc/images/low-color/print.*. * lisp/toolbar/lc-save.*: Moved to etc/images/low-color/save.*. * lisp/toolbar/lc-saveas.*: Moved to etc/images/low-color/saveas.*. * lisp/toolbar/lc-search.*: Moved to etc/images/low-color/search.*. * lisp/toolbar/lc-spell.*: Moved to etc/images/low-color/spell.*. * lisp/toolbar/lc-undo.*: Moved to etc/images/low-color/undo.*. To conform with convention, the underscore (_) in the following image names were replaced with dash (-) or (/) as appropriate. * lisp/toolbar/back_arrow.*: Moved to etc/images/back-arrow.*. * lisp/toolbar/fld_open.*: Moved to etc/images/fld-open.*. * lisp/toolbar/fwd_arrow.*: Moved to etc/images/fwd-arrow.*. * lisp/toolbar/jump_to.*: Moved to etc/images/jump-to.*. * lisp/toolbar/left_arrow.*: Moved to etc/images/left-arrow.*. * lisp/toolbar/right_arrow.*: Moved to etc/images/right-arrow.*. * lisp/toolbar/up_arrow.*: Moved to etc/images/up-arrow.*. * lisp/toolbar/lc-back_arrow.*.: Moved to etc/images/low-color/back-arrow.*. * lisp/toolbar/lc-fwd_arrow.*.: Moved to etc/images/low-color/fwd-arrow.*. * lisp/toolbar/lc-jump_to.*: Moved to etc/images/low-color/jump-to.*. * lisp/toolbar/lc-left_arrow.*.: Moved to etc/images/low-color/left-arrow.*. * lisp/toolbar/lc-right_arrow.*.: Moved to etc/images/low-color/right-arrow.*. * lisp/toolbar/lc-up_arrow.*: Moved to etc/images/low-color/up-arrow.*. * lisp/toolbar/mail_compose.*.: Moved to etc/images/mail/compose.*. * lisp/toolbar/mail_send.*: Moved to etc/images/mail/send.*. * lisp/info.el (info-tool-bar-map): Replaced underscores in image names with dashes. * lisp/makefile.w32-in (WINS): Removed toolbar. * lisp/menu-bar.el: Replaced toolbar/tool-bar.el with tool-bar.el in comment. * lisp/tool-bar.el: Moved to lisp from lisp/toolbar. Now that lisp/toolbar is empty, it should be deleted when folks run "cvs up -P". * etc/images/README: Incorporated the content of lisp/toolbar/README now that all of the images are here.
author Bill Wohler <wohler@newt.com>
date Mon, 17 Oct 2005 22:21:06 +0000
parents 695cf19ef79e
children 375f2633d815 ef719132ddfa
line wrap: on
line source

Iso-Functional Type Contour


This is a term coined to describe "column int->float" change approach, and can
be used whenever low-level types need to change (hopefully not often!) but the
meanings of the values (whose type has changed) do not.

The premise is that changing a low-level type potentially means lots of code
needs to be changed as well, and the question is how to do this incrementally,
which is the preferred way to change things.

Say LOW and HIGH are C functions:

  int LOW (void) { return 1; }
  void HIGH (void) { int value = LOW (); }

We want to convert LOW to return float, so we cast HIGH usage:

  float LOW (void) { return 1.0; }
  void HIGH (void) { int value = (int) LOW (); }  /* iftc */

The comment /* iftc */ is used to mark this type of casting to differentiate
it from other casting.  We commit the changes and can now go about modifying
LOW and HIGH separately.  When HIGH is ready to handle the type change, the
cast can be removed.

;;; arch-tag: 3309cc41-5d59-421b-b7be-c94b04083bb5