Originally posted by Edogaa
View Post
Announcement
Collapse
No announcement yet.
PowerNex: A Kernel Written In The D Programming Language
Collapse
X
-
-
Originally posted by Michael_S View PostPorting the drivers from where, Linux? My understanding of licensing is that if you use a piece of code as a starting point, you have to use the same license or a compatible license even if you rewrite large portions of it. So I don't understand how any of the *BSD kernels can get drivers from Linux without shifting their license to GPLv2.
I doubt FreeBSD devs are so bright to do something like this, their "compaqtibility layer" will of course still require them to rewrite stuff from scratch as they like to make stuff that can be taken freely by everyone.
- Likes 1
Leave a comment:
-
Originally posted by Master5000 View Post
There is no God! Braindead programmers. I can't possibly understand why the fuck would you waste your life like this working on such useless shit.
Stop complaining and accomplish something of your own, FFS!
Leave a comment:
-
Originally posted by Delgarde View PostBut why should they care? Most projects like this are simply about having fun, not about finding the optimal use for "manpower". They're usually started by some guy who's just done a course on OS design at university, and wants to see what he can do with his knowledge. And there's no point in him working on an existing project, because all the interesting parts have already been done...
I'm not saying that the creators of this OS need to contribute to something else. As I said before, there's nothing wrong with working on this. So to answer your question, they should care because this project died the moment it started. In my personal opinion, I wouldn't like starting something that will inevitably be forgotten and marked as "yet another hobbyist OS attempt". If I'm going to do something as a proof of concept for fun, I'd rather it be original. Sure, an OS entirely in D is intriguing, but that's the extent of it.
- Likes 1
Leave a comment:
-
Originally posted by GreatEmerald View Postmy main experience with C++ comes from Unreal Engine 4, which is a bit of a beast and may not be what you'd expect from a standard C++ project, perhaps.
Originally posted by GreatEmerald View PostThere are also lots of times when I ran into a problem that one source file requires a header that defines a class inside it, and then it results in circular dependencies, and then you need to resort to forward declarations that may or may not work correctly for every use case etc.
Circular dependencies are only something noobs struggle with. I see that it increases the learning curve, but once you know about forward declarations, callbacks (be they function pointers or functors), and virtual functions, there should be no problem with circular dependencies.
Originally posted by GreatEmerald View PostAnd sure, a lot of things come down to preference. I don't like the :: notation, I don't like the -> notation, I don't like the & notation. I like the . notation, which ought to universally mean "access a member".
Originally posted by GreatEmerald View PostI don't like having to repeat the class name every time I want to refer to other functions from within the same class.
Originally posted by GreatEmerald View PostI don't like duplicating my code just to make a header file (which compilers could very easily auto-generate from my code),
Originally posted by GreatEmerald View PostI like strings, dynamic arrays and foreach loops, and I don't like pointers and macros.
Originally posted by GreatEmerald View PostIn my case, I'd rather just use C then.
I'm not interested in expanding the discussion to Python, but it seems like all of your points are stylistic. Python does have its share of legitimate downsides, but I do pretty well with it.
Leave a comment:
-
Originally posted by RamblingMadMan View PostDon't blame your incomprehensible coding on the language. I've seen plenty of C++ code bases that are easily readable and self-documenting.
I use functional and procedural syntax in most of my code and it is definitely "well-defined". The only valid argument here is that C++ gives you way too many ways to do the same thing, but to even a moderately skilled C++ developer they should be all recognizable.
I really don't know what you mean by this. Care to elaborate?
What makes you think you have to worry about memory management for the simplest of things? Most things are done in automatic storage. Even most complex things don't require you to bother with manual memory management. The only time you really have to do that is when interfacing with C code or doing low-level stuff, and even then you can just re-write your code using std::vector<char> or std::unique_ptr and interface with the pointers that they store.
There are also lots of times when I ran into a problem that one source file requires a header that defines a class inside it, and then it results in circular dependencies, and then you need to resort to forward declarations that may or may not work correctly for every use case etc.
And sure, a lot of things come down to preference. I don't like the :: notation, I don't like the -> notation, I don't like the & notation. I like the . notation, which ought to universally mean "access a member". I don't like having to repeat the class name every time I want to refer to other functions from within the same class. I don't like duplicating my code just to make a header file (which compilers could very easily auto-generate from my code), and it's terrible when they go out of sync. I like strings, dynamic arrays and foreach loops, and I don't like pointers and macros. A lot of the preferences come from me being an UnrealScript developer (D is actually very close to UnrealScript), and it certainly makes me discontent that Epic dropped the easily readable, convenient language for the irksome C++ monster that UE4 now is.
Originally posted by coder View PostI'm not claiming that C++ is a perfect language. What I do claim is that, if you want a powerful language with the ability to get very low-level and have great runtime efficiency, I've yet to see anything surpass C++ sufficiently (and without compromises) to justify using it.
Originally posted by coder View PostNow, for your purposes, perhaps a better comparison would be D vs. Java or C#. When I don't need the efficiency, safety, and control that C++ provides, I prefer Python.
Leave a comment:
-
I mostly agree with RamblingMadMan.
Originally posted by GreatEmerald View PostWhat the new standards do is just cherry-picking some concepts from D and putting it on top of the whole beast that C++ has become over the years.
I will say that if there are any truly novel features in D, it's a very small number. But, that's true for most languages.
Originally posted by GreatEmerald View PostAnd at least for me the most important thing about D is that writing code in it feels good: the code is readable, you don't have to worry about memory management and stuff, and all kinds of different programming paradigms can be combined into a cohesive whole with a well-defined syntax.- using the right tool for the job
- comfort level
- coding style.
Originally posted by GreatEmerald View PostMeanwhile in C++ you have to wrestle with all kinds of incompatible syntaxes (how many ways there are to do malloc/free or access pointers?),
Originally posted by GreatEmerald View Postcare about memory management for the simplest of things,
Originally posted by GreatEmerald View Posttry to decipher what all the custom templates and obscure modifiers for classes mean in others' code,
Originally posted by GreatEmerald View Postdeal with dependency conflicts between header and source files etc.
I'm not claiming that C++ is a perfect language. What I do claim is that, if you want a powerful language with the ability to get very low-level and have great runtime efficiency, I've yet to see anything surpass C++ sufficiently (and without compromises) to justify using it.
Now, for your purposes, perhaps a better comparison would be D vs. Java or C#. When I don't need the efficiency, safety, and control that C++ provides, I prefer Python.
Leave a comment:
-
Originally posted by GreatEmerald View PostAnd no, C++14 and stuff don't fix the issues, because they can't be fixed within C++ itself. First off it would have to drop the whole C baggage, rework the template system (and drop the old one), drop the concept of manually-created header files, rework the concept of immutability, implement a garbage collector and move away from pointers, etc. and that can't realistically be done without making a new language. What the new standards do is just cherry-picking some concepts from D and putting it on top of the whole beast that C++ has become over the years.
Also, the C++ standardization committee does not "cherry-pick some concepts from D" to add to their language; they hold massive meetings and seminars to make decisions about what will be added based on proposals submitted by developers who actually use the language themselves. Even if an idea was inspired by some D feature, D probably didn't invent the idea in the first place.
Originally posted by GreatEmerald View PostAnd at least for me the most important thing about D is that writing code in it feels good: the code is readable, you don't have to worry about memory management and stuff, and all kinds of different programming paradigms can be combined into a cohesive whole with a well-defined syntax.
I use functional and procedural syntax in most of my code and it is definitely "well-defined". The only valid argument here is that C++ gives you way too many ways to do the same thing, but to even a moderately skilled C++ developer they should be all recognizable.
Originally posted by GreatEmerald View PostMeanwhile in C++ you have to wrestle with all kinds of incompatible syntaxes (how many ways there are to do malloc/free or access pointers?)
Originally posted by GreatEmerald View Posttry to decipher what all the custom templates and obscure modifiers for classes mean in others' code
deal with dependency conflicts between header and source files etc
Originally posted by GreatEmerald View Postcare about memory management for the simplest of things
- Likes 1
Leave a comment:
-
Originally posted by coder View PostYou seem to be stuck in the mindset that programmers are a scarce resource. In a world of a billion coders, there's plenty of room for irrelevant and pointless projects. I see it as being like guys with machine tools building some weird contraption in their basement or shed, which some of the same people might've done like 40 years ago.
- Likes 4
Leave a comment:
-
Originally posted by schmidtbag View PostObviously, the people working on this have skill. But the way I see it, it's better to use that skill toward something everyone will benefit from or enjoy, rather than create something that will inevitably be abandoned some day. It just feels like a wasted effort on good manpower. There are other things you can code "for fun" that won't be completely overshadowed.
- Likes 5
Leave a comment:
Leave a comment: