41 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
Object Oriented programming considered harmful
 | 
						|
==============================================
 | 
						|
 | 
						|
"*object-oriented design is the roman numerals of computing.*" -- Rob Pike
 | 
						|
 | 
						|
OO is the "structured programming" snake oil of the 90'
 | 
						|
 | 
						|
Useful at times, but hardly the "end all" programing paradigm some like to make
 | 
						|
out of it.
 | 
						|
 | 
						|
And, at least in it's most popular forms, it's often more harmful than helpful.
 | 
						|
 | 
						|
Inhiretance is more trouble than it's worth. Under the doubtful deguise of the
 | 
						|
holy "code reuse" an insane amount of gratuitous complexity is added to our
 | 
						|
enviroment, which makes necesary industrial cuantities of syntactical sugar to
 | 
						|
make the ensuing mess minimally manageable...
 | 
						|
 | 
						|
People often forgets the 3 golden rules of programing as estated by Pike and
 | 
						|
Kernighan: Simplicity, Clarity, Generality.
 | 
						|
 | 
						|
Limbo has all the adventages of Java(cross platform, high level) without the
 | 
						|
disadventages, and a much cleaner and simple "object model", not to mention the
 | 
						|
most wonderful "threading" framework(besides the Alef/Plan9's-libthread which
 | 
						|
is based in the same ideas).
 | 
						|
 | 
						|
Too bad AT&T/Lucent fucked it up, but thanfully it's now truly Open/Free(unlike
 | 
						|
Java), go download it if you haven't tried it yet:
 | 
						|
http://cgi.www.vitanuova.com/cgi-bin/www.vitanuova.com/idown4e.pl
 | 
						|
 | 
						|
An introdution by Brian W. Kernighan:
 | 
						|
http://www.vitanuova.com/inferno/papers/descent.html
 | 
						|
 | 
						|
And other by Dennis M. Ritchie:
 | 
						|
http://www.vitanuova.com/inferno/papers/limbo.html
 | 
						|
 | 
						|
I can deal with Python and Scheme if I have to though ;)
 | 
						|
 | 
						|
And there is always portable asm... er I mean C.
 | 
						|
 | 
						|
But Java(and other copies of the same stuff), *never again*, there are some
 | 
						|
things in life that once are more than enough.
 |