logoalt Hacker News

bobajefftoday at 12:49 PM3 repliesview on HN

I know there are people that are used to the indention based scope but that has a real problem when it comes to copy/pasting code. I think a alternative that still looks pretty clean is to do like Ruby and Julia and have the function/class imply begin and have a literal 'end'.


Replies

nchammastoday at 2:53 PM

I don't understand this concern. How exactly are you copy/pasting code such that significant indentation causes "real problems"?

I remember the creators of Go explained [1] that they chose explicit block delimiters because of problems they saw when embedding snippets of Python in other languages. But this seems like a very niche kind of problem.

[1]: https://go.dev/talks/2012/splash.article#:~:text=we%20have%2...

show 1 reply
mohragktoday at 1:47 PM

Fun fact, in Python, the indentation is checked per block. So, in the outer block, indentation can be 2 spaces, while in the inner block, the indentation is 3 spaces. The only prerequisite is that the indentation in the block is the same.

This, to circumvent copy/paste issues.

xigoitoday at 1:12 PM

If your editor messes up indentation when copy-pasting, you need a better editor.

show 1 reply