How did you start with AI helping to code?

I just watched https://www.youtube.com/watch?v=L2ExrasTGx8 and it was very interesting.

I use GPS daily, and I wonder if anyone has set it up to use AI-tools with it (and if it is possible at all)

Or should I migrate to VS Code and the plugins available there?

The video mentions Ruu, but as someone mentioned in the forum, it already has its successor.

I’d like to get AI to write some skeleton code for say a new communication protocol.

For me, they are often described, in a word doc or a pdf doc. it is usually a doc stating how the envelope looks like (unique ID, msg-type) and a number of messages that the envelope can contain. eg

  • Order_Assignment (move this id from pos A to pos B)
  • Order_Report(This id arrived at B now)
  • Status report for positions (this position is now occupied/free)

It is usually some kind of TCP/IP proprietary protocol I get from some vendor. It would be nice to feed it a pdf - that is usually not fully covering everything - and get some code from it. Then there is different styles of making it. In ada83 the use of variant records was common, today it is tagged types. There is also different views on using one or two sockets.

Another thing to do would be pointing an AI to the existing code base and ask it for improvements, and perhaps sparkify what can be written in spark. This is code that is usually heavily dependent on data in databases. it is not embedded.

But how do I even start? The field of AI and new engines moves so fast so its overwhelming.

Pointers are appreciated

/Björn

One big pain is that LLMs aren’t really well-suited for many files, at least WRT online UIs. — This means that GNAT’s limitation (Note: it is not Ada’s limitation) for having one compilation unit per file gets really messy/onerous really quickly.

To help you out, here’s a little batch-file that generates a concatenation of all your ads and adb files recursively within the subdirectory:

@echo off

:: Testing
rem === CONFIGURATION ===
set "OUTPUT_FILE=Project"
rem type "%%F"
for /r %%F in (*.ad?) do  (
    echo Processing: %%F
    (
        echo -- File: %%~nxF
        echo.
        type "%%F"
        echo.
        echo.
    ) >> "%OUTPUT_FILE%.ada.txt"
)

You can then feed in your entire codebase as a textfile.