ասք հռոմեական թվերի մասին



[այստեղից][1]
  
Ռոբ Փայքի, որը այժմ Գոու-ի ֆյուրերն ա ամենահայտնի խոսքերից։

Ինձ շատ ուրախացրեց [այս փոսթը][2]․

<blockquote style="border: 2px solid rgb(127, 195, 59); padding: 10pt; margin-left: 30pt; background-color: #a6df6d;">
  <p>
    > Java is done right in concept.
  </p>
  
  <p>
    wtf?
  </p>
  
  <p>
    [ Let me start by saying I don&#8217;t speak for any of these guys,<br /> I can&#8217;t even get their OS to run a GUI.]
  </p>
  
  <p>
    Java is better than C++, but as others have mentioned that&#8217;s like saying<br /> toothache is better than herpes.
  </p>
  
  <p>
    It&#8217;s just C without pointer arithmetic. Leaving aside actual<br /> implementation bugs, it :
  </p>
  
  <p>
    * runs on less platforms than any other language I&#8217;ve ever used,<br /> * wimped out of having numeric types implemented as objects, then<br /> bolted on &#8216;containers&#8217; for them in 1.1<br /> *has changed its GUI twice and *still* doesn&#8217;t do it right,<br /> * it&#8217;s thread model is essential to its operation but differs widely<br /> between VMs even on the same platform<br /> * the same it true for its garbage collector.<br /> * The APIs are huge and inconsistent.<br /> * it *finally* &#8211; in 1.4 &#8211; has a regex API (which is unusably complex).<br /> * it&#8217;s native code bindings are absolutely the worst I&#8217;ve ever seen,<br /> even Perl does a better job
  </p>
  
  <p>
    And don&#8217;t forget m5 current personal favourite &#8211;<br /> its pointlessly restrictive type system.
  </p>
  
  <p>
    Type is stored in the *pointer*, not the object.<br /> So I have to hold the VMs hand each time I pass an argument.<br /> I&#8217;m not allowed to reuse a variable to<br /> point to an List and a Vector, even if I&#8217;m going to call a method<br /> with the same name on both.
  </p>
  
  <p>
    And then to really piss in my chips, 90% of the Collections API<br /> which lets me store these objects and actually *do* something with them<br /> only lets me pull them out as Object.
  </p>
  
  <p>
    I HAVE TO CAST THEM. So when I get an object &#8216;dynamically&#8217; &#8211; via RMI or<br /> out of a Vector or whatever, I have to know what it is in advance.<br /> The poor frigging object doesn&#8217;t know (no, don&#8217;t get me started on the<br /> abomination that is the reflection API, people are already starting to<br /> stare).
  </p>
  
  <p>
    And this is a dynamic language. KERR-RIST.
  </p>
  
  <p>
    None of this matters of course, because &#8220;it&#8217;s better than C++&#8221;.<br /> And IT managers think the Sun shines out of its ass.
  </p>
  
  <p>
    Java is the f*cking COBOL of the 90s and<br /> future generations of geeks are going to fly back from Mars to piss on<br /> our graves for inflicting it on them.
  </p>
  
  <p>
    > Unfortunately. I can do system programming and command-line<br /> > apps with Java.
  </p>
  
  <p>
    Sure. If you don&#8217;t mind a fifteen second delay while the VM drags itself<br /> up from the bottom of the sea each time you run a command line app.
  </p>
  
  <p>
    Or should that &#8216;.&#8217; be a &#8216;,&#8217; ?
  </p>

ու տենց

պիտակներ՝ գոու ծրագրավորման լեզու  ինֆերնո  լիմբո  ծրագրավորման լեզուներ  ծրագրաւորում  հետազօտութիւն  պլան9  Ջավա  Սի  տեքնոլոգիաներ  տեղեկատուական տեքնոլոգիաներ