Slashdot Mirror


OpenGL in PHP

Neophytus writes "Submitted as an entry into the .geek PHP5 tournament a proof of concept openGL implementation in PHP has been released by Peter 'iridium' Waller. The demonstration (download) shows four items being rendered in realtime by PHP at a not unreasonable 59FPS. The author welcomes feedback with practical uses for this technology." Update: 06/09 01:10 GMT by T : iridiumz0r, author of this entry, adds a link to this informative page responding to a number of comments in the discussion below.

7 of 286 comments (clear)

  1. Using the right tool for the job by Cardinal · · Score: 5, Insightful

    ...Is truly a lost art.

    Of course, we already knew this.

    1. Re:Using the right tool for the job by Saeed+al-Sahaf · · Score: 4, Insightful
      So why not php?

      Because you don't have to be a "guru" a la Perl to right functional programs with it. Same reason people here hate VB.

      --
      "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    2. Re:Using the right tool for the job by pizza_milkshake · · Score: 4, Insightful
      It's a turing complete language

      so is Brainfuck, but i wouldn't consider it the right tool at any time.

    3. Re:Using the right tool for the job by loginx · · Score: 3, Insightful

      And perl was designed for text processing.

      Languages evolve as more great developers join the core development teams and change the behavior and functionality of the language.

      A good language is a language that can evolve beyond what it was designed to do and scale well.

      PHP and Python are such languages.

    4. Re:Using the right tool for the job by runderwo · · Score: 4, Insightful
      Nice troll. The problem is more like that with PHP you can "right" programs that work with a minimum of effort. That sounds great, but the issue shows up when that code is handed to someone else. Debugging someone else's code in a language that enforces structured programming pragmas as little as possible is a nightmare. I know this because I do it on a regular basis.

      PHP is like MySQL, and it appeals to the same group of people. It works, most of the time. When it's not sure what to do, it does _something_ rather than annoy the programmer, which might even be the wrong thing. When it does something that might be the wrong thing, it does it silently whenever possible so there is no "squeaking" on the outside. The result is that PHP programs work most of the time, like MySQL. That sounds great, but they also have a tendency to fail in unexpected murky ways.

      BTW, there is no need to be a "guru" to write Perl programs. An understanding of the syntax, as well as basic structured programming/OO principles is all that is necessary to create fast, reusable, and reliable Perl code. The problem is that frequently people lack the latter, so they jump on a language like PHP which lets them get away with not having to know such things. Such people view PHP as superior and Perl programmers as pretentious language snobs because they can do in 5 minutes in PHP what would have taken them an hour to learn how to do in Perl. That in no way invalidates the viewpoint of the Perl snob. PHP is a half-ass hack of a language that happens to be preferred by the majority of half-ass hacks of programmers out there.

      Note, this is not a flame at PHP developers. I know some really good ones. I'm flaming people who suggest that PHP is a better language because it doesn't make you learn anything about software design principles. That's precisely the reason I avoid other people's PHP code whenever possible and don't recommend its use in a business environment where software infrastructure quality counts towards the bottom line.

    5. Re:Using the right tool for the job by Canberra+Bob · · Score: 3, Insightful

      "Debugging someone else's code in a language that enforces structured programming pragmas as little as possible is a nightmare. I know this because I do it on a regular basis."

      Same here, and I totally agree with you. If something goes wrong, I want to know about it, not have the program / database decide for me what it should do with it. I think your problem was you mentioned something bad about MySQL in a PHP story. The LAMP zealots are amongst the worst. MySQL will accept date types like 2004-15-60! Having to support quite a number of apps, I want to know the moment something funny happens, not find out a month later when the end user is pulling a report.

      For simple web apps (eg shopping cart) I advise people to use LAMP due to its simplicity. Anything larger and I advise people to stay well clear and go with something like Java (or Perl) and Postgres. This forces the designer / developer to think in large terms to begin with. May seem like a waste of time early on (and it is if you know for certain your app will not grow) but when you start scaling up, it will save a total rewrite.

  2. Just a wrapper by Theatetus · · Score: 3, Insightful

    Well, it's not a port or an implementation; it's a wrapper to a DLL. That's the fun of dynamically loaded libraries: you can call opengl, gtk, qt, COM, CORBA, $WHATEVER_YOU_WANT from $WHATEVER_LANGUAGE_YOU_WANT as long as you take the time and effort to write a wrapper label, which this guy did, and he wasn't the first.

    --
    All's true that is mistrusted