Page 1 of 2 12 LastLast
Results 1 to 10 of 40

Thread: The future of Pascal as language for games

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    I've gotten the "Pascal is dead" asshattery a good deal the past few years... usually they'll point at this ancient article filled with half truths and outdated information as their justification -- they'll call the language 'useless for doing anything' or "inferior to C dialect for getting to the hardware" when that's total 100% grade A farm fresh MANURE!

    ... and I love rubbing their noses in the sheer number of programs written in Pascal they are probably using and don't even realize it!

    Avant? (the IE wrapping browser?) Asus Power4Gear? ThinkSQL? Pixel? GBXEmu? FLStudio? PC Tools Spyware Doctor? Inno Setup? CambridgeCAD? MSI Afterburner? MediaMonkey? PE Explorer? MyCORSA? AVS? BitZapper? IMGBurn? Daring Apprentice? Space Rangers 2? All of CoffeeCup's software?

    ... and that's the little stuff... How about Partition Magic? MagicISO? CloneCD? IcoFX? Spybot Search & Destroy? ADAWARE?!? WINRAR?!?

    How about this one: SKYPE?!?

    All those software packages? Written in Delphi... or Lazarus+FPC when there's a cross-platform version. Modern Object Pascal being used to build modern applications... Quite often for multiple platforms at once!

    It goes back to something I've been saying for years, the only thing holding Pascal back was a lack of a decent cross platform compiler. Delphi was a good start to keeping Pascal modern by tossing Visual programming on top of it, but FPC+Lazarus takes that cross platform. There's really little you can do in C or C++ that a modern Pascal compiler like Delphi or FPC can't do.

    Well, other than write needlessly and pointlessly cryptic code with a half assed object implementation. C++ really excels at that -- hardly surprising since we all know that C and Unix are a hoax.

    But as I've said a million or so times the past 30 years, I'd sooner hand assemble 8k of Z80 machine language than try to find a bug in 100 lines of C code.

    I swear that C and it's derivatives exists for the sole purpose of perpetuating the idea that programming is difficult -- it isn't... Assembly is simpler than C! It is an ugly, half-assed language that I cannot fathom the desire to use.

    But to keep that in perspective, I say the same thing about HTML 5.
    Last edited by deathshadow; 15-06-2012 at 08:18 PM.
    The accessibility of a website from time to time must be refreshed with the blood of designers and owners. It is its natural manure

  2. #2
    That is some interesting list of software you got there. I think it's many of the people that discover pascal, that think it is good. But i know exceptions too that are just lifelong C-coders that won't change. Support for C is just too big, especially if their operating system is Linux based.

    But the issue relates to another topic, which is "Game making in general as a hobby is dying". Nobody really makes these small games and experimentations that we use to see some years ago. The standard that modern games put on us is a little depressing. It's not possible to reach them with just some homemade game-library, against commercial engines built by hundreds of coders with huge mathematical expertise. The barrier that something like Super mario karts, or Doom 2 put, is not that big. Many can attempt to make better games than them, but already something like Unreal Tournament goes beyond the limit, and it was already released before 2004. Now the expectations are sky-high.

  3. #3
    Quote Originally Posted by User137 View Post
    But the issue relates to another topic, which is "Game making in general as a hobby is dying". Nobody really makes these small games and experimentations that we use to see some years ago. The standard that modern games put on us is a little depressing. It's not possible to reach them with just some homemade game-library, against commercial engines built by hundreds of coders with huge mathematical expertise. The barrier that something like Super mario karts, or Doom 2 put, is not that big. Many can attempt to make better games than them, but already something like Unreal Tournament goes beyond the limit, and it was already released before 2004. Now the expectations are sky-high.
    I don't agre with you on that. Probably I would a few years ago but not today.
    Why? What has happened since then? I would say Minecraft happened. Don't get me wrong I don't say that Minecraft alone is the reason why I disagre with what you are saying. But when Notch sucseeded with Minecraft despite Minecraft having poor graphics this inspired many other indie and hobby game developers to work on their own games.
    You see the gaming industry is putting a huge amount of money into advertising their own games as well as into development of advanced game engines. The gaming industry also aqured IP rights for most sucsesful titles they were in gaming world mostly buy buying small gaming studios. Why? This is the way they try to gurante themself to be earning bug bucks seling their games even when some of them are catastrophic. And when some indie game developer makes a potentionally sucsessful game they quickly check if some contents of that game might violate some IP rights from many game titles the industry aquired in the past.
    I have seen several game project being closed becouse the gaming industry was saying that those games are violating IP rights from some other game(even some old ones wich are nowhere to be bought anymore). For some cases I'm convinced that the gaming industry would not sucseed to terminate theese projects if all would come into court. But the hard truth is that most indie developers don't have enough mony to afford being sued by the gaming industry. So many of them have just canceled development to avoid all that.
    And that is the main reason why there aren't so many indie developers out there.

    But the situation is changing. In the last mont alone I found several good and promising game projects. Last two were Towns and Gnomoria. Also you shouldn't forget about flash games. I belive that most small games are now being built in flash. Just go and visit some internet site with flash games and look at the selection it is offering. The main reason for that is probably the fact that flash games can be run on almost all platforms (and you don't even need to have any platform specific code for that). The similar goes to JAVA. And I belive HTTM 5 will folow.

    So what does your game needs to sucseed in theese days? High end graphic engine with support for best graphics and visual effects? NO! Your game needs just some uniqe idea. Why? Take a look to all those big games develiped by all those big gaming studios. Dosen't most of them seems the same?
    Until we indie developers would be implementing new ideas into our games we would always be able to compete with theese big gaming studios. WHy? Truthfully the players are slowly becoming tired of playing the "same" games over and over and seek some uniqe games. That's why we have several sucsessful games being developed by lone programers or small indie teams.

  4. #4
    short answer : the future of pascal as a language for games determined by (pascal coders) not by the language itself .


  5. #5
    Quote Originally Posted by AirPas View Post
    short answer : the future of pascal as a language for games determined by (pascal coders) not by the language itself
    Exactly! So lets stick with it and show all other pepole who think pascal is not good for games how terribly wrong they are.

  6. #6
    Well, I'm doing my living from Pascal Games for several years and I hope to be creating Pascal Games for a long long time yet, I don't see any reason to exchange to another language. Windows/Mac/iOS/Android. Pascal does have everything I need! =)

    Druids Battle of Magic - Windows (Mac and iOS ports to be released)
    http://www.bigfishgames.com/download...agi/index.html

    Abra Academy - Windows
    http://www.bigfishgames.com/download...emy/index.html

    Abra Academy - Returning Cast - Windows
    http://www.bigfishgames.com/download...ast/index.html

    Dreams of a Geisha - Windows/Mac/iOS
    http://www.dreamsofageisha.com

    Sultan's Labyrinth - Mac and iOS
    http://www.bigfishgames.com/download...ame/index.html
    http://itunes.apple.com/en/app/the-s...hd/id465814548
    http://itunes.apple.com/en/app/the-s...th/id465814690

    Sultan's Labyrinth - A Royal Sacrifice - Mac (iOS to be released)
    http://www.bigfishgames.com/download...ice/index.html

    And I do have more 4 games scheduled to be released this year! Well, I'm really sure Pascal is not dead for GameDev! =)

  7. #7
    Quote Originally Posted by deathshadow View Post
    I swear that C and it's derivatives exists for the sole purpose of perpetuating the idea that programming is difficult -- it isn't... Assembly is simpler than C! It is an ugly, half-assed language that I cannot fathom the desire to use.
    Absolutely correct!
    Quote Originally Posted by User137 View Post
    Game making in general as a hobby is dying.

    That's my impression, too.
    Best regards,
    Cybermonkey

  8. #8
    Quote Originally Posted by deathshadow View Post
    I swear that C and it's derivatives exists for the sole purpose of perpetuating the idea that programming is difficult -- it isn't... Assembly is simpler than C! It is an ugly, half-assed language that I cannot fathom the desire to use.
    I think you are confusing C with C++, which is quite a jump from one to another. C is like Pascal without objects, which at these days would be quite useless. I don't know why you keep bashing C since as you have said yourself, it's pretty much dead. You should be comparing Delphi / FPC to something on the same level, for instance C++ Builder (Embarcadero), which is also quite a powerful tool.

    Other than that, I wouldn't say that Pascal is any better or any worse than C++ (even though there are some things I like in Pascal more), it depends on how your code is written. There have been notorious examples on both ends: I have seen Pascal code that was so poorly written, where you would probably look for other alternatives including C++ if you want to understand what it was doing. (cough... GSM encoding... cough)

  9. #9
    Quote Originally Posted by Lifepower View Post
    I think you are confusing C with C++, which is quite a jump from one to another. C is like Pascal without objects, which at these days would be quite useless. I don't know why you keep bashing C since as you have said yourself, it's pretty much dead. You should be comparing Delphi / FPC to something on the same level, for instance C++ Builder (Embarcadero), which is also quite a powerful tool.
    First, notice I say "and it's derivitives", so I'm putting C#, C++, PHP, Java, Javascript, LSL, etc... Not just "C".

    Second, they ALL share being needlessly cryptic, having a structure nowhere near that of assembly (despite the wild and nonsensical claims to the contrary, line numbered BASIC was closer to ASM than C in terms of syntax!), lacking all the tools to prevent errors in the first place that pascal does. No forward declaration, typo's instantly become new variables, complete lack of range checking, compilers so stupid they resort to =, == and === as separate operations, complete lack of a real STRING type, did we mention a complete lack of range checking and lack of a real string type so buffer overflows are inherently the name of the game? (admittedly modern pascal's have tread into this #DDD idiocy with pChar), the seemlingly random and inconsistent use of -> vs. . on STRUCT, the outright annoying idiocy of .h files (because maintaining two files that redeclare the same thing is SO useful.. admittedly I'm the same way about interface/implementation in unit), willy-nilly error handling...

    ... and did we mention it being needlessly cryptic? This is even MORE true of C++, which is even MORE half-assed and pointlessly so than C. It is probably the worst object implementation I've dealt with, and on the whole seems carefully crafted to make 100% sure every program is susceptible to buffer overruns, memory leaks, and illegible inconsistent code.

    Though you do have a point, bad code is bad code, regardless of what language it's written in; the difference to me is the amount of bad code C lets past the precompiler, compiler and dozen other points at which they could easily have been trapped.


    As the joke goes, Pascal won't let you shoot yourself in the foot

    You want to see REALLY pointlessly cryptic though, have a good look at Rust... A language for the people who thought that C is a bit too verbose and clear for their tastes -- which is a bit like saying the Puritans who settled in Boston in 1630 traveled across the pond because the CoE was a bit too warm and fuzzy for their tastes.
    Last edited by deathshadow; 17-06-2012 at 01:43 AM.
    The accessibility of a website from time to time must be refreshed with the blood of designers and owners. It is its natural manure

  10. #10
    Ok, now you're exgerrating a bit.

    Quote Originally Posted by deathshadow View Post
    (...) lacking all the tools to prevent errors in the first place that pascal does. No forward declaration, typo's instantly become new variables
    Uhm, forward declaration is exactly the thing .header files do in C. And if you mean forward declaration of variables, well, there's nothing that would hold you back from putting all the vardecls at function beginning, then slapping a newline or two and putting actual code. I don't know a lot of languages, but typos becoming new variables is mostly a PHP thing, where "first appearance equals declaration" is a means to make coding faster. No such thing appears in C/CPP.

    Quote Originally Posted by deathshadow View Post
    =, == and === as separate operations
    Well, yep, this is somewhat annoying, but mainly due to the fact that = also returns a value (otherwise a=b=c would not be possible), so putting "if (a=b)" instead of (a==b)" works perfectly fine and most often, if the compiler isn't set to verbose, it won't even give you a hint that there is an assignment instead of comparison in the conditional. As for ===, I gotta say, that's my most beloved PHP syntax element.

    Quote Originally Posted by deathshadow View Post
    seemlingly random and inconsistent use of -> vs. . on STRUCT
    derp. Sorry, but no. It's exactly the same as use of "^." vs. "." on Pascal records/objects. The -> operator in C-like languages stems from the fact that dereference is done by putting * before the varname - and, as far as my memory goes, the dot has higher priority than the asterisk, so you must do "(*a).b" in order for it to work. This thing is obviously hard to read, so to easen things up, the -> operator was introduced. So - if it's a static var, you go ".", if it's a pointer, you go "->", as you would go "^." in Pascal. Nothing random nor incostistent for me.

    Every language has its pros and cons, that's needless to say. Pascal sometimes tends to get a bit to verbose, while minimalism is one of key traits of C. This most often makes writing in C-derivatives quicker and I'd even say, easier. As much as Pascal purposely introduces some error control, C purposely does not so - following the thought "if you don't want to, no one will force you". So, following the foot joke, it's kind of "compiler forces you to make sure you aren't aiming at your foot before shooting" vs. "you can shoot wherever you like and checking whether you're not aiming at your own foot is up to you".

    As for me, one of the things that still keeps Pascal back is a lack of a good IDE. Recently I had to, as part of my studies, write an app in QtCreator - and honestly, I found it quite entertaining, as the thing had all the syntax completion I could ever long for, drastically reducing the amount of key-smashing needed. As for Lazarus, well, dunno, maybe it's just me, but I absolutely hate hate hate the "shitload of floating windows" type of interface - I would much prefer if there was an option to have a "single window with embedabble/movable/switchable panels" one.

Page 1 of 2 12 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •