SlideShare a Scribd company logo
1 of 9
Download to read offline
PWCT Features – Framework and Extension
When we program using PWCT, we uses one of the available visual programming languages like
HarbourPWCT, CPWCT, PythonPWCT & SupernovaPWCT. All of these visual programming languages
are developed inside PWCT Environment. PWCT provide us with the designers that we can use to
develop new components. A visual programming language inside PWCT is not more than a collection of
components working together to wrap a text based programming language. We can develop our visual
programming languages on the top of a compiler or interpreter, also we can use a framework to get more
high level results. And we can develop our visual language on the top of a very low level language like
ASM.
Inside PWCT, the visual programming language is a ( Domain Tree + Components )
From the menu bar, in the (Domain Tree) popup, we have a group of options, we can open the domain
tree window, install component, reinstall component or uninstall component.

Fig.1 Domain Tree Popup
Fig. 2 Domain Tree window

Using the “Domain Tree” window we can create & modify our domain tree.
Using the “Install component” window, we can install new components to our domain tree.

Fig. 3 Install Component.

To install new component, we enter the component name, select the component file (*.TRF) and select
the component domain in the domain tree.
Each component file (*.TRF) may contains one or more of interaction pages (*.IDF), the interaction page
is a data entry form which ask the user to enter data required by the component. For example the printf
component asks the user to enter the string that will be printed on the screen.
This component is considered low level, because using it requires remembering things like “n” which is
related to the text based programming language world. In the visual programming world we try to avoid
things like that, using PWCT we can avoid these things, also we can use it if we want. The choice returns
to the visual programming language designer. He/she could design a visual language that force one way
or give the freedom to the user to select any way. If he forced the user to use one way, the user can
change this because he could modify or add to the components list.

Fig. 4 Interaction Page

Each component file (*.TRF) is created using the Transporter designer.
Fig. 5 Transporter Designer

Each interaction page file (*.IDF) could be created using the Interaction designer or using the Interaction
Pages Generator.

Fig. 6 Interaction Designer
Fig. 7 Running the Interaction Pages Generator

Fig. 8 The Interaction Pages Generator

Using the interaction pages generator, we can quickly generate an interaction page file (*.IDF) and a
component file (*.TRF) contains a reference to this interaction page. Using the interaction designer, we
can customize the user interface of the interaction page, and we can add default values to the controls
(textbox, listbox & checkbox). To control the operation of steps generation in the goal designer, and the
operation of code generation, we write a script in the code mask section, in the transporter designer.
Fig. 9 Transporter Designer – Code Mask

PWCT comes with very simple scripting language called (RPWI) for controlling the process of steps
generation and code generation. For example the command <RPWI:NEWSTEP> is used to create a new
step. The generated code is written directly. The variable is written between „<‟ and „>‟ , i.e.
<variable_name_is_here> . You don‟t need to save these commands, using a right click while typing the
code mask, you will get a popup menu with all of the commands in RPWI. We have variables in the
interaction pages, and we have variables in the code mask, in the matching section we can do automatic
matching between variables names in the code mask and the variables names in the interaction pages. Or
we can do manual matching based on our needs. Automatic matching requires similar names between the
variables here (code mask) and there (interaction page).
Fig. 10 Transporter Designer – Matching.

In the rules section, we determine the rules of composition between this component and other
components.

Fig. 11 Transporter Designer – Rules

PWCT is open source, you can open any component in any visual programming language and see the
Code Mask script to learn how this component is created, how it‟s working.
If you want to create new visual programming language inside PWCT, and you want to learn step by step
how to create your components, how to distribute the visual language to other PWCT users, we provide
tutorials that will let you in little hours get the knowledge to do this.
To create a new visual programming language, pick a useful text based programming language, collect a
group of useful libraries and frameworks for this language, you may create your own libraries based on
your needs, design the visual components, the user interface of each component, the relationship between
components, develop your components, test them, create samples & tutorials then share what you have
done with us, we will distribute your work with PWCT.
You can speed up the development process by using components designed for another language, change
the code mask, and get the required result. This works perfectly when the two languages share many
things.
Creating New VPL (Visual Programming Language) tutorials
Tutorials (PDF Files)
Starting new VPL project
Creating, Installing & Using your first component
Adding Interaction pages to your component
Using the Interaction Pages Generator
Adding Checkbox to Interaction pages
Take decision if the checkbox value is FALSE
Writing code mask to generate a steps and substeps (Determine the step parent)
Adding Listbox to Interaction pages
Adding TABs to the generated source code
Using Variables in the Code Mask
Generate steps in different locations in the steps tree
Writing the Code Mask and the Rules inside the Transporter Designer
Rapid components development
Table 1. Creating new VPL tutorials

