ercoupeflyer's blog

Why use a shared heap, rather than pipes and sockets

Why use a shared memory/heap approach rather than using sockets or pipes, I would also say signals, but with the shared memory/heap library, signals are used to create the events when an application requests to be notified when a variable/symbol changes is created or deleted.
At the base level of the library , when polling or waiting on a queue, there is no delay, except for the Semaphore that protects queues, and variables/symbols. Even locking can be turned off.

On Gambas Threads

In the tone of using shared heaps in a Gambas application I have attached a couple of examples, one of which is a tool for monitoring the available heap variables in real time

In order to make the process of using the library a little easier I have updated the farm version to 2.2.6, cleaning up a few of the examples.
If your interested in following along with the next few blog posts it would be good to update to the newer version. It requires gambas  3.20 or…

What if we could use gambas tasks like they were threads!

There are a lot of good explanations for the difference between threads and processes on the internet. As a summary here are a few of the important differences as it applies to Gambas.

Threads - Use the same text and data areas within an application, that is the code and static data share the same actual space, and are executed from the same actual space.
Also the Heap(Variables and such) space is also shared between threads, Making the use of IPC and pipes unnecessary for exchanging values, as variables and arrays are…

Scripter can also emit web pages!

Scripter also known as gbs3, is used to execute script files, but it has a secret,
when linked with the name gbw3 it will emit web pages as it's output!

Fun fact they are actually the very same program. gbw3 is just a link to gbs3.
the program checks it''s name to know what to do!

Here is a web script
#!/usr/bin/env gbw3
<% dim s as string %>
<html>
<%print "hello world gambas web…

Scripter a simple practical use case : reminders

While scripter is not practical for most large applications, it is excellent for our toolbox, just add the script to your ~/bin directory and you are off to the races!

Let's write a little script to remind us when to do or check something. We will do a little popup message to remind us about something... of course you can just have your version of the script do anything at all

Lets say we want it to prompt us every few ( seconds, minutes or hours).

Reusing script classes and functions

When using a script, it is possible to access regular gambas libraries and components. But if your purpose is to create a completely portable script, that relies only on standard gambas components then sometimes it is better to include/reuse classes you have developed. In this example I am going to cover the use of the Linux readline library something I commonly use in my scripts to obtain input from users with the usual shell recall/search and edit capabilities.

Playground Examples are available

For those of you that want to do a little basic learning, the Gambas playground Examples and a basic learning environment is available by installing the scriptbuilder 2.2.2 from the gambas farm via the IDE. Examples were written by Charlie Ogier.


Image

Screenshot at 2025-12-06 15-55-33.png

Screenshot at 2025-12-06 15-55-33.png