serenity
jakt
Our great sponsors
serenity | jakt | |
---|---|---|
240 | 31 | |
28,555 | 2,747 | |
2.9% | 0.7% | |
10.0 | 9.4 | |
about 11 hours ago | about 1 month ago | |
C++ | C++ | |
BSD 2-clause "Simplified" License | BSD 2-clause "Simplified" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
serenity
-
Why does part of the Windows 98 Setup program look older than the rest?
SerenityOS replicates that look and feel. It is also implemented in a dialect of C++ that adheres to some of the good parts of C++98: https://serenityos.org
- SerenityOS
-
XZ: A Microcosm of the interactions in Open Source projects
One example of a useful technique
https://serenityos.org/ apparently only makes source code available. There are no binary images of the OS to install
I think Andreas said this functions like a little test -- if you're not willing to build it from source, then you probably wouldn't be a good contributor anyway.
---
Likewise, my shell project provides source tarballs only, right now - https://www.oilshell.org/release/0.21.0/
It is packaged in a number of places, which I appreciate. That means some other people are willing to do some work.
And they provide good feedback.
I would like it to be more widely available, but yeah I definitely see that you need to "gate" peanut gallery feedback a bit, because it takes up a lot of time.
Of course, it's a tricky balance, because you also want feedback from casual users, to make the project better.
-
Fuzzing Ladybird with tools from Google Project Zero
Indeed, given the existence of `JS::NonnullGCPtr`, `JS::GcPtr` intentionally corresponds to a nullable pointer, so it seems dangerous to convert one to a reference without a null-check.
That said, a naive code search finds what *may* be more cases of this pattern:
https://github.com/search?q=repo%3ASerenityOS%2Fserenity+%2F...
Eg: https://github.com/SerenityOS/serenity/blob/a68b134e6dea5065... -> https://github.com/SerenityOS/serenity/blob/a68b134e6dea5065...
In some of those search results, it is fine because there is a preceding null-check, and obviously I know nothing about this code other than this naive search result, but perhaps it would be prudent to vet all of them.
-
The Ladybird Browser Project
It is a SerenityOS project. You can find the answer to that question in their primary project's FAQ[1].
1. https://github.com/SerenityOS/serenity/blob/master/Documenta...
-
Sane C++ Libraries
https://github.com/SerenityOS/serenity
The best way to write proper exception free C++ is not to use the C++ Standard Library.
-
Serenum: OS from scratch to save computers [video]
I initially confused it with Serenity OS prior to watching the video: https://github.com/SerenityOS/serenity
-
Ask HN: What side projects landed you a job?
My contributions to SerenityOS[0] helped me get my current job. My team lead (who was also my interviewer) was interested in what I did since I listed some of it in my CV, and I showed him some PRs I made and explained what went into each of them. It was really exciting because I didn't have professional experience with low-level development, and basically got the job due to hobby programming.
[0]: https://github.com/SerenityOS/serenity/pulls?q=is%3Apr+autho...
- SerenityOS – a love letter to '90s user interfaces with a custom Unix-like core
-
Bring garbage collected programming languages efficiently to WebAssembly
Definitely not "literally impossible", just a great deal of work. https://github.com/SerenityOS/serenity/tree/master/Ladybird
jakt
- The Jakt Programming Language
- "Useless Ruby sugar": Pattern matching (Pt. 1)
-
Essence: A desktop OS built from scratch, for control and simplicity
SerenityOS is doing exactly that:
https://github.com/SerenityOS/serenity/tree/master/Ladybird
I also like their Jakt programming language:
https://github.com/SerenityOS/jakt
Though I'm more enthusiastic about Redox (doing it in Rust):
https://gitlab.redox-os.org/redox-os/redox/
- Jakt (Programming Language)
-
Will Carbon Replace C++?
It's very opinionated and SerenityOS-focused, but the language Jakt ( https://github.com/SerenityOS/jakt ) transpiles to C++, has memory safety and some very neat ideas for readability.
-
Ask HN: Are people still using Pascal in 2023?
I love Rust, but its model and specifics would make it difficult to learn how to write code in other languages.
For low-level code, I think Carbon may fill that niche in the future. If it doesn't, C++ may be a good candidate once up-to-date books have been written and compilers actually support the modern spec. Classrooms/guides would need to move away from the still-lingering "C++ is C with classes" approach and use the standard library before that can be a reality, but this book[0] by Bjarne Stroustrup himself demonstrates the future C++ _could_ have if all the modern language features become usable.
In business, C++ will still be the domain of ancient clusterfucks compiled by MSVC++ 6 in many areas, similar to how most Java code is still built around Java 8 because that was the most recent stable version for many projects' lifecycle (and Oracle's decision to only ship JRE 8 to consumers doesn't help) and how .NET 4 is still taught in schools because the new and scary dotnet tool doesn't map 1-to-1 with the old way of working. I can't imagine microcontroller toolkits supporting a modern version of _any_ language in the first place.
However, if more people would learn modern C++ (or a replacement, like Carbon), I think this class of programming languages can have the same growth and hype Rust has enjoyed for the past years.
I'm keeping my eye on Carbon and Zig. Google's influence has managed to push Go to the forefront despite its many quirks, and Zig seems to be focused on doing "C, but right" rather than "C++, but right" which so far is looking pretty promising.
It's also fun to see Jakt[1] being developed in real time; I don't think it's a language that will be useful for production software any time soon, but on the other hand it's a language that actually produces binaries reliably (unlike pre-alpha Carbon or pre-release Zig, the latter exposing many problems after switching to a self-hosted compiler).
[0]: https://www.stroustrup.com/tour3.html
[1]: https://github.com/SerenityOS/jakt
- The Zig programming language has been ported to SerenityOS
-
Multiplayer counter strike like game without game engine - just php 8.1, fully open sourced
About php, I have no problem of rewriting whole game for performance reasons once it is done and popular in low level language like https://github.com/SerenityOS/jakt but I think for now php is good and sufficient.
-
☘️ Good luck Rust ☘️
Jakt, pretty well designed (lots of ideas stolen from ML/Rust), but very immature
-
SerenityOS author: "Rust is a neat language, but without inheritance and virtual dispatch, it's extremely cumbersome to build GUI applications"
I think this thread might be interesting to the people here. The guy eventually started working on his own safe language, Jakt: https://github.com/SerenityOS/jakt
What are some alternatives?
Chicago95 - A rendition of everyone's favorite 1995 Microsoft operating system for Linux.
carbon-lang - Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)
rust-raspberrypi-OS-tutorials - :books: Learn to write an embedded OS in Rust :crab:
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
haiku - The Haiku operating system. (Pull requests will be ignored; patches may be sent to https://review.haiku-os.org).
Rust-for-Linux - Adding support for the Rust language to the Linux kernel.
linux - Linux kernel source tree
hylo - The Hylo programming language
reactos - A free Windows-compatible Operating System
ionide-vscode-fsharp - VS Code plugin for F# development
redox - Mirror of https://gitlab.redox-os.org/redox-os/redox
cppfront - A personal experimental C++ Syntax 2 -> Syntax 1 compiler