HOME

More Related Content

What's hot

His162013 140529214456-phpapp01
His162013 140529214456-phpapp01His162013 140529214456-phpapp01
His162013 140529214456-phpapp01Getachew Ganfur
 
Php vs asp.net most valuable differences to learn and select the best one f...
Php vs asp.net   most valuable differences to learn and select the best one f...Php vs asp.net   most valuable differences to learn and select the best one f...
Php vs asp.net most valuable differences to learn and select the best one f...Concetto Labs
 
MTaulty_DevWeek_VS2010
MTaulty_DevWeek_VS2010MTaulty_DevWeek_VS2010
MTaulty_DevWeek_VS2010ukdpe
 
AnswerModules ModuleSuite
AnswerModules ModuleSuiteAnswerModules ModuleSuite
AnswerModules ModuleSuiteAnswerModules
 
Introduction to flutter's basic concepts
Introduction to flutter's basic conceptsIntroduction to flutter's basic concepts
Introduction to flutter's basic conceptsKumaresh Chandra Baruri
 
Introduction to VB.net
Introduction to VB.netIntroduction to VB.net
Introduction to VB.netYousaf Sahota
 
Pengantar Pemrograman Visual II
Pengantar Pemrograman Visual IIPengantar Pemrograman Visual II
Pengantar Pemrograman Visual IIWahyu Primadi
 
ALPHA Script - Presentation
ALPHA Script - PresentationALPHA Script - Presentation
ALPHA Script - PresentationPROBOTEK
 
Scripting languages presentation_michel_patrickfrancis
Scripting languages presentation_michel_patrickfrancisScripting languages presentation_michel_patrickfrancis
Scripting languages presentation_michel_patrickfrancisoloofrank
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.netJaya Kumari
 
Mpi.net running wizard
Mpi.net running wizardMpi.net running wizard
Mpi.net running wizardAhmed Imair
 

What's hot (18)

Introduction to c#
Introduction to c#Introduction to c#
Introduction to c#
 
Vp lecture1 ararat
Vp lecture1 araratVp lecture1 ararat
Vp lecture1 ararat
 
Microsoft C# programming basics
Microsoft C# programming basics  Microsoft C# programming basics
Microsoft C# programming basics
 
His162013 140529214456-phpapp01
His162013 140529214456-phpapp01His162013 140529214456-phpapp01
His162013 140529214456-phpapp01
 
Php vs asp.net most valuable differences to learn and select the best one f...
Php vs asp.net   most valuable differences to learn and select the best one f...Php vs asp.net   most valuable differences to learn and select the best one f...
Php vs asp.net most valuable differences to learn and select the best one f...
 
A comprehensive software infrastructure of .Net
A comprehensive software infrastructure of .Net  A comprehensive software infrastructure of .Net
A comprehensive software infrastructure of .Net
 
MTaulty_DevWeek_VS2010
MTaulty_DevWeek_VS2010MTaulty_DevWeek_VS2010
MTaulty_DevWeek_VS2010
 
AnswerModules ModuleSuite
AnswerModules ModuleSuiteAnswerModules ModuleSuite
AnswerModules ModuleSuite
 
Introduction to flutter's basic concepts
Introduction to flutter's basic conceptsIntroduction to flutter's basic concepts
Introduction to flutter's basic concepts
 
Introduction to VB.net
Introduction to VB.netIntroduction to VB.net
Introduction to VB.net
 
Choose flutter
Choose flutterChoose flutter
Choose flutter
 
