3 ms·
In Ruby, everything is an object too (actually even more so than in Java) and in dynamically typed languages, generic type parameters of course don't exist, so
by Tainnor 5y ago
In Ruby, everything is an object too (actually even more so than in Java) and in dynamically typed languages, generic type parameters of course don't exist, so I don't understand how those things matter to Clojure or (J)Ruby. Garbage collection pauses may be slow on the JVM, but Java is still miles faster than Ruby (idk about clojure).
- swlkr 5y agoclojure on the jvm has much better performance than ruby, but for my small side projects, that doesn’t matter. I guess I was trying to describe the frustration of switching languages and ecosystems while also trying to ship, thought I could do it, but I couldn’t. I suppose I would have had a much better time and stayed in C-land (and gotten much better performance) if I had tried golang instead of clojure.
- Tainnor 5y agoIf you have deadlines and can't afford being "bad" at something for a while then, yes, learning new technologies or ecosystems might not be a wise choice. I think that's independent of what those technologies are. I switched to the JVM because I was annoyed enough at the things I had to deal with in Ruby that learning how to do things in a new way was worth it for me in the long run. > I suppose I would have had a much better time and stayed in C-land (and gotten much better performance) if I had tried golang instead of clojure. But Go is a completely different language than Clojure? By what criterion are you deciding which language to focus on? Mostly I'd think that people who choose Clojure do so because they want to use a homoiconic, dynamically typed, functional programming language and not something that looks a lot like a cleaned-up C.
- swlkr 5y agoThese days I care less about how the language looks and more about the development/deployment experience, and how much memory it’s going to take on a VPS, since that’s the primary thing driving VPS costs. Ruby (and rails) for web applications is very hard to beat ergonomically. Go also feels this way to me, the development experience is very simple, deployment is even easier than ruby/rack (assuming no docker), and you get the added bonus of using a lot less memory on the server.
- oriolid 5y agoTo be honest, I don't really understand Ruby either. It's like combination of performance of Python, compatibility of C, transparency of any mystery dependency + build system and yet another syntax on top of it.
- cyberpunk 5y agoRuby is awesome, but it's insanely powerful. For example: I mean, you can monkeypatch anything (including _Object_) at runtime. You can use this to make 1 + 1 = 3, if you desired, or to add a method to all instances of any class currently instantiated. Want your database to respond to .fuckoff(), no problem.. This kind of stuff is also how rspec (used to?) actually run tests. It's cool, but also pretty insane. irb(main):001:0> class Object irb(main):002:1> def fuckoff irb(main):003:2> "lol" irb(main):004:2> end irb(main):005:1> end => :fuckoff irb(main):006:0> 5.fuckoff => "lol" irb(main):007:0> "Hello World".fuckoff => "lol" irb(main):008:0>
- ilyash 5y agoNext Generation Shell: "hold my beer" F fuckoff(x) "lol" echo(5.fuckoff()) echo("Hello World".fuckoff())
- Tainnor 5y agoYes, the nice thing is that you can use metaprogramming to create really powerful and readable DSLs. The bad thing is that this is often abused horribly, I blame the Rails ecosystem with its "just add this gem to the Gemfile and it will magically change your application" attitude.
- smrtinsert 5y agoToday's java killer is tomorrow's bad practice
- oriolid 5y ago"I have altered the API, pray that I don't alter it any further"?