New Subnet. This button creates new subnet.
Delete Subnet. This buttons deletes the current subnet.
Normal State. Click this button and then click anywhere in current subnet to add normal state.
Select State. Click this button and then click anywhere in current subnet to add select state.
Order State. Click this button and then click anywhere in current subnet to add order state.
Range State. Click this button and then click anywhere in current subnet to add range state.
Return State. Click this button and then click anywhere in current subnet to add return state.
Stop State. Click this button and then click anywhere in current subnet to add stop state.
Finish State. Click this button and then click anywhere in current subnet to add finish state.
Arrow/Link. Click this button and then click two states you want to connect.
Show Grid. This button shows grids in subnet
Compile. This button compile your project
Trace. This button compile your project, then starts tracing.
Compile&Run. This button compiles and runs your project.
Copy. This button copies selected elements in subnet
Cut. This button cut selected elements in subnet
Paste. This button pastes elements to subnet
Delete. This button deletes selected elements in subnet
Select All. Selects all elements in current subnet.
Text Font. You can change text font.
Text Size. You can change text size.
You can change text to bold, italic and underlined.
IDE General Overview
CNP IDE is used to create CNP application. This IDE is integrated to Lazarus (Free Pascal Compiler). You should open Spider CNP Environment from Lazarus. You will see the environment like image below after selecting Tools > Spider CNP Environment in Lazarus. You can mouse over image to see more detail.
Graphical View and Edit
In Graphical you are able to create subnets interactively and see your subnet. You can select states from menu connect them with arrows/links. You can also add primitives to arrows/links, set state's options and other features using object inspector. Created subnets in graphical view added automatically to text view. Spider Compiler uses this information for subnets.
Text View contains all information of subnets. You can create subnets with using either Text View or Graphical View, but when you edit Text View you can not edit and see your subnet in Graphical View. In project folder SpiderNet.txt is corresponding file for Text View.
In SpiderUnit you can define global variables, primitives and functions. These variables and primitives are accessible from subnets.
Console Main is consists integration codes with Lazarus. Codes to print total solutions found are added in this section.
Object inspector is tool to set features of subnets, states, arrows. It can be opened with selecting View > Show Object Inspector.
When you open object inspector for a subnet you are able to;
- change name of the subnet
- define global options
- define subnet options
- define subnet parameters
- define subnet variables
Tracing is an important feature of Spider Compiler. You can see how your code is implemented step by step, and debug your code. You can start tracing by pressing button. When tracing is started trace menu shows up like below. In tracing you are able to see;
- which subnet entered or exited.
- which arrows are implemented forward or backward
- which primitives are implemented forward or backward
You can pause tracing on every;
- stop state
- finish state
Stop on every subnet
Stop on every state
Stop on every arrow/link
Stop on every primitive
Stop on every stop state
Stop on every finish state
Continue after stop