Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

Ruby

Name: Anonymous 2007-08-18 18:30 ID:qt61k3Q7

I'm a Python fag, though not a fanboy. I wanted to check Ruby out because of this one feature: no statements. Statements sound retarded to me, and I don't like them in Python. Since Ruby has a similar feature set to Python, I thought it would be worth checking out. However, I've been mildly disgusted by Ruby.

- Why the fuck are parenthesis optional? This is the same shit as Perl! It's insane and error-prone. Parenthesis are always almost usually probably expectedly optional, right? Only faggots can't take parenthesis.

- What's this 2-Lisp-like retardation?

abc = 1
def abc
 2
end

abc #= 1
abc() #= 2


My goodness, fuck this shit! It's the single worst thing in Common Lisp, one that makes my stomach ache because of its COBOL-caliber braindamagedness, irregularity and incorrectness. This combined with the fact parenthesis are optional makes me want to kill Matsumoto. He irritates me more than Guido van Rossum.

- This accessor stupidity is retarded, a fugly hack, and probably slow as fuck. A method called "property=" won't fix this all-private stupidity, and it's also a possible origin of the 2-Lisp-like bullshit so you can define property().

- alias? private? Don't bloat it! Want an alias? Use a stupid reference. Want something private? Don't document it outside your code, or write "DON'T CALL THIS" in the documentation.

- Blocks are an ugly syntax for lambdas (though better than Python's, if only because statements are expressions).

- Now I'm really being a bitch, but I don't really like this "responds_to?", "send", etc. OO wankery. I'm not at all excited by OO; it's useful, but there's no need to invent funny names and metaphores for what has always been simple: functions. Everything, a function. That's how I like it. From the "Ruby From Other Languages page", "Message passing, not function calls": the guy who wrote that is stupid. Message passing is a snob OO wanker way to say function call. And no, I don't talk to my lists, though I may want to execute their join property which happens to be a function.

Can anybody explain why all this faggotry?

The other things I didn't care about (such as the definition of falsehood, though I suppose Python's would be more useful) or liked (such as better support for symbols or mutable strings).

Name: Anonymous 2007-08-18 18:33 ID:RDTQK9Sc

Ruby - Perl = Python

Name: Anonymous 2007-08-18 18:34 ID:2WEHNJj3

>>2

Ruby - 1 = Python / Perl

Hmmmm... your move.

Name: Anonymous 2007-08-18 18:38 ID:q6hYUIPp

>>3
You mean (Ruby - Perl) / Perl = Python / Perl, right?

Name: Anonymous 2007-08-18 18:57 ID:qt61k3Q7

I'm OP. From the Ruby FAQ, section 6: Syntax:

Ruby works hard to distinguish method calls from operators, and variable names from method names. Unfortunately, there’s no way it can get it right all the time. In this case, "a +b" is parsed as "a(+b)". Remove the space to the left of "+" or add a space to the right of "+", and it will be parsed as an addition.

Why can't I pass a hash literal to a method: p {}?

|| combines terms within an expression. However or is used to combine expressions in conditionals.

$:, $!, $_, etc.

FAILURE OF TITANIC PROPORTIONS. Not even PHP is this stupid.

Name: Anonymous 2007-08-18 19:09 ID:dtql+lDY

For me, Python actually filled the ecological niche formerly populated by Ruby about a year ago. You gave many of the reasons. Also, it looks ugly even when the code itself is well-written. And it is slow as fuck.

Name: Anonymous 2007-08-18 19:09 ID:92wb33wu

Ruby is mangled, slow and unsafe but dynamic and expressive.
Use Ruby over other languages if:
a) FUCK,
b) I
c) CAN'T THINK OF A REASON.

Name: Anonymous 2007-08-18 19:12 ID:92wb33wu

>>7 here. I'd still use it, just for lulz and to impress any potential weeaboos.


>> 8 lern 2 spell newfag

Name: Anonymous 2007-08-18 19:19 ID:92wb33wu

>>7 here.
I thought of a reason.
Use Ruby if the 'this' keyword in Python gets on your tits.

Name: Anonymous 2007-08-18 20:09 ID:2GADbf/O

