Of course there is only one proper language for "learning algorithms" and that is MIX. All others are just interpreters of it to make some parts easier.

Having said that you now must realize its making parts easier that distinguishs one language from another. When learning sometimes it is important to understand what the fundamentals really are rather than them being hidden from you by a language structure. I can build binary trees and linked lists via perls dynamic hash and array allocations. Doing it in assembler(C) with mallocs and hard pointers and getting it to work is another matter, then dealing with the memory fragmentation as they are released is a whole new can of worms. Sometimes it helps to see the underlying mess to truly appreciate what perl does for you under the covers.

Perl will work as well as just about any other general language for learning about algorithms at the macro level. It has features that you already recognized that can make some things easier. But to really learn the nuts and bolts nothing beats ASM, but dayum its a pain in ASM too. You dont have to understand how a mechanical watch works to wear a rolex, but to truly appreciate one you have to understand how difficult it is to create precision gears.


In reply to Re: Learning Algorithms using Perl. by huck
in thread Learning Algorithms using Perl. by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.