Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re^3: No Hard Tabs in Code

by SuicideJunkie (Priest)
on Jul 05, 2010 at 16:17 UTC ( #848083=note: print w/ replies, xml ) Need Help??


in reply to Re^2: No Hard Tabs in Code
in thread No Hard Tabs in Code

Specifically, using tabs to align defeats the purpose of using tabs. (You are no longer free to choose your preferred indentation distance)

Using spaces to indent, on the other hand, is a bit like having a fixed width web page. It is the wrong size for the majority of people, but it is at least consistent.


In a perfect world, everything would show tabs at your preferred width, people would not use tabs for alignment and everybody would see code in their own preferred style independent of the original coder. Indentation would be distinct from code. There could even be a way to indicate which curly brackets qualify for an optional linebreak plus indentation.

But display/edit programs don't show properly, and people don't write properly. This is why we can't have nice things :P


PS: Actually, this seems a lot like web pages... using tabs to align is as bad as using a 20% width object to align text. Just Doesn't Work.

Using spaces everywhere is like perldoc's fixed width syndrome. Running a script to convert the indentation (bigger or smaller) is like having to write and apply a style override for the website. Makes it less convenient and uglier than it should be, but also more useful than the original state.


Comment on Re^3: No Hard Tabs in Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://848083]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (5)
As of 2014-07-12 00:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (238 votes), past polls