Pengantar Pemrograman Visual II
Pengantar Pemrograman Visual IIPengantar Pemrograman Visual II
Pengantar Pemrograman Visual II
 
ALPHA Script - Presentation
ALPHA Script - PresentationALPHA Script - Presentation
ALPHA Script - Presentation
 
Scripting languages presentation_michel_patrickfrancis
Scripting languages presentation_michel_patrickfrancisScripting languages presentation_michel_patrickfrancis
Scripting languages presentation_michel_patrickfrancis
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.net
 
History of Visual Basic Programming
History of Visual Basic ProgrammingHistory of Visual Basic Programming
History of Visual Basic Programming
 
OPEN STA
OPEN STAOPEN STA
OPEN STA
 
Mpi.net running wizard
Mpi.net running wizardMpi.net running wizard
Mpi.net running wizard
 

Similar to Programming Without Coding Technology (PWCT) Features - Framework & Extension

Using Python inside Programming Without Coding Technology (PWCT) Environment
Using Python inside Programming Without Coding Technology (PWCT) EnvironmentUsing Python inside Programming Without Coding Technology (PWCT) Environment
Using Python inside Programming Without Coding Technology (PWCT) EnvironmentMahmoud Samir Fayed
 
Programming Without Coding Technology (PWCT) Getting Started - The Time Machine
Programming Without Coding Technology (PWCT)  Getting Started - The Time MachineProgramming Without Coding Technology (PWCT)  Getting Started - The Time Machine
Programming Without Coding Technology (PWCT) Getting Started - The Time MachineMahmoud Samir Fayed
 
Vb6.0 Introduction
Vb6.0 IntroductionVb6.0 Introduction
Vb6.0 IntroductionTennyson
 
Online advertising management system
Online advertising management systemOnline advertising management system
Online advertising management systemYesu Raj
 
Online advertising management system
Online advertising management systemOnline advertising management system
Online advertising management systemYesu Raj
 
Flutter vs ReactNative
Flutter vs ReactNativeFlutter vs ReactNative
Flutter vs ReactNativeSumit Sahoo
 
Automatic answer checker
Automatic answer checkerAutomatic answer checker
Automatic answer checkerYesu Raj
 
Eo gaddis java_chapter_14_5e
Eo gaddis java_chapter_14_5eEo gaddis java_chapter_14_5e
Eo gaddis java_chapter_14_5eGina Bullock
 
Eo gaddis java_chapter_14_5e
Eo gaddis java_chapter_14_5eEo gaddis java_chapter_14_5e
Eo gaddis java_chapter_14_5eGina Bullock
 
Demystifying dot NET reverse engineering - Part1
Demystifying  dot NET reverse engineering - Part1Demystifying  dot NET reverse engineering - Part1
Demystifying dot NET reverse engineering - Part1Soufiane Tahiri
 
Flutter App Performance Optimization_ Tips and Techniques.pdf
Flutter App Performance Optimization_ Tips and Techniques.pdfFlutter App Performance Optimization_ Tips and Techniques.pdf
Flutter App Performance Optimization_ Tips and Techniques.pdfDianApps Technologies
 
Software programming and development
Software programming and developmentSoftware programming and development
Software programming and developmentAli Raza
 
Flutter Optimization Techniques to Improve Existing App Results.pdf
Flutter Optimization Techniques to Improve Existing App Results.pdfFlutter Optimization Techniques to Improve Existing App Results.pdf
Flutter Optimization Techniques to Improve Existing App Results.pdfTechugo
 
WPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysWPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysDave Bost
 
Basics java scripts
Basics java scriptsBasics java scripts
Basics java scriptsch samaram
 
Introduction of VS2012 IDE and ASP.NET Controls
Introduction of VS2012 IDE and ASP.NET ControlsIntroduction of VS2012 IDE and ASP.NET Controls
Introduction of VS2012 IDE and ASP.NET ControlsKhademulBasher
 

Similar to Programming Without Coding Technology (PWCT) Features - Framework & Extension (20)

