ZIG programming language.

Well, lambdas in C++ are actually well made.
That might be so but they are fairly overused. Its always really annoying when middleware takes a lambda approach to i.e loading some data. It then requires some annoying boilerplate to not infect the rest of the codebase with incomplete state.

Plus I find lambdas in C++ to further exacerbate the extremely poor lifetime tracking found in most C++ middleware.
 
i found a forum thread talking about it and well yeah some stuff of Rust are true like it cant connect with the kernel because its not made to connect with C , Rust can be on the go with a minimal runtime and i guess Rust is mature enough to be inside of the kernel also , there are several projects out there where Rust is being used , there are many OSes and kernels including Linux which are using Rust and the Rust team at Google is as productive as the Go team at Google , i also did OS dev with Rust it was a hobby project i would like to continue after learning more Rust https://codeberg.org/RadianOS/radianos this isn't mature but you can always take a look at RedoxOS and how they've built the system with Rust , mine is not UNIX or unix-like its something of its own
 
From an amateur's perspective, I have gathered this impression: C was written at a time where we were barely past assemply. Though this may sound like an argument against it, it is an argument for it. When C was designed, it was designed with a mentality of writing something machine-like. Because C was so powerful and paradigm shifting, made programming so much easier and more human, people started to think in terms of what I as a human want to see instead of the old what it the computer will best understand. So they designed many languages that are much more human comprehensible, but much less powerful. When you read all of these discussions on new languages, there seems without fail to exist somewhere the quote "of course C still makes faster software, but." And I think it is faster precicely because of the thing that all the new languages see themselves as fixing, this machine-likeness.

Probably C already achieved some optimal human-machine balance of abstraction that cannot be beat with enough of a margin to make it worth replacing it. The best a new language can do is find a use-case where a higher level of abstraction is worth a hit in efficiency, like Java and Python have done. Probably the mistake, at least with Python, has been to try to use it for things that C would be better at, creating bloat and heavyness accross the softwarescape.

Again, complete amateur here.
 
Since I started this thread, I’ve mentioned in a few places that I’m working on a humble hobby OS project. Now, I have a modest request and a kind of appeal for your help. Since this is my first community where I’m sharing experiences and asking about system programming, I wanted to share it with you all. Therefore, I’d like to ask if it’s appropriate to post a link to my project here and get your feedback on whether that’s suitable?

Because it’s easier for me to take the first hits of criticism and advice from people I “partially know” here, it feels more manageable. This way, I can grow and learn more comfortably.
 
Since I started this thread, I’ve mentioned in a few places that I’m working on a humble hobby OS project. Now, I have a modest request and a kind of appeal for your help. Since this is my first community where I’m sharing experiences and asking about system programming, I wanted to share it with you all. Therefore, I’d like to ask if it’s appropriate to post a link to my project here and get your feedback on whether that’s suitable?

Because it’s easier for me to take the first hits of criticism and advice from people I “partially know” here, it feels more manageable. This way, I can grow and learn more comfortably.

I can't speak for the moderators, but I would be interested. I think our off-topic subforum can carry that.
 
Check out Loko Scheme. Kudos to its author for a very interesting experiment!
Loko Scheme is a niche compiler. It is not trying to replace any other compiler. Some ideas for what you can do with it:

  • Build statically linked concurrent applications.
  • Work on a systems-level language just for fun.
  • Systems research.
    • Unikernel experiments.
    • Lock-free kernel experiments.
    • Bare metal Scheme experiments.
    • New userspace-to-kernel interfaces.
  • Port to other operating system kernels (FreeBSD, etc).
  • Fight the status quo.
Loko Scheme comes with some limited hardware support:

  • Networking (rtl8169, rtl8139, eepro100, virtio-net, tuntap) with TCP/IP support.
  • Disk (ATA, ATAPI, SCSI, IDE, AHCI) drivers with FAT file system support.
  • Video (VESA VBE, Bochs graphics).
  • Serial (8250 UART).
  • PS/2 keyboard and mouse support.
  • USB stack with UHCI, HID & mass storage support.
 
Back
Top