Bwise as Source Code Generator

As a direct result of the serious interest of someone for using Bwise as a web site maintenance and interactive content generator tool, this page describes the practical applicability of the latest version of Bwise in this area.

The main thoughts

Considering many systems are easily and naturally enough understood in network fashion, an interactive block editor, with added functionality for userinterface components in the network itself is a good start for application to make networks the basis for some task.

The current focus is networks that generate source code, possibly tcl/tk, possibly html, and that may be driven or 'executed' under control of a web server. As a start the network may just be run as a collection of blocks that represent tcl code fragments passing data to eachother.

To 'run' a network, it is needed to have a certain order of calling the blocks in it. Alternatively, the structure of the network may be sufficient. An interactively responding network is the hardest.

Example function decomposition

The netlistout command (type on console after loading the library) returns a list of sublists for each connection in the network that runs between an input and and output pin. Each sublist has the form: block pin block pin.

Example running a network

The entry block (type newentry in a console window), though not re-loadable automatically after the canvas is saved (then it must be replaced by a new one), has on output and an on-canvas entry for any text, that will at the press of return with the cursor in the entry hold that text, and start evaluating all connected bwise blocks.

Example

By typing newseq in the command window, a block is created which can trigger blocks on a row. It has a line of outputs o1...o8, which when connected to trigger inputs of other bwise blocks make those blocks active on a row (1,2,3...).