This documents changes since 5.2.0 -- see Changes 5.2.0 for info on that release.
Warning: Projects created with this version of emergent are incompatible with previous versions of emergent.
Major New Features
- Wizard interface improved significantly -- all the wizard options are presented with links in a textual document with useful usage information, and the network wizard was completely rewritten using new taGui system for easily creating new gui dialogs. Should be a lot easier to use.
- new Project dialog is now a choice of a template for the new project -- includes projects configured in standard ways -- also very easy for users to add their own templates for useful starting configurations.
- Project log of all informative messages and gui user actions now automatically created -- saved in new file with extension .plog -- can view in project edit panel -- should be useful for debugging problems.
- can now search and replace in selected items -- does a text-based replace of values -- use context menu to access -- very handy.
- Brain View projection of network onto "glass brain" 3D transparent brain rendering -- very cool! Beta implementation at this point.
- Major improvements in programming efficiency: press Return/Enter key to add a new line of code, and type in a C++ expression and it is automatically converted into corresponding Program element, which can then be edited further etc. Use Ctrl+L lookup to find variables, members, etc while typing expressions. See Program documentation for details.
- You can enter new variable names in expressions and it will then prompt you to create these variables (or go back and fix the expr) -- more efficient way of creating new variables. Also variable chooser dialogs have "New" options for making new variables.
- many improvements in Program Debugging tools (see link for full docs)
- css View tab in Program middle panel -- view and interact with css script generated from program -- great for watching new Step Css button for single stepping through the css code as it runs. mouse over variables to get current values. Context menu on line number to set a breakpoint or view corresponding program source. View Css button on a program element will highlight corresponding script code. color coding is consistent between two views as well.
- Runtime and syntax errors in css are now linked back to the corresponding line in the program editor, greatly simplifying the process of fixing bugs. Line is highlighted in red as well.
- Context menu options on the program element for toggling a breakpoint -- will stop execution of the program just before running that line of code, so that variables etc can be examined (in the css View or the css console, using standard css print commands, etc).
- VERBOSE flag on program elements now reports much more useful information
- bits flag now supported for DynEnumType dynamic enum types - allows mix-n-match multiple options selected
- IMPORTANT: DynEnum enum value was stored as an index previously, but now it is the value directly -- projects with sequentially numbered enums (which is the default) should be unaffected, but if this was not the case, the enum vals loaded from the project may not be correct.
- new QUIET flag on program elements to suppress warnings that are not relevant.
- new NEW_OBJ flag for local variables -- auto-create a new object of given type for a local variable
- renamed ProgVars to LocalVars -- these are only used for local variables so that makes a lot more sense.
- much improved lookup (Ctrl+L) chooser -- segregates expert items from preferred normal items so that lists are much less cluttered and it is easier to see what the right options are -- to access the expert items, use the list view chooser on the right side of dialog. Help browser also segregates items in the same way, so that regular items are all at the top
Minor new features
- Added Show Icon check box on NetView control panel to determine whether iconified layers are actually rendered or not. New default is to not to render.
- Can use arrow keys in NetView to move around the selected unit for viewing weight values. Also clicking to select unit is much more reliable now -- much more likely to always hit a unit now.
- Tooltips (mouseover) on 3d view tabs provide full tab name (useful with many tabs where some are elided)
- Drag-and-drop a layer on the projections group of another layer and you get a ConnectFrom option -- easy way to connect up layers using just the left browser on the layers. Also works for existing prjns to change who they connect to.
- Network NetStruTo/FmTable and NetPrjnsToTable and Layer PrjnsToTable -- write and read network structure to/from a data table -- very handy for seeing in a glance the whole connectivity and specs.
- Layer layer_type now drives background color hints: green = input, red = output/target
- Projection name now updates appropriately as layers change names
- --enable_all_plugins and --list_plugins Command line switches for Plugin management on mpi or other batch executable platforms where you don't have easy gui access.
- warnings for saving project file without write permission.
- wizard in Leabra to create a hippocampus
- Grid Layout option for 3D views -- can arrange multiple items (e.g, multiple graph or grid views) in a given view tab into a grid -- access from frame properties menu in 3D tab.
- All panels with scrollbars should now save and restore scroll position over updates -- no more jumping around all over the place. DataTable will only scroll to bottom for AddNewBlankRow ("tail mode") -- not for other external changes.
- LesionUnits in Network and related objects now works again -- it uses a LESIONED flag (set with Lesion and UnLesion functions on Unit), just like on layers, instead of actually removing the unit -- necessary for optimized unit access routines
- NetView auto scaling now actually works!
- Dreaded NULL network dialog bug fixed!