Ask HN: What do you want to see in a systems programming language?

  • A quick and easy way to add peripherals.

    That's more than just device-drivers, you have to work out a consistent interface between the 'system' and all of the peripherals, rather than looking at the individual interactions of the system with individual peripherals.

    In a way, you need something like the UNIX concept of 'everything is a file'. (Only more so.)

    My hobby is writing emulators for real machines from the past. Most of my effort is in emulating the peripherals interactions with the CPU and RAM.

    I have recently been looking at minicomputers of the 1970s. They seem to have had the concept of the peripheral doing all the work, with the 'system' merely 'asking a limited number of code questions' and the system 'getting a limited number of answers' from the peripherals.

  • I want documentation, especially block diagram be the first class citizen of a programming language, such that parsing the code will generate project visualizations that can help me understand the big picture.

  • A same way to handle strings, or return a complex structure without having to preallocate a buffer to write into, etc.

    Clear semantics for dealing with threads and multiple cores.

    Static type checking

  • I will be in the minority here, but:

    Native integration with Datalog.

    Many times, I find myself working on a program and I realize that what I need is a database. But having a database, even sqlite3 or Berkely DB, would be an overkill. If I could just express my data and the relationships between them, then I would be able to query what I need in an efficient way.

  • I would love to see a systems programming language with classes which were usable on bare metal, like with c++ and unlike e.g. D or free pascal where a runtime is required.

    Any homepage of your project @OP to check for the alpha?

  • A debugger

  • i never heard the term “systems programming language” before. is that a FAANG invention?