Hacker News new | ask | show | jobs
by epalmer 3886 days ago
I guess for me I don't need nor want JVM + JavaScript VM interoperability. My gut says this limits what can be done. I would rather have just one or the other.

Maybe others feel differently.

3 comments

Making technology decisions with your gut is tricky. What if you happen to be hungry? The signalling will be all confused.
This language looks pretty cool, but I do agree with your gut. The FAQ says:

"Note that not all Ceylon modules are available for both platforms. A module might be cross-platform, it might by JVM-only, or it might be JavaScript-only. Of course, ceylon.language is completely cross-platform."

Having some modules for JVM and some are for JavaScript-only would make things a little bit more confusing than if the language picked one. I haven't decided if this is a very significant thing or not.

Well where there is a big difference between the underlying capabilities of the platform, differences are unavoidable.

I mean, examples of things that are cross-platform in Ceylon: collections, localization, promises, regexes, HTML construction, logging, testing, dates/times.

Examples of things that are platform specific: I/O, database access, filesystem access, distributed transactions, the HTTP server.

That's pretty reasonable and natural, isn't it?

The date/time cross-platformness is a big deal for business-type applications, at the very least. You tend to transfer/use a lot of dates/timestamps/what-have-you in that type of application. (This is a constant source of pain for me in scala.js.)
ceylon.locale is also shaping up to be really useful. Localization in JS is just terrible.
Yes, that's another of my pet peeves with scala.js since it basically splits your world into two around formatting of dates/time/currency/etc. (Things may have changed recently, but it was sorely lacking up until a few months ago.)
Well, y'know, you could go with your gut - or you could actually try it out for yourself!

I think you'll decide your gut was wrong, but there's only one way to be sure.