About these tools
Tools are classified according to the algorithms used for processing their input and output, namely:
- Recursive Forms (RF) Tools: Input and output are processed recursively.
- One-to-Many (O2M) Tools: Input is mapped to multiple outputs.
- Non RF/O2M Tools: Not based on RF or O2M. These are listed by disciplines or topics.
Recursive Forms Defined
We define a recursive form (RF) as an HTML form that uses its previous output as its new input. An RF tool has a non-intrusive design that is suitable for small screen displays like smartphones and tablets. Because RFs are self-contained, multiple RFs can coexist on a web page without collisions. In addition, an RF can be coded to add new capabilities to other web tools.
Possible applications for RFs include:
- Unit Converters; e.g., to convert units of measurements.
- Recursive Searches; e.g., to recursively search associative arrays.
- Find Equivalencies; e.g., to find mass-volume and mass-mass equivalencies.
- Equation Solver; i.e., to solve equations for a given term.
- Map Concepts i.e., to report related concepts.
- Find Products/Services Features; i.e., to report features of products or services.
- Word Dictionaries; i.e., to find word definitions.
- Word Translators; i.e., to translate words to different languages.
- ...and many more.
RFs can be enhanced by adding new features. For instance, consider our Recursive Searches tool. This RF features a verbose mode, a mute mode, and a reset element. The verbose mode turns recursive sessions into oracle-like sessions, the mute mode disables the verbose mode, and the reset element resets the RF.
RFs can also be developed to accept user-defined parameters. Examples will be provided as we move forward with these types of tools.
Some form-based graphical user interfaces (GUIs) give users the illusion of mapping an input field value to all other fields. This requires the coding of M number of conditional statements, or hidden fields, M number of times. Typical examples are unit converters and conversion tools. For instance, to display a GUI that converts five different units of temperature requires the coding of 25 conditional statements, or hidden fields. This is an inefficient coding strategy. A workaround consists in coding M different conditional statements (switch or if-else based). As M increases, however, the number of conditional statements increases and we end up coding a trail of logics that resembles a chicken dance.
To overcome those drawbacks, we developed the one-to-many (O2M) algorithm. O2M works by using a single function to mutate the nature of the fields. Given a form with M unique fields, randomly using one as the input field renders the remaining ones as output fields. Thus an input value is mapped to the remaining M - 1 output fields.
These are tools that do not implement RF or O2M. We have organized these by disciplines or topics