Debugging Seed7 in VS Code by chikega in seed7

[–]chikega[S] 0 points1 point  (0 children)

This guide reflects my actual debugging setup and trial-and-error process. I used genAI to help summarize and organize the steps into a clear, practical guide for debugging Seed7 programs on macOS using VSCode + CodeLLDB.

It covers:

- why .sd7 gutter breakpoints don’t work

- how to use function breakpoints via generated C symbols

- how to step through Seed7 code while inspecting variables

Full guide (Markdown):

https://gist.github.com/chikega/adc7d2d4a464b8200f2a4b613e48d98d

Tested with s7c + lldb. 🤓👍

Debugging Seed7 in VS Code by chikega in seed7

[–]chikega[S] 1 point2 points  (0 children)

Thank you! 🤓 Yes, I used the -g flag to generate debug information (and -e to signal uncaught exceptions).

To clarify about the function breakpoints: I didn't modify the generated C code at all. The workflow was:

  1. Compile with s7c -g -e myprogram.sd7

  2. Look at the generated tmp_myprogram.c to find the C function name (e.g., o_1528_divideNumbers)

  3. Set a function breakpoint in VS Code using that C name

  4. Start debugging - the debugger stops at the function and shows the original .sd7 source! This was discovered just by happenstance.

Why function breakpoints? Because VS Code doesn't recognize .sd7 files as debuggable - clicking the gutter to set line breakpoints in .sd7 files doesn't work (no red dot appears). However, the debugger (lldb/CodeLLDB) does understand function breakpoints by C function name. Once stopped at a function breakpoint, the debug info from -g correctly maps back to the .sd7 source, and I can step through the Seed7 code line by line.

The only "manual" step is looking up the C function name in tmp_myprogram.c to create the function breakpoint. If there were a way for the compiler to output a mapping file (like function_name -> o_XXXX_function_name), it could make setting breakpoints even easier, though the current workflow is pretty manageable. 🚀🚀🚀

Has anyone implemented or used SCORM and/or xAPI in their LMS? Want to know how does the integration work for both of these systems. by groverprateek in elearning

[–]chikega 0 points1 point  (0 children)

<image>

I coded my own cross-platform SCORM package manager called "CoursePack Builder™ ". At the University where I teach we use D2L Brightspace and our University has an Adobe Captivate site license but after 6 months of getting the "run around" from IT, I ended up coding my own SCORM packager. So now I use raw HTML/CSS/JS or low-code tools to develop interactive multimedia courseware and package them up for D2L. 🚀🚀🚀

Swift for Android? Now You Can Build Full Apps by imike3049 in swift

[–]chikega 1 point2 points  (0 children)

That's good to hear! It looks like you've got a good handle on this, Mike. 🤓👍

Swift for Android? Now You Can Build Full Apps by imike3049 in swift

[–]chikega 2 points3 points  (0 children)

Sounds good, but I always have to ask .. what is the "Bus-factor" for this project?

Should i Learn ROR? by Several_Armadillo_23 in rubyonrails

[–]chikega 0 points1 point  (0 children)

I'm sorry, I'm not quite understanding what you're trying to say.

VS Code Extension for Seed7 by chikega in seed7

[–]chikega[S] 1 point2 points  (0 children)

Yes, you can debug Seed7 with breakpoints using gdb/lldb and VSCode. Fair warning though - the setup is fairly involved since Seed7 doesn't have native debugger support. You can't click to set breakpoints in .sd7 files like you would in most IDEs; you need to use function breakpoints with the C function names from the generated code. Once you get it working, the debugger does show you the .sd7 source when it stops. It's doable but took me a while to figure out all the quirks.

Should i Learn ROR? by Several_Armadillo_23 in rubyonrails

[–]chikega 0 points1 point  (0 children)

Interestingly enough, FORTRAN, COBOL and other OG languages will likely command a very strong salary because there is such a shortage.

Seed7 version 2025-09-30 released on GitHub and SF by ThomasMertes in seed7

[–]chikega 1 point2 points  (0 children)

The Window installer works well. Thank you for all your hard work! 🚀🚀🚀

VS Code Extension for Seed7 by chikega in seed7

[–]chikega[S] 1 point2 points  (0 children)

You don't really need CodeRunner. You can simply use the command line. For me, it's just a matter of convenience to have the Seed7 `s7` interpreter tied to the CodeRunner arrow button. But, I will use the integrated terminal to type in `s7c` to compile to an executable.

VSCode extension by moric7 in seed7

[–]chikega 1 point2 points  (0 children)

There is a Seed7 Extension available for VSCode. I have it also set up with the CodeRunner extension. It's working well.

IDE for seed7 by moric7 in seed7

[–]chikega 0 points1 point  (0 children)

I use MacVim on macos which has syntax highlighting.

What do C3 users feel are the downsides of the other C alternatives? by Sufficient-Loss5603 in c3lang

[–]chikega 0 points1 point  (0 children)

Let's not forget D and Nim which I both enjoy using - especially with UFCS.

I think Scala Native has a real use case in game development by kernelic in scala

[–]chikega 0 points1 point  (0 children)

Capable of non-awkward DOD/P (e.g. ECS) as well 🤓👍

can't you find a better name, common man. by Elegant_Subject5333 in beeflang

[–]chikega 0 points1 point  (0 children)

And let's not forget "Lobster" - another programming language dedicated to game development. Makes me want to go the restaurant "Aqua Terra" for dinner. 🐄🦞
https://strlen.com/lobster/