Using Python inside Programming Without Coding Technology (PWCT) Environment
Using Python inside Programming Without Coding Technology (PWCT) EnvironmentUsing Python inside Programming Without Coding Technology (PWCT) Environment
Using Python inside Programming Without Coding Technology (PWCT) Environment
 
Programming Without Coding Technology (PWCT) Getting Started - The Time Machine
Programming Without Coding Technology (PWCT)  Getting Started - The Time MachineProgramming Without Coding Technology (PWCT)  Getting Started - The Time Machine
Programming Without Coding Technology (PWCT) Getting Started - The Time Machine
 
Vb6.0 Introduction
Vb6.0 IntroductionVb6.0 Introduction
Vb6.0 Introduction
 
dot net
dot netdot net
dot net
 
Online advertising management system
Online advertising management systemOnline advertising management system
Online advertising management system
 
Online advertising management system
Online advertising management systemOnline advertising management system
Online advertising management system
 
Flutter vs ReactNative
Flutter vs ReactNativeFlutter vs ReactNative
Flutter vs ReactNative
 
Vb.net class notes
Vb.net class notesVb.net class notes
Vb.net class notes
 
Automatic answer checker
Automatic answer checkerAutomatic answer checker
Automatic answer checker
 
Eo gaddis java_chapter_14_5e
Eo gaddis java_chapter_14_5eEo gaddis java_chapter_14_5e
Eo gaddis java_chapter_14_5e
 
Eo gaddis java_chapter_14_5e
Eo gaddis java_chapter_14_5eEo gaddis java_chapter_14_5e
Eo gaddis java_chapter_14_5e
 
mobicon_paper
mobicon_papermobicon_paper
mobicon_paper
 
Demystifying dot NET reverse engineering - Part1
Demystifying  dot NET reverse engineering - Part1Demystifying  dot NET reverse engineering - Part1
Demystifying dot NET reverse engineering - Part1
 
Flutter App Performance Optimization_ Tips and Techniques.pdf
Flutter App Performance Optimization_ Tips and Techniques.pdfFlutter App Performance Optimization_ Tips and Techniques.pdf
Flutter App Performance Optimization_ Tips and Techniques.pdf
 
Software programming and development
Software programming and developmentSoftware programming and development
Software programming and development
 
Flutter Optimization Techniques to Improve Existing App Results.pdf
Flutter Optimization Techniques to Improve Existing App Results.pdfFlutter Optimization Techniques to Improve Existing App Results.pdf
Flutter Optimization Techniques to Improve Existing App Results.pdf
 
WPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysWPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these days
 
As pnet
As pnetAs pnet
As pnet
 
Basics java scripts
Basics java scriptsBasics java scripts
Basics java scripts
 
Introduction of VS2012 IDE and ASP.NET Controls
Introduction of VS2012 IDE and ASP.NET ControlsIntroduction of VS2012 IDE and ASP.NET Controls
Introduction of VS2012 IDE and ASP.NET Controls
 

More from Mahmoud Samir Fayed

