Hacker News new | ask | show | jobs
by gress 4387 days ago
Swift is not anything like JavaScript. And unfortunately ruby isn't powerful enough to do what Apple needs, but I agree that it would be nice if they could have chosen something with more syntactic elegance, although I'd have preferred it if they'd just gone in the direction of Smalltalk.

I presume you haven't programmed lisp, because although there is very little syntax to memorize, there are a huge number of functions.

3 comments

I can't say that Swift is like JavaScript, my technical knowledge is not enough to have an opinion about it. I say that looks like, or using the right terms, has as much syntactic elegance as JavaScript.

I programmed a little bit in Autolisp (lisp dialect for AutoCAD scripting) as amateur and what I liked about it is that everything works the same way (even if you don't know all functions is not a big deal), it's just a list. JavaScript looks like a mixture of paradigms and syntax, trying to please everybody. When I don't program in it often I forget most of the stuff. Probably it needs to be like this but it doesn't look like an optimal solution.

> And unfortunately ruby isn't powerful enough to do what Apple needs

I'd say on the power spectrum of programming languages, ruby is MORE powerful than swift.

There are so many things you can do in ruby that you can't do in swift, especially along the lines of reflection. The only stuff swift has that ruby doesn't comes in way of restrictions eg. typing.

>And unfortunately ruby isn't powerful enough to do what Apple needs

If this was the main and only reason such that removing this limit Apple would have used Ruby, then why in your opinion didn't Apple try to implement themself something like RubyMotion (which was made by a company a thousands orders of magnitute smaller)?

RubyMotion author used to work for Apple. When Apple shut down their MacRuby efforts, he left Apple and started his own company to continue the work.

Doesn't prove anything about Ruby's suitability, though.