https://github.com/insoft-uk/primeplus
P+ is essentially the PPL language with additional features, such as substitution capabilities, and requires all keywords to be in lowercase.
https://github.com/insoft-uk/primeplus
code-maintance hp-prime language-design ppl programming-language proprietary-language software-development
Last synced: 2 months ago
JSON representation
P+ is essentially the PPL language with additional features, such as substitution capabilities, and requires all keywords to be in lowercase.
- Host: GitHub
- URL: https://github.com/insoft-uk/primeplus
- Owner: Insoft-UK
- License: mit
- Created: 2024-03-12T23:44:14.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-11T20:10:31.000Z (3 months ago)
- Last Synced: 2025-03-11T21:22:44.221Z (3 months ago)
- Topics: code-maintance, hp-prime, language-design, ppl, programming-language, proprietary-language, software-development
- Language: C++
- Homepage: http://insoft.uk/prime-plus.php
- Size: 8.15 MB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# P+ for HP Prime
![]()
P+ is a proprietary programming language designed to mitigate the challenges associated with code maintenance and comprehensibility in the HP Programming Language (PPL). P+ serves as an intermediary language that addresses these issues by introducing support for substitutions and facilitating code organization. The final output is a PPL program file with a minimal footprint, optimized to conserve the limited storage space available on the HP Prime.
P+ is essentially the PPL language with additional features, such as substitution capabilities, and requires all keywords to be in lowercase.GROB to be intergrated in the future.
```
#pragma mode( separator(.,;) integer(h64) )
#includeauto:displayCopyright()
begin
TEXTOUT_P("Copyright (c) 2023-2025 Insoft. All rights reserved.", 0, 0);
end;#PYTHON
#ENDEXPORT START()
BEGIN
displayCopyright();
#PPL
// In P+ `=` is treated as `:=` were in PPL `=` is treated as `==`
// So only PPL code in this section.
#END
WAIT;
var a:alpha = 0;
alpha += 10;
RETURN a;
END;
```>PPL and P+ code can co-exist as P+ is just an extension of PPL.
`p+ project.pp -l pplib`
```
#pragma mode( separator(.,;) integer(h64) )
fn1()
BEGIN
TEXTOUT_P("Copyright (c) 2023-2025 Insoft. All rights reserved.", 0, 0);
END;#PYTHON
#END
EXPORT START()
BEGIN
fn1;
// In P+ `=` is treated as `:=` were in PPL `=` is treated as `==`
// So only PPL code in this section.
WAIT;
LOCAL a := 0;
a := a + 10;
RETURN a;
END;
```>[!IMPORTANT]
In P+ `=` is treated as `:=` were in PPL `=` is treated as `==`>[!NOTE]
The P+ proprietary programming language is susceptible to change, while also maintaining some compatibility with previous versions.>[!WARNING]
Version 4.0 binary files will not be uploaded to this GitHub repository but will be bundled with PrimeSDK.