The Ring programming language version 1.10 book - Part 212 of 212
The Ring programming language version 1.10 book - Part 212 of 212The Ring programming language version 1.10 book - Part 212 of 212
The Ring programming language version 1.10 book - Part 212 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 211 of 212
The Ring programming language version 1.10 book - Part 211 of 212The Ring programming language version 1.10 book - Part 211 of 212
The Ring programming language version 1.10 book - Part 211 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 210 of 212
The Ring programming language version 1.10 book - Part 210 of 212The Ring programming language version 1.10 book - Part 210 of 212
The Ring programming language version 1.10 book - Part 210 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 208 of 212
The Ring programming language version 1.10 book - Part 208 of 212The Ring programming language version 1.10 book - Part 208 of 212
The Ring programming language version 1.10 book - Part 208 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 207 of 212
The Ring programming language version 1.10 book - Part 207 of 212The Ring programming language version 1.10 book - Part 207 of 212
The Ring programming language version 1.10 book - Part 207 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 205 of 212
The Ring programming language version 1.10 book - Part 205 of 212The Ring programming language version 1.10 book - Part 205 of 212
The Ring programming language version 1.10 book - Part 205 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 206 of 212
The Ring programming language version 1.10 book - Part 206 of 212The Ring programming language version 1.10 book - Part 206 of 212
The Ring programming language version 1.10 book - Part 206 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 204 of 212
The Ring programming language version 1.10 book - Part 204 of 212The Ring programming language version 1.10 book - Part 204 of 212
The Ring programming language version 1.10 book - Part 204 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 203 of 212
The Ring programming language version 1.10 book - Part 203 of 212The Ring programming language version 1.10 book - Part 203 of 212
The Ring programming language version 1.10 book - Part 203 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 202 of 212
The Ring programming language version 1.10 book - Part 202 of 212The Ring programming language version 1.10 book - Part 202 of 212
The Ring programming language version 1.10 book - Part 202 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 201 of 212
The Ring programming language version 1.10 book - Part 201 of 212The Ring programming language version 1.10 book - Part 201 of 212
The Ring programming language version 1.10 book - Part 201 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 200 of 212
The Ring programming language version 1.10 book - Part 200 of 212The Ring programming language version 1.10 book - Part 200 of 212
The Ring programming language version 1.10 book - Part 200 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 199 of 212
The Ring programming language version 1.10 book - Part 199 of 212The Ring programming language version 1.10 book - Part 199 of 212
The Ring programming language version 1.10 book - Part 199 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 198 of 212
The Ring programming language version 1.10 book - Part 198 of 212The Ring programming language version 1.10 book - Part 198 of 212
The Ring programming language version 1.10 book - Part 198 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 197 of 212
The Ring programming language version 1.10 book - Part 197 of 212The Ring programming language version 1.10 book - Part 197 of 212
The Ring programming language version 1.10 book - Part 197 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 196 of 212
The Ring programming language version 1.10 book - Part 196 of 212The Ring programming language version 1.10 book - Part 196 of 212
The Ring programming language version 1.10 book - Part 196 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 195 of 212
The Ring programming language version 1.10 book - Part 195 of 212The Ring programming language version 1.10 book - Part 195 of 212
The Ring programming language version 1.10 book - Part 195 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 194 of 212
The Ring programming language version 1.10 book - Part 194 of 212The Ring programming language version 1.10 book - Part 194 of 212
The Ring programming language version 1.10 book - Part 194 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 193 of 212
The Ring programming language version 1.10 book - Part 193 of 212The Ring programming language version 1.10 book - Part 193 of 212
The Ring programming language version 1.10 book - Part 193 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 192 of 212
The Ring programming language version 1.10 book - Part 192 of 212The Ring programming language version 1.10 book - Part 192 of 212
The Ring programming language version 1.10 book - Part 192 of 212Mahmoud Samir Fayed
 

More from Mahmoud Samir Fayed (20)

The Ring programming language version 1.10 book - Part 212 of 212
The Ring programming language version 1.10 book - Part 212 of 212The Ring programming language version 1.10 book - Part 212 of 212
The Ring programming language version 1.10 book - Part 212 of 212
 
The Ring programming language version 1.10 book - Part 211 of 212
The Ring programming language version 1.10 book - Part 211 of 212The Ring programming language version 1.10 book - Part 211 of 212
The Ring programming language version 1.10 book - Part 211 of 212
 
The Ring programming language version 1.10 book - Part 210 of 212
The Ring programming language version 1.10 book - Part 210 of 212The Ring programming language version 1.10 book - Part 210 of 212
The Ring programming language version 1.10 book - Part 210 of 212
 
The Ring programming language version 1.10 book - Part 208 of 212
The Ring programming language version 1.10 book - Part 208 of 212The Ring programming language version 1.10 book - Part 208 of 212
The Ring programming language version 1.10 book - Part 208 of 212
 
The Ring programming language version 1.10 book - Part 207 of 212
The Ring programming language version 1.10 book - Part 207 of 212The Ring programming language version 1.10 book - Part 207 of 212
The Ring programming language version 1.10 book - Part 207 of 212
 
The Ring programming language version 1.10 book - Part 205 of 212
The Ring programming language version 1.10 book - Part 205 of 212The Ring programming language version 1.10 book - Part 205 of 212
The Ring programming language version 1.10 book - Part 205 of 212
 
