PearOs wrote:PearOs 5 was written in C#, I wrote a .Net Framework clone in Assembly, although most of the clone was written in the Kernel. So both the Kernel and Operating System relied on that framework versus the original .Net Framework. Second, I wrote a compiler that would take the IL Output from the dll files and then convert that into Assembly. That's how I made it work.
As it seems from the source code the compiler is not workable yet. Under "Compilers.DarkSharp.DarkSharp.IL" branch of the repository I can see Add.cs with the following code:
namespace DarkSharp.IL.Opcodes
{
public class Add : Opcode
{
}
}
There are 6 more files like this. And that's all opcodes I can see.
Also I can not see anything under the "Kernel" and "OS" branches. It means there is no OS (at least I can not see it). The same can be said about "Kernel" and "OS" branches under the "Docs" root. So, there is no OS and no documentation, but there is something that the author calls "the compiler". Not very close to an OS project, as I can see it.
PearOs wrote:Now, PearOs 6's compiler is currently outputting a language like CIL but its called XIL, however I may just have it output CIL because then it would be compatible with Windows, and then I could just take Windows programs and write a API and then have the ability to convert Windows programs to Pear programs
It's great that you can say "I could just take Windows programs and write a API and then...", but rewriting Windows API is a task much more time consuming, than a few dozens of C# files you already have.
Unfortunately, I can not see a viable subject to discuss, unless the subject is just some expectations.
I could be wrong, but maybe you missed this on accident on the home page of the project, in any case. Please read the following, as it will answer any questions or comments you made above.
"PearOs is an open source C# operating system project. Currently it is under mass renovations. PearOs 5, the previous version was successful and had a lot of features, however due to lack of a compiler that could run in the operating system itself as a program, we have decided to write our own C# compiler. We are starting over and beginning PearOs 6, which will contain a bunch of features and the ability to compile its code and be added onto without having to use Windows or Linux, we will instead use the operating system itself.
Note: At this time I (Matt, or Aka civilwarrock) will be the only active developer until the compiler is finished. The reason for this is because the compiler is super complex and I don't have time for mistakes or being able to explain to someone what I am doing with it."
Please respect others projects and try to do research first before replying as it helps others around you.
PearOs wrote:PearOs 5 was written in C#, I wrote a .Net Framework clone in Assembly, although most of the clone was written in the Kernel. So both the Kernel and Operating System relied on that framework versus the original .Net Framework. Second, I wrote a compiler that would take the IL Output from the dll files and then convert that into Assembly. That's how I made it work.
As it seems from the source code the compiler is not workable yet. Under "Compilers.DarkSharp.DarkSharp.IL" branch of the repository I can see Add.cs with the following code:
namespace DarkSharp.IL.Opcodes
{
public class Add : Opcode
{
}
}
There are 6 more files like this. And that's all opcodes I can see.
Also I can not see anything under the "Kernel" and "OS" branches. It means there is no OS (at least I can not see it). The same can be said about "Kernel" and "OS" branches under the "Docs" root. So, there is no OS and no documentation, but there is something that the author calls "the compiler". Not very close to an OS project, as I can see it.
PearOs wrote:Now, PearOs 6's compiler is currently outputting a language like CIL but its called XIL, however I may just have it output CIL because then it would be compatible with Windows, and then I could just take Windows programs and write a API and then have the ability to convert Windows programs to Pear programs
It's great that you can say "I could just take Windows programs and write a API and then...", but rewriting Windows API is a task much more time consuming, than a few dozens of C# files you already have.
Unfortunately, I can not see a viable subject to discuss, unless the subject is just some expectations.
I could be wrong, but maybe you missed this on accident on the home page of the project, in any case. Please read the following, as it will answer any questions or comments you made above.
"PearOs is an open source C# operating system project. Currently it is under mass renovations. PearOs 5, the previous version was successful and had a lot of features, however due to lack of a compiler that could run in the operating system itself as a program, we have decided to write our own C# compiler. We are starting over and beginning PearOs 6, which will contain a bunch of features and the ability to compile its code and be added onto without having to use Windows or Linux, we will instead use the operating system itself.
Note: At this time I (Matt, or Aka civilwarrock) will be the only active developer until the compiler is finished. The reason for this is because the compiler is super complex and I don't have time for mistakes or being able to explain to someone what I am doing with it."
Please respect others projects and try to do research first before replying as it helps others around you.
Thanks
All he said was that he doesn't think there is much to discuss here on OSDev Forum because he doesn't see any of your kernel or OS code on your repo. I don't at all see how that is 'disrespecting' your project, the overall tone of your reply sounds rather arrogant. I am sure that he was more than aware that your project is a WIP and is aware of your end objective. However his point was just that there wasn't anything to discuss at the moment relating to OS development.
Actually considering the fact we have explained what he's saying a few times to him and yet he's still saying the same things I think I was quite rational. It's like, did you look at the source? Cause I already explained all this.
PearOs wrote:Actually considering the fact we have explained what he's saying a few times to him and yet he's still saying the same things I think I was quite rational. It's like, did you look at the source? Cause I already explained all this.
- Matt
How is that? He saw your code and I'm sure he read your homepage and I am fairly positive that he understands your goal. He understands that this compiler will be used someday to compile your kernel and such.
Interesting project, but it sounds very (maybe a little too) ambitious. I mean, there are good grounds for embryo's questions. Of course a project like this creates questions.
It would be very impressive to have written such a framework. Anyway, compilers are really interesting and I don't think there's a lot of harm in 'reinventing the wheel'.
kutkloon7 wrote:Interesting project, but it sounds very (maybe a little too) ambitious. I mean, there are good grounds for embryo's questions. Of course a project like this creates questions.
It would be very impressive to have written such a framework. Anyway, compilers are really interesting and I don't think there's a lot of harm in 'reinventing the wheel'.
Thank you,
Yes this is an ambitious project, but I think everyone's project in some way is ambitious. They probably said that about Linux when they were first developing it. As a kid I always dreamed of making this project, so I guess that ambition drives me forward. Compilers are very interesting, complex, amazing pieces of work. They are fun to study, and I don't think reinventing the wheel is bad either. It's the only way to find ways to do things better, not always but sometimes. I have written a few frameworks now that basically implement C#. This is of course because things like .ToString and String appending don't exist when you work on such a project, so I basically wrote a library for the kernel that was a .Net Framework remake, that supported the things I needed, eg (list support, array support) stuff like that.