Ruby took a bunch of shit from a bunch of different languages, put it in a blender, and set the blender on fire.

Name: Anonymous 2007-08-18 20:11 ID:q6hYUIPp

Who gives a damn about having a special namespace for functions? How often do you want to ((x) e) where x returns a function? And is there even a logical way to write something similar with Ruby's syntax?

Name: Anonymous 2007-08-18 20:38 ID:jpnguPdl

>>9

Guido: Huhuhuhuhuh, wouldn't it be totally awesome if we made a talking tomato?
Capitan Object: But that would mess up the inheritance tree! Only humans can talk and it makes no sense for *every* tomato to be able to talk. A new class inheriting tomato + mixin/multiple inheritance/rebinding methods would be too much effort for one retarded talking tomato.
Guido: Luckily, I'm awesome:

jimmy_the_talking_tomato = Tomato()
jimmy_the_talking_tomato.to_say = "Hi Kids!"
Human.speak.im_func(jimmy_the_talking_tomato, tones_of_voice["enthusiastic"])

Captain Object: Once again, the city is saved.

Name: Anonymous 2007-08-18 22:09 ID:HTzbbvw8

Wow, thank god I'm not the only one that thinks Ruby is complete shit.

Python rules though; it's a lot faster than Ruby, doesn't have RETARDED AS FUCK Perl cancer syntax, no ZOMG EVERYTHING IS AN OBJECT WOOOOOOOOOOO FAP FAP FAP, etc

I like Python.

Name: Anonymous 2007-08-19 3:29 ID:1ZKUGd13

Only faggots can't take parenthesis.

ONE WORD, FORCED INDENTATION OF CODE, THERAD OVER

IF U THUNK U R ROFF USE LIASP

Name: Anonymous 2007-08-19 5:21 ID:GLAjNoBe

>>5
Ruby works hard to distinguish method calls from operators, and variable names from method names. Unfortunately, there’s no way it can get it right all the time. In this case, "a +b" is parsed as "a(+b)". Remove the space to the left of "+" or add a space to the right of "+", and it will be parsed as an addition.
ONE WORD, THE FORCED WHITESPACE OF CODE, THREAD OVER

Name: Anonymous 2007-08-19 6:36 ID:1FVgKxhE


>>5
Ruby works hard to distinguish method calls from operators, and variable names from method names. Unfortunately, there’s no way it can get it right all the time. In this case, "a +b" is parsed as "a(+b)". Remove the space to the left of "+" or add a space to the right of "+", and it will be parsed as an addition

Experimentation seems to show this.. doesn't happen anyway.

irb(main):003:0> a = 1
=> 1
irb(main):004:0> b = 3
=> 3
irb(main):005:0> a +b
=> 4
irb(main):006:0> def a(x)
irb(main):007:1>   x**3
irb(main):008:1> end
=> nil
irb(main):009:0> a + b
=> 4
irb(main):010:0> a +b
=> 4
irb(main):011:0> a (+b)
=> 27
irb(main):012:0> a b
=> 27
irb(main):013:0>

Name: Anonymous 2007-08-19 6:57 ID:fqbGyG9r

>>16

It depends on what you're working with.

