4 ms·
I'm happy that Pascal lost: - Everything new that Pascal had (record file io, for example) were suboptimal. Everything useful in Pascal came from C (including
by guard-of-terra 15y ago
I'm happy that Pascal lost:
- Everything new that Pascal had (record file io, for example) were suboptimal. Everything useful in Pascal came from C (including loop controls).
- Useful things from C are bolted on Pascal in gross, inconsistent and ugly way. E.g. break; loop construct is a procedure! Lol, what?
- masklinn 15y ago> loop construct is a procedure! Lol, what? Common Lisp's loop is a macro, Smalltalk's are method calls (with blocks), work fine. That's not the case in Pascal though. Neither `for` nor `while` are procedures, as in C they're special forms of the language.
- guard-of-terra 15y agoMacro is okay. Procedure is not okay. Break is a procedure.
- lucian1900 15y agoWhy is it not okay? Any lisper will tell you using a function is always preferable to using a macro, if at all possible.
- guard-of-terra 15y agoC is a strict and beautiful. Pascal is "Here you have your ugly break; because you too weak to live without it".
- adestefan 15y agoIf you think C is strict, then you've never looked at the ANSI C standard.
- guard-of-terra 15y agoI've looked at Delphi, thank you.
- pjmlp 15y agoYes, I have a collection of works of art entitled "buffer exploit", placed next to the "dangling pointer" exhibition hall. It is sooo beautiful.
- masklinn 15y agoDon't you understand the sheer beauty of the undefined behavior? It is not the beauty of a great painting, it's the beauty of the winter mountain: shining, tantalizing, with the stability of a marble on a needle and ready to take your life at the lightest sneeze.
- zvrba 15y agoPascal has had labeled goto from its conception. Break is just an extension / syntactic convenience. Even in C and C++ i still use goto when I have to break out of multilevel loops.
- masklinn 15y ago> Macro is okay. Procedure is not okay. Break is a procedure. Why do you believe this to matter? Smalltalk's signaling and exception handling (both `catch` and `finally` equivalent) uses regular messages and blocks (with hooks into the interpreter obviously). What value do you see in making special syntax things which need not be so, ease of "optimizations" (such as compiling a block to a jump)?
- pjmlp 15y agoPascal heritage is Algol not C. Since Pascal lost, we gained buffer overflows exploits everywhere, thanks to a language that does not provide proper safer constructs coupled with bad developers everywhere.
- guard-of-terra 15y agoThe problem is, you can't do any real work in Pascal without resorting to the same unsafe constructs. Delphi is a kind of useful Pascal and it totally does have those.
- pjmlp 15y agoYes you can. Do you really need pointer arithmetic, null terminated strings and array downgrade to pointers for real work? Because every other language in the planet is able to deliver real work without them. Even the ones that existed before C.
- guard-of-terra 15y agoOkay, then where is the work done in Pascal? Research projects excluded.
- pjmlp 15y agoMac OS was created in Pascal originally, http://shop.oreilly.com/product/9780596007195.do http://shop.oreilly.com/product/9780596007195.do Skype was originally created in Delphi, before being ported to Qt. http://www.prweb.com/releases/2011/5/prweb8476410.htm http://www.prweb.com/releases/2011/5/prweb8476410.htm Pixel32 is done with FreePascal http://www.kanzelsberger.com/ http://www.kanzelsberger.com/ http://en.wikipedia.org/wiki/Pixel_Studio_Pro http://en.wikipedia.org/wiki/Pixel_Studio_Pro Atmel AVR-Microcontrollers programmed in Pascal http://www.e-lab.de/index_en.html http://www.e-lab.de/index_en.html http://www.mikroe.com/eng/categories/view/2/compilers/ http://www.mikroe.com/eng/categories/view/2/compilers/ Should I keep posting examples? Or for you is Pascal only the very first release of the standard, which was only planned for education purposes?