Sheerpower is designed for developers building and maintaining
large-scale business applications. It provides high-level language
features that support rapid development and efficient debugging,
making it well-suited for developers who need to deliver reliable,
high-performance business software.
One important feature is its status as a
Memory Safe Language.
Sheerpower automatically handles memory management, eliminating
concerns about memory leaks, buffer overflows, and manual
allocation/deallocation. There is no garbage collection overhead,
allowing developers to focus on application logic rather than
memory management.
- Business Development Environment: Sheerpower
provides tools and constructs designed for business application
development, enabling efficient translation of requirements
into working code.
-
16-Digit Precision Math: Sheerpower supports
high-precision decimal arithmetic with its
REAL
data
type, which provides 16 digits of decimal accuracy.
This approach is designed to avoid the common rounding errors
found in binary floating-point calculations. This level
of precision is essential for financial applications where even
minor rounding errors can cause significant problems.
- Integrated Database Engine: Sheerpower includes
a built-in database engine that handles data storage and retrieval
without requiring external database setup or configuration.
- Business-Focused Language Constructs:
Sheerpower’s syntax and built-in functions are designed
to simplify common business programming tasks.
In the tutorials, you will often encounter the PRINT
statement. This is the main way to display output in Sheerpower.
You can print multiple items at once by separating them with a
;
, which prevents spaces from being added between
the items. For more advanced formatting, you can use the
SPRINTF()
function.
print 1.2 - 1.0
print 'a';'b';'c'
print sprintf('%s is %r %p old.', "Sally", 10, "year")
Sheerpower eliminates decimal rounding errors.
Mathematical operations always produce accurate decimal results.
For example:
print (0.1 + 0.2) - 0.3
0
In Sheerpower, this code returns exactly 0, demonstrating accurate
decimal arithmetic. In contrast, languages like C, C++, JavaScript,
Java, and Python will return an approximate result, such as
5.551115123125783e-17, due to floating-point
representation limitations.
Key Features for Business Applications
Sheerpower includes features specifically designed for
business applications, focusing on precision, performance,
and developer productivity:
- 16-Digit Precision Math: Sheerpower’s decimal
arithmetic eliminates floating-point errors, providing reliable
calculations for financial and business applications where
accuracy is critical.
- Integrated Database Engine: The built-in database
engine provides high-performance data operations with secure
access and efficient storage, eliminating the need for
external database configuration.
- Context-Aware Type Handling: Sheerpower automatically
handles type conversions for database operations while maintaining
strict typing for variables, reducing manual conversion code.
Note:
In Sheerpower, all variables are statically typed by default. Once
you assign a type to a variable—like assigning
a = 18
(which makes a
a real)—you
cannot later use that variable in a way that implies a different
type, such as a + '9'
(which treats a
as a string). Doing so will result in a compile-time error.
This strict type consistency helps catch bugs early and ensures
predictable variable behavior.
However, there is one exception: when accessing fields
in a database table—such as payroll(salary)
—because the field type is only known at runtime. This
flexibility applies only to database table references, not to
regular variables.
- Optimized Database Write Operations:
Sheerpower improves performance by batching and optimizing
database write operations automatically.
- Custom Data Types with Formatting: Developers can
define custom data types with predefined output formats,
improving code readability and consistency.
- Suffix-Based Variable Types:
Sheerpower assigns variable types based on suffixes:
$
for strings, %
for integers,
and ?
for booleans. Variables without suffixes
default to REAL type.
- Built-in SQL Injection Protection:
Sheerpower’s database operations use parameterized
queries internally, preventing SQL injection attacks without
requiring special coding practices from developers.
Sheerpower’s PRINT
statement provides
flexible output options, with advanced formatting available
through the SPRINTF()
function.
In these tutorials, your code runs in a safe environment
called a “sandbox.” The sandbox ensures
security by restricting certain operations, such as file deletion
or direct interaction with the operating system, to prevent
unintended consequences. If your application requires these
capabilities, you can work outside the sandbox in a full
Sheerpower environment.
Within the sandbox, some Sheerpower features, like deleting files
or executing OS-level commands, are inaccessible. If you attempt
to use a restricted feature, you will receive a warning.
Additionally, sandboxed programs are limited to a few seconds of
execution time, and their output is capped at approximately 100KB.
Each tutorial includes action buttons:
- Run Runs Sheerpower sample code
- Reset Resets sample code back to default
- Clear Clears the sample code window
- Home Goes to the tutorials homepage
- Previous Goes back to the previous tutorial
- Next Continues to the next tutorial
Under the buttons are four fill-in fields, one for each of the
variables
a$, b$, x, y. You can use these four variables
in the sample code or make your own variables.
(Show/Hide Sheerpower Usage Takeaways)
Some Sheerpower Takeaways
- Sheerpower is designed for developers building large-scale
business applications with a focus on precision, performance,
and maintainability.
- Memory Safe Language: No manual allocation, no garbage
collection, no leaks or overflows—memory is managed automatically.
- REAL data type provides exact 16-digit decimal precision,
avoiding floating-point rounding errors common in other languages.
- Built-in database engine eliminates the need for external
database setup and supports high-speed, secure data operations.
- All variables are statically typed, helping catch bugs at
compile time and ensuring predictable behavior.
- Type suffixes:
$
for STRING,
%
for INTEGER, ?
for BOOLEAN,
and no suffix means REAL.
- Automatic type handling in database operations simplifies
code without compromising safety or correctness.
- Custom data types can include predefined output formats,
improving readability and consistency in business reports.
- PRINT and
sprintf()
provide flexible and
formatted output for reports, logs, and UIs.
- All tutorials run in a safe sandbox with limited execution
time and restricted access to sensitive system operations.
- Tutorial interface includes
Run
,
Reset
, Clear
, and navigation buttons,
plus input fields for quick variable experimentation.