title: Why is preprocessor usage less common in languages other than C/C++/ObjC?
body: <p>I've been a Java and VB.Net programmer for about 4 years and a C# programmer for about 6 months.  I've also used a bunch of dynamic languages like Perl, Python, PHP, and JavaScript.</p>
  
  <p>I've never had a need for a preprocessor.</p>
  
  <p>My question is: why do you see such extensive use of preprocessors in C, C++, and Objective-C but rarely (or never) see it in languages like Java, C#, or Scala?</p>