Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>You will understand the decisions behind language design and garner a better overall understanding of the compromises made between readability, performance, and reliability. </p> <p>Your familiarity with concepts such as recursion, closures, garbage collection, reference management, typing, data structures <strong>and how these things actually work</strong> will increase. Most programmers will utilize resources and language features better.</p> <p>Similar to the way we learn new ways to code solutions when we use other languages, when we write our own languages, we explore new ways to create solutions. See <a href="http://en.wikipedia.org/wiki/Metaprogramming" rel="noreferrer">Metaprogramming</a>. Contrary to the what the question suggests, <a href="http://en.wikipedia.org/wiki/Domain-specific_language" rel="noreferrer">Domain Specific Languages</a> are used in many environments. </p> <p>If you're writing a compiler, you'll learn more about how computers work than you ever did before. (<em>Depending on your goal,</em> perhaps more than you intended to learn)</p> <p>When I wrote my own sort routines in school, even re-implementations of good ones, it really drove home some of the <a href="https://web.archive.org/web/20090624205111/http://linux.wku.edu/~lamonml/algor/sort/quick.html" rel="noreferrer">weaknesses</a> of some of the algorithms.</p> <p><em>In short, there's an order of magnitude of difference in a programmer who knows how to <strong>use</strong> tools, and a programmer who knows how to <strong>make</strong> tools.</em></p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload