Live data from Hacker News

Imba: A new programming language for web apps

imba.io

81–90 of 131 posts

Re: Imba: A new programming language for web apps

#83
post #41
post #25

All these languages du jour should go out of their way to answer the question: "why bother?". 10x faster than react. OK cool. Except unless it has something like react native it's irrelevant if you might want to write an app in future with any sort of code reuse since you'll be tied to the web (unless you want the inevitable world-of-pain of trying to integrate this preprocessor into your xcode/android builds...).

Because building something is fun and building a programming language is a lot of fun.

Building programming languages just for the heck of it is highly underrated, I think every programmer should at least try implementing a few languages of different paradigms.

Implementing a stack-based language made me write more readable point-free Haskell. Implementing a text-processing-oriented language taught me a ton about Unicode and Korean. Both are fun to work on.

Re: Imba: A new programming language for web apps

#84
post #67

Doesn't solve any of the big problems with large scale javascript apps: 1) Lack of type checking leading to exploding runtime exceptions 2) Object inheritance/prototype is weird and counter intuitive to other OO languages 3) Lack of proper encapsulation leading to spaghetti code when combined with #1 I suspect we are in for a new era of languages targeting web assembly to be used as webapp frontends and backends but…

Well put. I've been keeping an eye on elm (elm-lang.org) for a bit to see if it stands the test of enough time for me to decide to try it out. It, at least as far as I've seen, tries to address these concerns. But who knows, maybe it's just more noise.

FWIW, having tried Elm, I was very impressed with:

1) Type checking... yay! 2) Awesome compiler error messages that help fix #1 3) Purely functional language with immutable data structures helping performance 4) Reasonably easy and well thought out encapsulation mechanism via modules

On the other hand I was put off by:

1) Very opinionated about design patterns with a react style gui framework 2) Signals are hard to explain and don't easily map to more familiar patterns 3) Not much (if any?) server side development

I think Elm would really benefit from something like built-in support for Qt-style signals/slots that are much easier for newcomers to grok and a much less opinionated focus on the one-true-react-style-design-pattern

But I could very well have missed something. Just my two cents.

Re: Imba: A new programming language for web apps

#85
post #63

Earlier quoted context omitted.

Because 10 years of experience is not the same thing as one year of experience repeated 10 times.

I could not agree more! To me it seems that most of what is happening today is an exhausting chase by some developers to fill their CV / Resume with the latest buzz word technology, resulting in a shallow understanding of deep fundamental concepts and years of experience on a CV that means absolutely nothing.

As a college senior, this has been my problem—constant context switching to "keep updated". It really is a problem. My resolution for this year is to just focus and get good at at most two languages and their ecosystems.

Re: Imba: A new programming language for web apps

#86
post #78
post #71

Earlier quoted context omitted.

This is too clever by half. Some tools/languages are more amenable than others to creating and maintaining large apps. Very large applications have been written and maintained in C/C++ for decades. My contention is that Javascript is particularly ill-suited to the creation and maintenance of large scale apps in the long run for the reasons explained. Any new language which purports to be an improvement upon Javascrip…

This is actually quite fascinating (and part of my upcoming book...) Despite the obvious high/low-level language differentials, people have been managing multi-million-line C code-bases since the 80's. Then again, think of how little the build tooling has actually changed -- instead of fragmenting, you're left with llvm, gcc, make at the core of most compiled software. JavaScript is the exact opposite with the lowest…

Javascript and other dynamic language like it are very good prototyping languages and for developing a quick mock-up to explore the pros/cons of a potential solution to a problem. But the lack of type checking and proper encapsulation turn into big headaches when scaled to a large app with even a few more junior developers.

Without a compiler/type checker to help spot obvious problems in code runtime exceptions explode. This happens even for senior developers. And the lack of proper encapsulation other than by convention can/does lead to an explosion of the surface area of source code that a dev needs to know and be familiar with in order to refactor and make changes to large codebases which makes for very brittle large apps.

Hence, I look forward to new languages targeting web assembly that will be more amenable to creating/maintaining large scale and long lived apps.

Re: Imba: A new programming language for web apps

#87
post #62

Surprising how many comments are of the "why bother" variety as opposed to critiques of Imba itself.

"why bother" should be the first question asked and first question answered (by the Imba team).

This, as well as the fact that recent years have brought on new language fatigue from having a completely new language with its own syntax and its own pros and cons being shown every 6 months. "Why bother" is important.

Re: Imba: A new programming language for web apps

#89
post #25

All these languages du jour should go out of their way to answer the question: "why bother?". 10x faster than react. OK cool. Except unless it has something like react native it's irrelevant if you might want to write an app in future with any sort of code reuse since you'll be tied to the web (unless you want the inevitable world-of-pain of trying to integrate this preprocessor into your xcode/android builds...).

And if I use react native, I'll still be tied to Javascript, which is one of the web technologies that people try to get away from when trying to get away from the web.

If I pick anything I'll be tied to something. If I (attempt to) write POSIX only code in straight C - I'll basically be tied to doing only things that can work in that kind of environment.

Re: Imba: A new programming language for web apps

#90
post #25

All these languages du jour should go out of their way to answer the question: "why bother?". 10x faster than react. OK cool. Except unless it has something like react native it's irrelevant if you might want to write an app in future with any sort of code reuse since you'll be tied to the web (unless you want the inevitable world-of-pain of trying to integrate this preprocessor into your xcode/android builds...).

> "why bother?". Surely the answer to that is obvious: because building webapps in js/html/css is a major pain in the arse.

This won't solve the problem of having to learn three different technologies, but whatever might mitigate the pain that we call JavaScript (quirks) is welcome.

People who specialize in webdev learn things by heart so perhaps they forget how bad they are.

Post reply on HN