Announcement

Collapse
No announcement yet.

Ome: A New Cross-Platform Desktop Environment

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Originally posted by Pajn View Post
    Why this urge for native code?
    Todays computers (and phones, however in my book they are the same) are fast enough to
    run what we need it to run even if we write it in a language that is platform agnostic and where
    I as a developer doesn't have to care about what underlying hardware there is, it works
    everywhere.
    Tell that to game devs, or devs who write art software, CAD, etc, etc. Every bit of performance is important, and there's no reason not to have the most you can. The question you should answer is: Why waist performance and control?

    Also the web standard is the only thing that provides a complete solution. Sure C++ is
    standardized, however using only its stdlib is not possible.
    HTML is far from a good cross-platform standard today, unless you're just doing simple stuff. As I said in my post above, there are horrible problems with the Audio API, Input, Android performance, etc. And no one suggested writing a cross-platform app with just STL. This is the reason third-party, domain specific libs exist for any language...

    And why not come up with something new and better? Well, the fact that it works today is
    pretty nice. And if you think you just can create a new standard that everyone will adopt you
    are wrong.
    Ever heard of Unity3D, Love2d, etc, etc..
    (ps. I AM writing my own as well)

    LLVM is not standardized and doesn't provide a complete solution with graphical UI, standardized
    API against hardware, accessibility support and such.
    What? LLVM is simply a very mature bytecode. Everything else exists beyond that as libraries. The same HTML/CSS rendering/input/etc APIs could exist attached to an LLVM runtime instead of Javascript one.

    NaCl is not platform agnostic.
    Only because no one but Google will support it, but for completely non-technical reasons. Why do you think Mozilla even invented ASM.js if Javascript was "good enough"?

    Your problem with JS seems to be that you try to use it for something it were never designed for.
    If you want to write webapps, use C++ and compile to Asm.js or use Dart and compile to js (and
    provide the Dart code to so browsers that support runs faster).
    I don't have a problem with ASM.js. Never did. I have a problem with Firefox OS (or any new platform) trying to enforce Javascript on developers, and then justifying it with ASM.js.

    Comment


    • #32
      Excuse my ignorance but this news is about a Desktop Environment, right?

      Where are the screenshots?

      Comment


      • #33
        Originally posted by Aleve Sicofante View Post
        Excuse my ignorance but this news is about a Desktop Environment, right?

        Where are the screenshots?
        The guy just announced that he was building it, it's not yet "made". It's something that I would definitely be willing to try out, though.

        Comment


        • #34
          What baffles me is stuff like:
          I'm going to develop something new using this old and slow programming language rather than something very similar with 2x the speed.
          Or
          " " using this old, fast but complex language rather than this new, just as fast but less complex language.

          Using Java OR javascript over it's alternatives which generally perform much faster doesn't seem to have any sense to it. The same goes for C and C++ which have many alternatives which generally decrease the time spent coding and debugging.

          Comment


          • #35
            Originally posted by profoundWHALE View Post
            What baffles me is stuff like:
            I'm going to develop something new using this old and slow programming language rather than something very similar with 2x the speed.
            Or
            " " using this old, fast but complex language rather than this new, just as fast but less complex language.

            Using Java OR javascript over it's alternatives which generally perform much faster doesn't seem to have any sense to it. The same goes for C and C++ which have many alternatives which generally decrease the time spent coding and debugging.
            Thanks for the joy of proving your self as ignorant as the folks you're objectifying.

            Personally, C/C++ [though I would use ObjC over C++] are quite rich in their LLVM/Clang/LLDB/Compiler-RT world. Now GCC, until recently, couldn't give a shit about discernible error output and thus impeded one in solving their coding issues, all of which tend to be a lack of solid mathematical theory, compiler theory and even said programming language they are leveraging.
            Last edited by Marc Driftmeyer; 27 January 2014, 04:33 AM.

            Comment


            • #36
              Originally posted by F i L View Post
              Tell that to game devs, or devs who write art software, CAD, etc, etc. Every bit of performance is important, and there's no reason not to have the most you can. The question you should answer is: Why waist performance and control?
              Well, games and CAD is a very small part of the market. The overwhelming majority is normal programs.
              Also Android seems to handle pretty well with its Java only environment. Asm.js have comparable
              performance to Java. Sure there is some cases where you have to go native, but most programs
              written in C/C++ would have done much better in a platform independent language.

              A good reason is to have the ability to run on any platform.

              Originally posted by F i L View Post
              HTML is far from a good cross-platform standard today, unless you're just doing simple stuff. As I said in my post above, there are horrible problems with the Audio API, Input, Android performance, etc.
              Sure audio isn't in its best state right now. However a standardized API is there, now it's up to the
              browser vendors to fix it. Firefox seems to have good support.

              What's wring with input? Sure the API isn't the best as it's designed by W3C but there are frameworks
              that fixes that.

              Originally posted by F i L View Post
              And no one suggested writing a cross-platform app with just STL. This is the reason third-party, domain specific libs exist for any language...
              Shrinking the portability even further

              Originally posted by F i L View Post
              Ever heard of Unity3D, Love2d, etc, etc..
              (ps. I AM writing my own as well)
              Yes.
              Ever heard of Jolla, Windows Phone, Ubuntu Touch, ChromeOS?
              Also it's totally up to the developer to enable builds for other systems. For example I
              would like to play Audiosurf 2 which is a Unity3D game and should run under Linux, however
              as of the current it's Windows only.

              Originally posted by F i L View Post
              What? LLVM is simply a very mature bytecode. Everything else exists beyond that as libraries. The same HTML/CSS rendering/input/etc APIs could exist attached to an LLVM runtime instead of Javascript one.
              With the difference than none ever done that and that isn't defined in any standard.

              Originally posted by F i L View Post
              Only because no one but Google will support it, but for completely non-technical reasons. Why do you think Mozilla even invented ASM.js if Javascript was "good enough"?
              No. NaCL requires the developer to enable compilation for ARM. And anything else than X86 and ARM is not supported.

              Originally posted by F i L View Post
              I don't have a problem with ASM.js. Never did. I have a problem with Firefox OS (or any new platform) trying to enforce Javascript on developers, and then justifying it with ASM.js.
              You aren?t enforced to write for Firefox OS.

              Originally posted by profoundWHALE View Post
              Using Java OR javascript over it's alternatives which generally perform much faster doesn't seem to have any sense to it. The same goes for C and C++ which have many alternatives which generally decrease the time spent coding and debugging.
              What are there for good alternatives to Java?
              For Javascript you have good alternatives which are better to write in, I agree with that.

              Comment


              • #38
                Originally posted by Pajn View Post
                Well, games and CAD is a very small part of the market. The overwhelming majority is normal programs.
                Also Android seems to handle pretty well with its Java only environment. Asm.js have comparable
                performance to Java. Sure there is some cases where you have to go native, but most programs
                written in C/C++ would have done much better in a platform independent language.

                A good reason is to have the ability to run on any platform.
                Games are a massive, multi billion dollar industry. They're far from the minority, and they are one of biggest popularity drawing apps of any platform. CAD is a different story true, but Art software is pretty relevant, and so is audio and video editing/streaming software (all of which require performance and SIMD access really).

                Android is not Java only. It fully supports native apps with the NDK. And most languages are considered "platform independent". I'm not sure what you where saying about that.

                Sure audio isn't in its best state right now. However a standardized API is there, now it's up to the
                browser vendors to fix it. Firefox seems to have good support.
                And this is a perfect example of the problem. You're promoting a tech which can't even run sounds effects yet, or does so with horrible delays, and yet you think it has some advantage over one of the many cross-platform native/C#/Java/etc libraries that have existed for years? Firefox having good support doesn't make HTML a good cross-platform tech. Why wait for it to catch up when ultimately all that will achieve is an almost as good experience as what we have right now? Why base a platform around that and force developers to use it instead of just giving them native control?

                What's wring with input? Sure the API isn't the best as it's designed by W3C but there are frameworks
                that fixes that.
                In my experience Multi-touch input is either completely broken on some Androids, and very slow/laggy on others. Though that may have changed in the last 6-8 months. In contrast though, native's been working great for years now.

                Shrinking the portability even further
                How so? I don't see how this is a valid response to what I wrote. Native libraries can be just as cross-platform. I mean, the HTML platform itself is written in native code..

                Yes.
                Ever heard of Jolla, Windows Phone, Ubuntu Touch, ChromeOS?
                Also it's totally up to the developer to enable builds for other systems. For example I
                would like to play Audiosurf 2 which is a Unity3D game and should run under Linux, however
                as of the current it's Windows only.
                Jolla, WP, UT can all run native just fine without much effort (well, WP requires DirectX instead of OpenGL, which can be a big issue, but WP is still a much smaller device market anyways). ChromeOS, FFOS, etc can be targeted by native/LLVM though Ecmascript, etc they'll just suffer in terms for performance for it. I don't see your point here. This is why I mentioned third-party libraries. Libraries exist for other languages that make it easy to write platform agnostic native code. Your Audiosurf 2 example isn't valid. I could easialy have pointed to any WebGL web app and said "ah ha! no Windows support!". Companies only spend time supporting platforms they see as profitable, which is why Linux is currently lacking in games. Nothing to do with a limitation in the tech.

                With the difference than none ever done that and that isn't defined in any standard.
                That wasn't my point. I was responding to something I thought you where confused about.

                No. NaCL requires the developer to enable compilation for ARM. And anything else than X86 and ARM is not supported.
                PNaCL supports "any" future arch, being LLVM based. NaCL being limited to x86 & ARM isn't a issue, considering those two combined make up the vast majority of all consumer electronics. NaCL wasn't intended to run on X360, PS3 or Wii you know (The only other non-x86/ARM platforms). It's just a better alternative to write web apps in, even if that's unrealistic due to it being a Google-only tech right now.

                You aren’t enforced to write for Firefox OS.
                I'll target Firefox OS just fine. It will just run my apps much slower than other platforms cause it will do it through a JS backend, unlike HTML5 apps which may run fine on FFOS, but run like crap or not at all on other platforms. Firefox OS can be dumb if they want, and I can't also talk about how dumb they are in response.

                What are there for good alternatives to Java?
                For Javascript you have good alternatives which are better to write in, I agree with that.
                I know this wasn't directed at me, but I would just like to say that the languages i use are: Nimrod, D, C#, and C/C++, and I prefer them in that order.
                Last edited by F i L; 27 January 2014, 07:21 AM.

                Comment


                • #39
                  Originally posted by F i L View Post
                  Games are a massive, multi billion dollar industry. They're far from the minority, and they are one of biggest popularity drawing apps of any platform. CAD is a different story true, but Art software is pretty relevant, and so is audio and video editing/streaming software (all of which require performance and SIMD access really).
                  They are a minority in terms of users. Most users don't play games or only play very simple
                  games that they probably already play in the browser (like farm ville). And I agree that
                  sometimes native performance or native access to lower level stuff is needed however those
                  cases doesn't match the majority of the users (although the rest of the users have a bigger
                  market share).
                  Fact is though that I have a lot of apps on my computer that would have worked perfectly
                  on a platform independent solution.

                  Originally posted by F i L View Post
                  Android is not Java only. It fully supports native apps with the NDK. And most languages are considered "platform independent". I'm not sure what you where saying about that.
                  True, however the native code is still managed by Dalivik so you will still get the start up cost
                  and memory access cost of having a VM.

                  Originally posted by F i L View Post
                  And this is a perfect example of the problem. You're promoting a tech which can't even run sounds effects yet, or does so with horrible delays, and yet you think it has some advantage over one of the many cross-platform native/C#/Java/etc libraries that have existed for years? Firefox having good support doesn't make HTML a good cross-platform tech. Why wait for it to catch up when ultimately all that will achieve is an almost as good experience as what we have right now? Why base a platform around that and force developers to use it instead of just giving them native control?
                  As I said, sometimes native is needed however a lot of times it's not. Low latency audio,
                  as you said, is not very good in web standards. However, you should be perfectly good in
                  Java and don't have to go native.

                  Originally posted by F i L View Post
                  In my experience Multi-touch input is either completely broken on some Androids, and very slow/laggy on others. Though that may have changed in the last 6-8 months. In contrast though, native's been working great for years now.
                  I have never had any problems with that. However I haven't tested on any lower segment
                  phones so that may be a problem, I don't know.

                  Originally posted by F i L View Post
                  How so? I don't see how this is a valid response to what I wrote. Native libraries can be just as cross-platform. I mean, the HTML platform itself is written in native code..
                  Then you are not only limited by the portability of the language but also by the portability
                  of the library. If you for example use GTK you can't run the app on any of the current mobile
                  platforms and certainly not on any future. If you use HTML and CSS you will be able to run
                  it on future platforms for a very, very long time.

                  Originally posted by F i L View Post
                  Jolla, WP, UT can all run native just fine without much effort (well, WP requires DirectX instead of OpenGL, which can be a big issue, but WP is still a much smaller device market anyways). ChromeOS, FFOS, etc can be targeted by native/LLVM though Ecmascript, etc they'll just suffer in terms for performance for it. I don't see your point here. This is why I mentioned third-party libraries. Libraries exist for other languages that make it easy to write platform agnostic native code.
                  Yes, but not using the same code or same binaries. Jolla uses QT with its special stuff,
                  UT uses QT with its special stuff so even those are not compatible. WP is far of.
                  ChomeOS and FFOS has again another way to draw graphical interfaces.
                  HTML and CSS is the only platform that runs on all of those without any modification.

                  Originally posted by F i L View Post
                  Your Audiosurf 2 example isn't valid. I could easialy have pointed to any WebGL web app and said "ah ha! no Windows support!".
                  WebGL runs perfectly fine on Windows.

                  Originally posted by F i L View Post
                  Companies only spend time supporting platforms they see as profitable, which is why Linux is currently lacking in games. Nothing to do with a limitation in the tech.
                  Which is why having something that can run on any platform is so good. Then I use
                  whatever I want on whatever I want.

                  Originally posted by F i L View Post
                  PNaCL supports "any" future arch, being LLVM based. NaCL being limited to x86 & ARM isn't a issue, considering those two combined make up the vast majority of all consumer electronics. NaCL wasn't intended to run on X360, PS3 or Wii you know (The only other non-x86/ARM platforms). It's just a better alternative to write web apps in, even if that's unrealistic due to it being a Google-only tech right now.
                  I didn't know Google had two. Then lets hope PNaCl becomes widely adopted. Until
                  then HTML/CSS/JS is the only true platform agnostic way to write apps (unfortunately).
                  Personally I believe in Dart which seems to have very good performance possibility.
                  It is already today with a very new VM 2x faster than Javascript and does sometimes
                  beat Java. If we give it more time they should probably be able to tune up that VM even
                  more, most stuff gets faster over time.
                  It can also compile to Javascript so it can be used today.

                  Originally posted by F i L View Post
                  I know this wasn't directed at me, but I would just like to say that the languages i use are: Nimrod, D, C#, and C/C++, and I prefer them in that order.
                  Nimrod and C/C++ compiles to native binaries which means that I'm limited to the platform
                  that it's compiled for. There these are no alternative to Java which can run on any platform
                  with a JRE.
                  C# have less platform support than Java and the language is designed with Windows in mind,
                  therefore it's a lesser alternative to Java.
                  I have never used D and don't know anything about it, so I will say nothing about it.

                  Comment


                  • #40
                    It always amazes me how fast threads get off-topic on here, and then how long that off-topic discussion can last. It feels like Wiki-wars, but we only go 3 hops in order to keep up the facade of relevance.

                    On-topic: This is something that I've been thinking about doing for a while (though, I was planning on taking it to the distro level... a DE is probably the better choice). If there is ever a formal release, you can expect to see me trying it out ASAP.

                    Comment

                    Working...
                    X