The Ring programming language version 1.10 book - Part 206 of 212
The Ring programming language version 1.10 book - Part 206 of 212The Ring programming language version 1.10 book - Part 206 of 212
The Ring programming language version 1.10 book - Part 206 of 212
 
The Ring programming language version 1.10 book - Part 204 of 212
The Ring programming language version 1.10 book - Part 204 of 212The Ring programming language version 1.10 book - Part 204 of 212
The Ring programming language version 1.10 book - Part 204 of 212
 
The Ring programming language version 1.10 book - Part 203 of 212
The Ring programming language version 1.10 book - Part 203 of 212The Ring programming language version 1.10 book - Part 203 of 212
The Ring programming language version 1.10 book - Part 203 of 212
 
The Ring programming language version 1.10 book - Part 202 of 212
The Ring programming language version 1.10 book - Part 202 of 212The Ring programming language version 1.10 book - Part 202 of 212
The Ring programming language version 1.10 book - Part 202 of 212
 
The Ring programming language version 1.10 book - Part 201 of 212
The Ring programming language version 1.10 book - Part 201 of 212The Ring programming language version 1.10 book - Part 201 of 212
The Ring programming language version 1.10 book - Part 201 of 212
 
The Ring programming language version 1.10 book - Part 200 of 212
The Ring programming language version 1.10 book - Part 200 of 212The Ring programming language version 1.10 book - Part 200 of 212
The Ring programming language version 1.10 book - Part 200 of 212
 
The Ring programming language version 1.10 book - Part 199 of 212
The Ring programming language version 1.10 book - Part 199 of 212The Ring programming language version 1.10 book - Part 199 of 212
The Ring programming language version 1.10 book - Part 199 of 212
 
The Ring programming language version 1.10 book - Part 198 of 212
The Ring programming language version 1.10 book - Part 198 of 212The Ring programming language version 1.10 book - Part 198 of 212
The Ring programming language version 1.10 book - Part 198 of 212
 
The Ring programming language version 1.10 book - Part 197 of 212
The Ring programming language version 1.10 book - Part 197 of 212The Ring programming language version 1.10 book - Part 197 of 212
The Ring programming language version 1.10 book - Part 197 of 212
 
The Ring programming language version 1.10 book - Part 196 of 212
The Ring programming language version 1.10 book - Part 196 of 212The Ring programming language version 1.10 book - Part 196 of 212
The Ring programming language version 1.10 book - Part 196 of 212
 
The Ring programming language version 1.10 book - Part 195 of 212
The Ring programming language version 1.10 book - Part 195 of 212The Ring programming language version 1.10 book - Part 195 of 212
The Ring programming language version 1.10 book - Part 195 of 212
 
The Ring programming language version 1.10 book - Part 194 of 212
The Ring programming language version 1.10 book - Part 194 of 212The Ring programming language version 1.10 book - Part 194 of 212
The Ring programming language version 1.10 book - Part 194 of 212
 
The Ring programming language version 1.10 book - Part 193 of 212
The Ring programming language version 1.10 book - Part 193 of 212The Ring programming language version 1.10 book - Part 193 of 212
The Ring programming language version 1.10 book - Part 193 of 212
 
The Ring programming language version 1.10 book - Part 192 of 212
The Ring programming language version 1.10 book - Part 192 of 212The Ring programming language version 1.10 book - Part 192 of 212
The Ring programming language version 1.10 book - Part 192 of 212
 

Recently uploaded

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Recently uploaded (20)

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 

