Live data from Hacker News

Ask HN: What “new” programming languages will you be using in 2017

news.ycombinator.com

11–20 of 85 posts

Re: Ask HN: What “new” programming languages will you be using in 2017

#14
New things I plan to pay attention to:

* Rust, for it's a sane replacement for C and C++.

* Elixir, for it's more consistent than Erlang, running on the same battle-tested VM.

* Clojure, because any JS code I write now gets transpiled anyway, so why not use a nicer language with a nice standard library?

* Crystal, because it might be a faster and safer Python replacement.

Re: Ask HN: What “new” programming languages will you be using in 2017

#15
I recently got into TypeScript, if that counts. I'm really enjoying it so far, but I'm running into some annoying things as a beginner:

* For many third-party libraries, needing to write `import * as Something from 'some-package'` instead of `import Something from 'some-package`.

* Not being able to import non-TypeScript files, further fragmenting my import style by needing to write stuff like `const styles = require('./something.scss')`.

* Module resolution in general seems to be close enough to ES6 that I'm usually okay, but different enough that I sometimes get really confused about why something doesn't work.

* There are tons of incorrect type definitions in the DefinitelyTyped repository. A common thing for me to do is: 1) `npm install --save-dev @types/some-package` 2) notice that my app no longer compiles because a method supposedly doesn't exist 3) `npm uninstall --save-dev @types/some-package` 4) move on with my life, because the method does indeed exist and my code works. Once I have more experience, I'd like to contribute to the repo to fix these errors, but the repository itself is GINORMOUS. 1k+ issues, 3k+ contributors, 25k+ commits, and 87 open pull requests right now. I have to think that there's a better way to manage types of third-party libraries.

* I find the docs very difficult to read.

If someone has a good resource for learning TypeScript, I'd love to know about it! Specifically, my pain points are module resolution (as you can see) and types beyond the basics. For example, I recently tried to make a React component where the props could be some custom things I wanted, PLUS all the fields of HTMLAnchorElement. I tried, but couldn't figure it out, and eventually switched the props type to `any`. This is less than ideal :(

Re: Ask HN: What “new” programming languages will you be using in 2017

#16
post #7

I'm personally aiming for Scala. I took the first coursera class and loved the language features so far. The main potential problem I see is a decreasing rate of adoption.

YMMV, but when I got back into functional programming years ago, I was excited to learn scala, but as it turned out, clojure was everything I expected scala to be.

Everything, including e.g. type inference?

Re: Ask HN: What “new” programming languages will you be using in 2017

#17
post #6

I know I'm late to the game but Go. I've been wanting to play with it for a while but haven't had the mental capacity to really dive in after work. As it turns out the company I work at has a project or two slated for the new year that will likely be written, at least partially, in Go. I look forward to getting my feet wet.

In a startup now that is using Go. It has worked out extremely well so far. Some of the pieces like unused imports are errors, and checking for error return values in the end help to keep things clean. Performance is definitely impressive.

Re: Ask HN: What “new” programming languages will you be using in 2017

#19
Nim.

Main: http://nim-lang.org

NES emulator (compiled to JavaScript, runs in the browser): https://hookrace.net/nimes/

Simple 2D game: https://hookrace.net/blog/writing-a-2d-platform-game-in-nim-...

More examples: https://nim-by-example.github.io/

Nim has pythonesque syntax, with Pascal/Delphi roots, fast compile times, portability (compiles down to C, JavaScript, LLVM), strong metaprogramming support, seamless FFI, optional GC, and a lot more.

It doesn't have Rust's ultimate safety, although it has quite a bit -- e.g., it can track which thread accesses what for concurrency (in a limited but extremely useful way).

I'm a fan; It looks like the fun of Python but the speed of C/C++. I haven't had a chance to start a project in Nim - hopefully, in 2017.

Re: Ask HN: What “new” programming languages will you be using in 2017

#20
post #7

I'm personally aiming for Scala. I took the first coursera class and loved the language features so far. The main potential problem I see is a decreasing rate of adoption.

YMMV, but when I got back into functional programming years ago, I was excited to learn scala, but as it turned out, clojure was everything I expected scala to be.

They're totally different languages. But because of safety, performance and productivity I prefer Scala.
Post reply on HN