I created a new programming language, building a new Hal component model

  • smc.collins
  • Online
  • Platinum Member
  • Platinum Member
More
22 Nov 2025 00:14 - 22 Nov 2025 00:27 #338933 by smc.collins
AiLang was created for LLM generation and easier human reasoning than standard programming languages, but without the overhead and slowness of python etc.as part of my working experiment, I created new daemon services that run outside the normal rtapi, currently testing the daemon for stability. but soon we should be able to use while loops etc with hal pins without blocking the primary api that is running. My next step after i get these 100% verified working etc will be rewriting the entire motion backend etc but that is a very long term project. I hereby grant a perpetual license to the linuxcnc project for ailang and it's compiler tool chain. If there is a official correspondence channel let me know so i can send a formalized signed, notarized  verified hard copy.  Why do this ? bluntly, the c rtapi makes writing complex components, difficult because you have to manage the execution with manual state tracking, you can;t use timer directly, the api itself hangs and kills the kernel if you use sleep wait for loops  etc. For  simple program's like running a hydraulic chuck the problem isn't that dramatic, for complex logic like a configurable tool changer program or building one in blocks ad function libraries, it becomes a nightmare of complexity and ceremony. I felt like i could give something back to the community and AiLang was developed for my own internal use but, it is proving to work very well for low level systems programming. If you are using it privately for your own use, education in a non commercial setting, have a good time it's a free for all. Non profits included though I would prefer to manually grants those licenses individually in writing to protect any potential org later down the road because my estate owns the rights to Ailang. That aside, curious to get feedback, also the verbosity is not an accident, it was done to accommodate the massive builtin batteries included primitives and create reliable by LLM.s Feed the manuals and sample code  to any LLM, have it spit out reliable code pretty regularly. Check the primary project folders plenty of example code there. Enjoy !

github.com/AiLang-Author/AiLang

github.com/AiLang-Author/CoreUtils-

git hub page, all linuxcnc specific code is MIT licensed
github.com/AiLang-Author/LinuxCNC-HAL-Component-Redesign

from stress testing programming running now. it is cycling hal pins until i shut it down. 

=== STRESS TEST STATISTICS ===
Total updates:      56800

Successful:         56800

Failed:             0

Update rate:        5680
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      57200

Successful:         57200

Failed:             0

Update rate:        5720
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      57600

Successful:         57600

Failed:             0

Update rate:        5760
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      58000

Successful:         58000

Failed:             0

Update rate:        5800
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      58400

Successful:         58400

Failed:             0

Update rate:        5840
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      58800

Successful:         58800

Failed:             0

Update rate:        5880
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      59200

Successful:         59200

Failed:             0

Update rate:        5920
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      59600

Successful:         59600

Failed:             0

Update rate:        5960
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      60000

Successful:         60000

Failed:             0

Update rate:        6000
 updates/sec
==============================


=== STRESS TEST STATISTICS ===
Total updates:      60400

Successful:         60400

Failed:             0

Update rate:        6040
 updates/sec
 
Attachments:
Last edit: 22 Nov 2025 00:27 by smc.collins.
The following user(s) said Thank You: COFHAL

Please Log in or Create an account to join the conversation.

More
22 Nov 2025 00:41 #338934 by langdons
Consider using the ISC license.

It's basically the same as MIT, but shorter and more concise.

cvsweb.openbsd.org/src/share/misc/license.template?rev=HEAD

Please Log in or Create an account to join the conversation.

  • smc.collins
  • Online
  • Platinum Member
  • Platinum Member
More
22 Nov 2025 00:52 #338935 by smc.collins
yeah it';s MIT licensed, not doing the bike shedding thing, if you have PR's for the repo or language lmk !

Please Log in or Create an account to join the conversation.

More
22 Nov 2025 01:01 #338937 by langdons
Try benchmarking AiLang against FreeBSD utilities.

GNU makes some cool stuff, but it's not necessarily benchmark-candidate worthy.

Please Log in or Create an account to join the conversation.

  • smc.collins
  • Online
  • Platinum Member
  • Platinum Member
More
22 Nov 2025 01:08 #338938 by smc.collins
feel free , let me know how it goes !!!!. i don't used freebsd but PR;s accepted !

Please Log in or Create an account to join the conversation.

Time to create page: 0.060 seconds
Powered by Kunena Forum