PLang
Next evolution in programming languages
Start
- write out "Hello PLang world"
Now build & run using (you must install PLang first)
You have never seen software being built this fast.
Just write what you want to happen.
select newest users, 50 per page
and PLang will give you 50 latest users from your database
Focus on what the app should do, not how.
There are no configurations to set. Just run. If the programming language needs something from you, it will ask you.
Of course there are %variables%
- set %name% as "Dwight Shrewd"
They are called Goals, you can call any Goal and send parameters
- call !FooBar %name%
You write your if statement, like you want it. Go through lists like never before.
- if %products.Count% > 0 then
- go through %products% call !ProcessProduct
This is one of those WTF! Check this out!
- select name from user where id=%id%
cache result for 10 minutes
retry 10 times over 5 min period
on error call !NotifyAdmin
It caches the results if it returns data, if there is an error it will try again and if that fails the
retries it calls a
function to notify admin
Create tables, views, triggers in Plang. With SQLite, SqlServer, MySql, Postresql or any
IDbConnection implementation
Create Setup.goal file in your directory, this is the content
Setup
- create table comments, columns text(not null), sentiment(not null), created(datetime, default now)
Simply ask the LLM to evaluate request and you can work with the response written to a variable
you
can work with
Start
- [llm] system: is the user content positive or negative
user: %userInput%
scheme: {sentiment:positive|negative}
write to %sentiment%
- insert into comments, text=%userInput%, %sentiment%
Now run
Start your webserver in one line
Start
- start webserver
Now run
Want to talk with a REST api, easy, it does everything for you.
Create RestTest.goal in your folder
RestTest
- get http://https://cat-fact.herokuapp.com/facts
write to %json%
- write out %json.text%
You can send message between users in a simple way. All encrypted (AES256)
Start
- send message to %publicKey%
content: Hey, how are you doing today, have your tried PLang?
Scrape your favorite website, store it for later.
Start
- go to https://example.org/
- click, "More information..." link
- extract .help-article into %helpContent%
- write out %helpContent%
The language has built in authentication,
so no need to handle passwords and emails anymore when communicating with other Plang services.
- get http://api.plang.is/api/balance
write to %balance%
- write out 'My balance is: %balance%'
The end service can validate that the request is coming from you. No need for username and
passwords.
User management and registration becomes simpler & more private
Describe the layout you want
- center content, horizontal and vertical
- create login form,
#username, #password,
TOS (https://plang.is/tos.html)
submit to !Login
This will give platform nuetrality, desktop, mobile, watch, tv, or any other
- before each goal, call !LogGoal
- before step nr 2 in !Process.Image, call !Preprocess.Image
- on error on !Fetch.Data, call !Report.SysAdmin
You can see all the source code that are built using PLang.
You can use it to learn and to modify the goals.
All build files are series of json files with instruction on how the PLang runtime should act
Just write what you want to test
Execute Python scripts effortlessly.
- run processImage.py %imagePath%
Download VS Code extension to help with development
Download now
Efficient data caching mechanism. Need Redis or other, not a problem you can inject your own.
I need help with this one, but underlying code is c#, fully os indepenant.
This powerfull for analyzing, debugging, etc.
Want to user your own logger?
@logger=MyLogger.Logger
or llm, caching, settings, encryption, etc.
So simple, it's crazy
- every other monday, at 11:23, call !ProcessUsers
or sleep
- wait for 2 sec
Need to work with zip files
- unzip %filepath% to %newPath%
- compress %filepath% to %compressedPath%
Run any terminal/command line app
- convert video.mp4 to audio.mp3 using ffmpeg
Goal only have access to the path they run from. If they need access outside, it will ask for permission
Inject your own logger, settings, llm service, database, caching, encryption modules. They are super simple to write.
Plang language is written in C#, it builds and runs on the C# runtime. Secure, fast and solid foundation
PLang is an open source, so the software itself is free.
Translating your request to code uses an LLM service, this service is not free of charge.
When you run 'plang build' for the first time, you are asked to buy a voucher for the amount of your
choosing.
You can also use OpenAI API service without buying voucher from PLang.
Then OpenAI prices apply and it does not go through PLang service
Buying voucher for the service supports the development of PLang, so please support the project :)
This is when you run 'plang build'.
This is when you run 'plang run' and use the [llm] module
This is when you run 'plang run' and use the [llm] module with gpt-4-turbo parameter