Pliant integrated development environment

We assume that you have already installed, and performed minimal configuration of Pliant.
The Pliant integrated development environment does not work under Windows. It works under Linux without root priviledges (non cooped logical computer) starting from Pliant release 100a.

Step 1: define a logical computer

In FullPliant homepage menu, select 'Configure' 'Logical and install'.
Type in 'Logical computer name' the name of the logical computer you are going to use for development. The name should be something like mydevel.mydomain.org as opposed to just mydevel.
Now follow the new link to the logical computer definition.

You may want to change 'Root path' to something like data:/logical/mydevel.mydomain.org/ instead of file:/logical/mydevel.mydomain.org/ if you want the logical computers directory to be inside /pliant_data/ directory instead of creating a fourth Pliant directory at root on your disk.
Please remind that with Pliant standard install where Pliant is installed at root on the computer hard disk, data:/logical/mydevel.mydomain.org/ is the same as file:/pliant_data/logical/mydevel.mydomain.org/

Then you have to set the important 'Cooped up' field. If can be set, and is recommanded to set to true, only if you are running FullPliant, or are running Pliant with root priviledges under Linux.
Cooped up means use Linux kernel 'chroot' feature to prevent the logical computer to see any directory ouside the one specified on 'Root path' field.
In other words, if cooped up is set to false, then for the logical computer, file:/ is the same as for the real computer, but if cooped up is set to true, then for the logical computer, file:/ is the same as file:/logical/mydevel.mydomain.org/ on the real computer, on any other value you specified in the 'Root path' field.

'User ID' and 'Group ID' are a way run the logical computer as not root if the Pliant process running on the physical computer is root. Used in conjonction with 'Cooped up', it makes hard for an intruder that compromised the logical computer security to take full control of the all computer.

Assigned memory is a way to recommand (not at all granted) to start freeing memory if possible (through droping some objects in the cache) as soon as the memory consumed exceeds the specified value.
Maximum memory tell Pliant process running on the logical computer to just stop if the memory it consumed exceeds the specified value.

'Pliant multiplexer TCP port' must be specified a free TCP port that the logical computer will use to provide access to Pliant services from the external. If the logical computer is not running with root priviledges and the kernel not FullPliant customised Linux, then this port must be greater than 1024.
An example could be 8037.

Step 2: install the logical computer

Move back to the 'FullPliant logical computers administration' page ('Configure' 'Logical and install' from the FullPliant homepage menu), then press the 'install' button.
Select 'logical computer' in 'Medium' field.
Set the 'Name of the new host' field with the name you have choosen for your development logical computer, that is 'mydevel.mydomain.org' in my example.
Adjust the 'Path of the logical computer' field if necessary, according to what you specified at logical computer creation time, and do the same for 'Pliant multiplexer TCP port'.
Then hit the 'install' button, and wait.

Step 3: define your development environment

In FullPliant homepage menu, enter the integrated development environment through selecting 'Tools' then 'Development' buttons.

In order to create the first development environment, select 'Configure' then 'Create'.
Fill 'New environment ID' with let's say 'myapp' and press 'create'
'Label' is a short label, let's say 'My App' that you will later use to select this development environment in the select input field of the integrated development environment.
'Title' is the title you will see at the top of the page when you are using this environment.
'Logical computer' is the name of the logical computer you created at steps 1 and 2.
Just ignore 'Path for files' at the moment.

In your first project, let's start with standard precompiling.
Fill 'Dump name' with /binary/default.dump
Then fill 'Module ID' with '1' and press the 'create' button to create a precompile line. Fill the newly created precompiling line with /pliant/install/precompile.pli

Let's assume that your first application will be a single module at first, and that it will be in /pliant/myorg/myapp/mymodule1.pli, so in the 'Test' part, fill 'Module ID' with '1' and press 'create' button to create a compile test line. Fill the newly created compile test line with /myorg/myapp/mymodule1.pli

Step 4: test your configuration

Starting from now on, it is recommanded to use two Pliant user interface (UI) sessions. One for editing the source code, one for testing it.
In order to create a second UI session, press Ctrl+Shift+F2. You can now switch from one session to the other through pressing Ctrl+F1 or Ctrl+F2. The session ID, I mean F1 or F2 is displayed in the right window of the UI client.

In one of the sessions, move back to FullPliant homepage, then select 'Tools' 'Files' to enter the files browser. Move to the directory of your development logical computer, which was file:/logical/mydevel.fullpliant.org/ in my step 1 sample.
Now, move to 'pliant' subdirectory, create, select 'new' to create a new directory, fill 'Name' with 'myorg' and press 'create new directory' in order to create the 'myorg' new subdirectory. Enter it through following the 'myorg' link.
Do the same to create 'myapp' subdirectory.
Do nearly the same, but use 'create new file' in order to create the new 'mymodule1.pli' module.
Follow the 'mymodule1.pli' link to enter the text editor.
Type in your first programme, let's say

console "hello word" eol

then use 'File' 'Save' to save it.

Move to the other session, move back to FullPliant homepage, then reenter the Pliant integrated development environment through following 'Tools' 'Development'.
Select 'My App' environment in the select input field of the left Windows,
and finaly hit the 'test' button on the 'mymodule1.pli' line to test your application.

If you get 'Hello word' in the top window, then congratulations, your development environment is up and running.