irb(main):001:0> x = Struct.new("Foo", :y).new
=> #<struct Struct::Foo y=nil>
irb(main):002:0> x.y = 10
=> 10
irb(main):003:0> x.y * 10
=> 100
irb(main):004:0> x.y *10
ArgumentError: wrong number of arguments (1 for 0)
        from (irb):4:in `y'
        from (irb):4

Name: Anonymous 2007-08-19 7:04 ID:1FVgKxhE

>>17
My mistake.

Name: Anonymous 2007-08-19 7:20 ID:K5BK2QTZ

>>14
I much prefer GNU Roff.

Name: Anonymous 2007-08-19 7:24 ID:i7WTFykm

>>9
I don't mind self; in fact, I think it makes things clearer. Ruby has it too, only that it looks Perlish. @. And sometimes you still have to use self, making it irregular and fugly.

>>10
Lol

>>11
Who gives a damn about having a special namespace for functions?
I do, because I want true, correct, complete first-class functions that behave exactly like any other value. I'm not as worried as ((x) y) (which I still do more often than you would believe) as I am about def f ...; f = 2. The later should work as expected. If it doesn't, functions aren't regular values, but some magic shit, and not only that, but you're in for an assload of Perlish disambiguation shit since parens are optional.

ONE WORD, THE OPTIONAL PARENS, THREAD OVER

Name: Anonymous 2007-08-19 17:46 ID:i/DgiYAE

I've concluded that both Python and Ruby suck, just in different ways.

It's too bad that most common languages suck even more. :/

Also: Matz seems to think that closures, objects and procs should be different. Righto.

Name: Anonymous 2007-08-19 18:15 ID:X/EDMqMf

>>21
I've concluded that every single language ever sucks, just in different ways.

Name: Anonymous 2007-08-19 18:38 ID:emzk4nyQ

>>22

I thought that too, but then I learned Lojban. It's made of FUCK and YEAH.

It's also the only spoken language so perfect it has an official YACC syntax definition.

Name: Anonymous 2007-08-19 19:04 ID:i7WTFykm

closures, objects and procs should be different.
Fale

>>22
All languages suck, that's true; I'm trying to find the one that sucks less for the things I want to do and the way I want to do them.

>>23
The principal sources of its basic vocabularly was the (at the time) six most widely-spoken languages: Arabic, Chinese, English, Hindi, Russian, and Spanish
Fail. Like (d)Esperanto. If you mix red, green and blue you get a shade of gray, which resembles nothing and is far from everything. Mixing just the three most widely spoken languages today - English, Mandarin and Spanish would already be messy. It only makes sense to mix closely related languages, such as English and Spanish alone, which would at least look similar to a good part of the world (also including the French, Italian, Portuguese, Brazilian and Romanian), and even so, a fabricated language is stupid. The world has a problem: too many languages. The fix is not about introducing yet a new one to learn. Nobody will.

Name: Anonymous 2007-08-20 6:30 ID:Ssb8ZxS8

>>24
Lojban wasn't made to be a universal language like Esperanto.  In fact, Lojban is the Haskell of constructed languages.
And mixing six most widely-spoken languages was not about their stupid grammar but merely taking roots of words so computer could generate a vocabulary.

Name: Anonymous 2007-08-20 6:39 ID:uHBseZ3t

>>23
Yeah, but its library support and documentation is severely lacking.

>>24
All languages suck, that's true; I'm trying to find the one that sucks less for the things I want to do and the way I want to do them.
Good luck, I'm in the same boat. Right now, Python fits the bill pretty well. There are many things I don't like about Python, but it has gained some serious inertia, so there are a lot of pretty good libraries available for it. Purely language-wise, Haskell is my current favourite.

Name: Anonymous 2007-08-20 7:33 ID:jC1SLYPo

Without Rails, Ruby would be nothing.

It's the Web 2.0 fad of programming.

Name: Anonymous 2007-08-20 8:19 ID:uDY6H0jt

And mixing six most widely-spoken languages was not about their stupid grammar but merely taking roots of words
I wasn't talking about their stupid grammar, just roots of words. If you take roots from fucking six languages of such different families, you'll get nothing.

Name: Anonymous 2007-08-20 11:20 ID:FMSjucbY

don't like the language? don't fucking use it. like the language for certain tasks? use it. don't like it for others? use other languages for those tasks.

Name: Anonymous 2007-08-20 12:38 ID:IeKv50hj

>>29
Captain Obvious, is that you?

Name: CAPTAIN TREMENDOUS 2007-08-20 12:58 ID:4vUHq/ja

>>30
Call me CAPTAIN TREMENDOUS.

Name: Anonymous 2007-08-21 9:01 ID:fNg0soJs

>>31
Tremendous.... wang?

Name: Anonymous 2009-03-06 11:44

The default value of every operation code   and assigned his   own drum addresses   every instruction he   wrote could also   team up with   it as a   big bonfire where.

Name: Anonymous 2009-08-17 0:07

Lain.

Don't change these.
Name: Email:
Entire Thread Thread List