Live data from Hacker News

Ruby Is The Future

enfranchisedmind.com

11–20 of 56 posts

Re: Ruby Is The Future

#11
post #8
post #4

Earlier quoted context omitted.

As noted in Werner Schuster's article, many languages (such as C# or Scala) do support type-safe, non-ambiguous, non-conflicting extension of existing classes, demonstrating that extension of existing classes can be safely implemented and does not require the use of dangerous monkey-patching.

dealing with the type system in scala can be a pain and is a hit to productivity in the early stages. The question is if the hit in the early stages leads to more productivity in the later stages. I'm not convinced that it does. I've done a lot of ruby, and I've had monkey patching bite me a few times. However, fixing the problem was never that hard (two days max) and is clearly overshadowed by the productivity gaine…

How can one effectively argue against an entirely subjective judgment of difficulty in terms of dealing with a type system?

Anecdotally, I find that leveraging functional language programming features coupled with type inference and polymorphism leads to considerable productivity gains as code correctness can be ensured through judicious use of types -- without requiring extensive testing or programmer effort -- while excess verbosity can be eliminated through the use of FP features such as type-safe anonymous functions, currying, etc.

Re: Ruby Is The Future

#12
post #8

Earlier quoted context omitted.

dealing with the type system in scala can be a pain and is a hit to productivity in the early stages. The question is if the hit in the early stages leads to more productivity in the later stages. I'm not convinced that it does. I've done a lot of ruby, and I've had monkey patching bite me a few times. However, fixing the problem was never that hard (two days max) and is clearly overshadowed by the productivity gaine…

How can one effectively argue against an entirely subjective judgment of difficulty in terms of dealing with a type system? Anecdotally, I find that leveraging functional language programming features coupled with type inference and polymorphism leads to considerable productivity gains as code correctness can be ensured through judicious use of types -- without requiring extensive testing or programmer effort -- whil…

How do you deal with excess verbosity in C#? I know this is a separate argument from the monkey patching issue but for me the conciseness and elegance of the Ruby syntax versus C# is the primary reason to choose Ruby.

Re: Ruby Is The Future

#13
post #9
post #6

Earlier quoted context omitted.

Why? Because of monkey patching, syntax, performance, the community or some other reason such as you prefer Python or have an intuitive, ineffable and unexpressable disklike of the language or because Matz is from Japan and they bombed Pearl Harbor?

I think (and I mostly code Ruby these days) it's not least because of comments like this.

Out of curiosity, what has your experience been like? Do you have any major gripes with the language or are you still on a Ruby honeymoon?

Re: Ruby Is The Future

#14
post #12

Earlier quoted context omitted.

How can one effectively argue against an entirely subjective judgment of difficulty in terms of dealing with a type system? Anecdotally, I find that leveraging functional language programming features coupled with type inference and polymorphism leads to considerable productivity gains as code correctness can be ensured through judicious use of types -- without requiring extensive testing or programmer effort -- whil…

How do you deal with excess verbosity in C#? I know this is a separate argument from the monkey patching issue but for me the conciseness and elegance of the Ruby syntax versus C# is the primary reason to choose Ruby.

Hopefully a user of C# will chime in -- I've spent very little time with it, and only recently evaluated C#'s extension mechanism for the purpose of comparing it against other language's implementations.

That said, elegant and concise syntax does not require eschewing an internally consistent, fully specified type system -- the two are not incompatible, as demonstrated (subjectively) -- by many existing FP languages. I argue that elegance/conciseness requires either FP language features and advanced type system, or abandonment of rigorous typing.

Re: Ruby Is The Future

#15
post #12

Earlier quoted context omitted.

How can one effectively argue against an entirely subjective judgment of difficulty in terms of dealing with a type system? Anecdotally, I find that leveraging functional language programming features coupled with type inference and polymorphism leads to considerable productivity gains as code correctness can be ensured through judicious use of types -- without requiring extensive testing or programmer effort -- whil…

How do you deal with excess verbosity in C#? I know this is a separate argument from the monkey patching issue but for me the conciseness and elegance of the Ruby syntax versus C# is the primary reason to choose Ruby.

Which version of C# are you thinking of?