Programming Without Coding Technology (PWCT) Features - Framework & Extension

  • 1. PWCT Features – Framework and Extension When we program using PWCT, we uses one of the available visual programming languages like HarbourPWCT, CPWCT, PythonPWCT & SupernovaPWCT. All of these visual programming languages are developed inside PWCT Environment. PWCT provide us with the designers that we can use to develop new components. A visual programming language inside PWCT is not more than a collection of components working together to wrap a text based programming language. We can develop our visual programming languages on the top of a compiler or interpreter, also we can use a framework to get more high level results. And we can develop our visual language on the top of a very low level language like ASM. Inside PWCT, the visual programming language is a ( Domain Tree + Components ) From the menu bar, in the (Domain Tree) popup, we have a group of options, we can open the domain tree window, install component, reinstall component or uninstall component. Fig.1 Domain Tree Popup
  • 2. Fig. 2 Domain Tree window Using the “Domain Tree” window we can create & modify our domain tree. Using the “Install component” window, we can install new components to our domain tree. Fig. 3 Install Component. To install new component, we enter the component name, select the component file (*.TRF) and select
  • 3. the component domain in the domain tree. Each component file (*.TRF) may contains one or more of interaction pages (*.IDF), the interaction page is a data entry form which ask the user to enter data required by the component. For example the printf component asks the user to enter the string that will be printed on the screen. This component is considered low level, because using it requires remembering things like “n” which is related to the text based programming language world. In the visual programming world we try to avoid things like that, using PWCT we can avoid these things, also we can use it if we want. The choice returns to the visual programming language designer. He/she could design a visual language that force one way or give the freedom to the user to select any way. If he forced the user to use one way, the user can change this because he could modify or add to the components list. Fig. 4 Interaction Page Each component file (*.TRF) is created using the Transporter designer.
  • 4. Fig. 5 Transporter Designer Each interaction page file (*.IDF) could be created using the Interaction designer or using the Interaction Pages Generator. Fig. 6 Interaction Designer
  • 5. Fig. 7 Running the Interaction Pages Generator Fig. 8 The Interaction Pages Generator Using the interaction pages generator, we can quickly generate an interaction page file (*.IDF) and a component file (*.TRF) contains a reference to this interaction page. Using the interaction designer, we can customize the user interface of the interaction page, and we can add default values to the controls (textbox, listbox & checkbox). To control the operation of steps generation in the goal designer, and the operation of code generation, we write a script in the code mask section, in the transporter designer.
  • 6. Fig. 9 Transporter Designer – Code Mask PWCT comes with very simple scripting language called (RPWI) for controlling the process of steps generation and code generation. For example the command <RPWI:NEWSTEP> is used to create a new step. The generated code is written directly. The variable is written between „<‟ and „>‟ , i.e. <variable_name_is_here> . You don‟t need to save these commands, using a right click while typing the code mask, you will get a popup menu with all of the commands in RPWI. We have variables in the interaction pages, and we have variables in the code mask, in the matching section we can do automatic matching between variables names in the code mask and the variables names in the interaction pages. Or we can do manual matching based on our needs. Automatic matching requires similar names between the variables here (code mask) and there (interaction page).
  • 7. Fig. 10 Transporter Designer – Matching. In the rules section, we determine the rules of composition between this component and other components. Fig. 11 Transporter Designer – Rules PWCT is open source, you can open any component in any visual programming language and see the
  • 8. Code Mask script to learn how this component is created, how it‟s working. If you want to create new visual programming language inside PWCT, and you want to learn step by step how to create your components, how to distribute the visual language to other PWCT users, we provide tutorials that will let you in little hours get the knowledge to do this. To create a new visual programming language, pick a useful text based programming language, collect a group of useful libraries and frameworks for this language, you may create your own libraries based on your needs, design the visual components, the user interface of each component, the relationship between components, develop your components, test them, create samples & tutorials then share what you have done with us, we will distribute your work with PWCT. You can speed up the development process by using components designed for another language, change the code mask, and get the required result. This works perfectly when the two languages share many things. Creating New VPL (Visual Programming Language) tutorials Tutorials (PDF Files) Starting new VPL project Creating, Installing & Using your first component Adding Interaction pages to your component Using the Interaction Pages Generator Adding Checkbox to Interaction pages Take decision if the checkbox value is FALSE Writing code mask to generate a steps and substeps (Determine the step parent) Adding Listbox to Interaction pages Adding TABs to the generated source code Using Variables in the Code Mask Generate steps in different locations in the steps tree
  • 9. Writing the Code Mask and the Rules inside the Transporter Designer Rapid components development Table 1. Creating new VPL tutorials HOME