Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Too many languages

Name: Anonymous 2014-03-09 9:44

There are thousands of programming languages.

The purpose of a programming language is to express programs. The
purpose of learning programming languages is to build up a toolbox for
reasoning about and synthesizing programs in any one given language.

There are diminishing returns on learning programming languages, and
time is scarce.

Therefore one must select between programming languages to study.

A good selection of languages has both
+ breadth
  + satisfies a number of real world economic needs.
+ focus
  + exploits similarity between languages and incremental learning.
  + some unifying basis

A good member of a particular selection meets a number of the
following criteria:
+ Satisfies one particular school of thought on programming languages.
+ Significant difference from predecessors
+ Significant influence on successors
+ Economically significant
+ Advanced i.e. no direct, established and proven heir.
+ A good language.
  + Easy to express programs with
  + Easy to read programs expressed with
  + Easy to reason about programms expressed with

No one of these criteria are sufficient or even necessary conditions.

A bad member satisfies the opposite criteria.

Name: Anonymous 2014-03-16 16:23

>>102
Virtual memory mapping is ``free'' in modern CPUs but imagine what it would be like if the OS had to swap out to disk all memory used by the old process and swap in all memory used by the new process on every task switch. Old OSes had things called "overlays" and "time sharing" that did just that.
Suppose this new CPU makes GC as fast as stack allocation and bounds checking as fast as virtual memory protection checking. You know how you get an exception when you access a null pointer? Hardware could just as easily be able to check whenever you access outside an array. The programmer doesn't need any extra code and not even a virus or low-level code would be able to break this protection, just like you can't write to kernel memory. That's the difference between doing it in software and doing it in hardware.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List