In C# 3, the verbosity level is much less than in C# 2, where it's slightly less than C# 1.

I don't see where Ruby syntax is particularly more concise than C# 3's.

Well, let me clarify "particularly". I don't find myself feeling like I'm suffering under C#'s syntax, relative to Haskell's. It has about the same amount of syntactic overhead: writing types for method parameters, and when defining data structures. Occasionally I have to explicitly write a type parameter to a function.

Re: Ruby Is The Future

#16
post #2

The author claims that monkey-patching private methods to expose them publicly is representative of Ruby's beauty, and specifically: "... later upgrades to the library don’t need to be re-fixed: the one-time patch will automatically get re-applied by application code automatically!" Anyone who fails to realize how monkey-patching can and will break both subtly and catastrophically across library upgrades has no busin…

Yeah I looked at the headline and the url next to it and did a doubletake. When I see enfranchisedmind.com I immediately think: OCaml!

Re: Ruby Is The Future

#17
post #6
post #5

Just two words: "Hopefully not..."

Why? Because of monkey patching, syntax, performance, the community or some other reason such as you prefer Python or have an intuitive, ineffable and unexpressable disklike of the language or because Matz is from Japan and they bombed Pearl Harbor?

Ruby isn't a very good Smalltalk, nor is it a good Lisp.

Re: Ruby Is The Future

#18
post #13
post #9

Earlier quoted context omitted.

I think (and I mostly code Ruby these days) it's not least because of comments like this.

Out of curiosity, what has your experience been like? Do you have any major gripes with the language or are you still on a Ruby honeymoon?

I love Ruby. I love that code can be so short and yet easily readable. It might be slower and perhaps more memory-hungry than other languages, but for my needs that's usually not an issue.

What I do miss are good, well documented, stable libraries. For example, I currently process RSS/Atom feeds with FeedTools, whose own creator says he's tired of maintaining (I totally understand him and am extremely thankful for the time he put into it). I assume if there were more people coding Ruby, there would be a better chance someone would step up and take his place. So, having a community that is more welcoming to newcomers would eventually benefit us all.

By "open to newcomers" I don't mean that Ruby-celebs should stop posting snarky comments at each other in their blogs. This is pretty negilible. I mean stuff like having better documentation, for example, online, free, in googleable format (rather than screencasts or print books). IMHO PHP3 annotated online docs back in 1999 were significantly more usable than what Rails has to offer now.

Re: Ruby Is The Future

#19
post #13
post #9

Earlier quoted context omitted.

I think (and I mostly code Ruby these days) it's not least because of comments like this.

Out of curiosity, what has your experience been like? Do you have any major gripes with the language or are you still on a Ruby honeymoon?

I'm not the parent but I'll reply anyway.

I have very few issues with Ruby as a language, in general it let's me get from thought to working code quicker than any other language I've used. Honestly the largest issues I've run into with Ruby typically deal with people trying to be too clever.

Ruby certainly provides a lot of ways for people who want to look incredibly clever to hang themselves and anyone using their code. I typically avoid libraries or frameworks where clever code is the norm (I'm looking at you Rails), and because of this I tend not to have too many problems.

It's certainly not perfect, and I've been frustrated by bad error messages, stupid type system mistakes, etc. But I've found that those issues simply replace issues in other languages.

I still feel that Ruby gets me from Thought to Code quicker, and for the kind of projects I typically do, that's worth dodging a couple of warts.

Re: Ruby Is The Future

#20
post #18
post #13

Earlier quoted context omitted.

Out of curiosity, what has your experience been like? Do you have any major gripes with the language or are you still on a Ruby honeymoon?

I love Ruby. I love that code can be so short and yet easily readable. It might be slower and perhaps more memory-hungry than other languages, but for my needs that's usually not an issue. What I do miss are good, well documented , stable libraries. For example, I currently process RSS/Atom feeds with FeedTools, whose own creator says he's tired of maintaining (I totally understand him and am extremely thankful for t…

->"I assume if there were more people coding Ruby, there would be a better chance someone would step up and take his place."

Is it more the fact that the community is small or that fewer people share their code than in the Python community? Just wondering.

Post reply on HN