PWCT Features – Programming Scope
From low-level C to high-level GUI applications — PWCT covers a wide programming scope with multiple visual languages.
PWCT is a General Purpose Visual Programming System. We can use PWCT to create different types of applications, and we can extend the system by supporting more textual programming languages to get more power.
We can create large scale applications using PWCT. Our project could be a group of sub projects interacting together.
Each project or subproject could contain one or more visual source files (*.SSF & *.FPT).
For example, a course management system developed using PWCT in 2011 contains 104 visual source files (*.SSF) in the same project.
Fig. 1 List of *.SSF files in the Course Management System developed using PWCT
You can create very large scale applications using PWCT, but you will need large space on your hard disk. Also break your project to more than one visual source file (Divide and Conquer) and avoid putting thousands of steps in the same goal to get high performance and clear design. This also gives the ability for more than one programmer to work on the same project at the same time.
We have a collection of visual programming languages inside PWCT to choose from as a tool for developing our applications.
From the previous collection, it is clear that we can do high level programming using visual languages like (HarbourPWCT, SupernovaPWCT & PythonPWCT) and/or we can do low level programming using the CPWCT visual programming language.
The next figure presents a steps tree while using the SupernovaPWCT visual programming language.
High level programming lets the developer concentrate on the task, and get an easy to read and understand steps tree.
Fig. 2 High level programming using SupernovaPWCT
The next figure presents a steps tree while using the CPWCT visual programming language.
A low level programming language gives the programmer direct access to the machine resources like the memory. For example the programmer can control the operations of allocating/freeing the memory and can access data at the bit level.
CPWCT gives us the power of the C programming language but in a visual programming world where we can see the program instructions as a tree of steps, we can avoid syntax errors, we don’t need to remember many things, we can explore the language components.
Introducing the C programming language concepts to students could be more fun in a visual programming world.
The productivity gain when we use CPWCT, the ability to customize the environment and the flexibility to create new visual components are attractive features for expert programmers to develop some of their C programs using CPWCT.
Fig. 3 Low Level programming using CPWCT
The next figures present some of the free open source projects developed using PWCT.
Fig. 4 Smart POS System
Fig. 5 Critical Nodes
Fig. 6 Supernova Programming Language
| # | Project Name | URL |
|---|---|---|
| 1 | Smart POS System | http://sourceforge.net/projects/pos-sys/ |
| 2 | Critical Nodes | http://sourceforge.net/projects/criticalnodes/ |
| 3 | Supernova Programming Language | http://sourceforge.net/projects/supernova/ |