7 ms·
> And yet we keep writing Go. What are the alternatives if you want something with type checking? Java? No, thanks. Haskel? Where are the libraries? C/C++? I
by noncoml 9y ago
> And yet we keep writing Go.
What are the alternatives if you want something with type checking? Java? No, thanks. Haskel? Where are the libraries? C/C++?
I guess Typescript is the only alternative
- patricklouys 9y agoModern PHP is really nice to work with. I uploaded the sample code from my book on Github if you want to have a look (check inside the src directory). https://github.com/PatrickLouys/professional-php-sample-code https://github.com/PatrickLouys/professional-php-sample-code
- blackoil 9y agoC#. Its pragmatic and now cross platform, has got OOPS and the functional features you need.
- mustardo 9y agoI like C# as a language but everytime you use it a puppy dies (MS exists)
- pjmlp 9y agoJava, C#, F#, C++, D, Rust, OCaml, Haskell, FreePascal, Ada, Swift, Nim look all pretty fine to me, and yes there are ways to compile Java and .NET languages to native code just like Go. As for libraries, what matters is if the desired use case is covered, not winning the App Store count.
- deleted 9y ago[deleted]
- cgag 9y agoI like go for most things more than all of those, though F# would be promising if I felt better about .net stuff and Linux.
- MrBuddyCasino 9y agoKotlin.
- deleted 9y ago[deleted]
- kaeawc 9y agoHave you gone to production with it yet for your backend? Curious Android dev here.
- mustardo 9y agoWorked on at least 2 projects using it in production (backend) zero language issues
- MrBuddyCasino 9y agoNot yet, but zero issues so far. Currently running Spring Boot 2M7 on AWS EB just fine. I was surprised how smooth it went.
- MrBuddyCasino 9y agoCorrection: found an issue with bean validation. https://github.com/spring-projects/spring-boot/issues/11343 https://github.com/spring-projects/spring-boot/issues/11343
- MrBuddyCasino 9y agoAnd it turns out it wasn't really an issue, just unintuitive. Documentation has been updated.
- vishbar 9y agoWe use it in production for a Storm-based ETL pipeline. We've not had any problems that have been related to our use of Kotlin.
- pasta 9y agoPHP has object checking. This is why I started using value objects in PHP. The VO's I use trow exceptions when you construct them with some bad value. This is great because when you use for example a natural positive integer object you are sure it is one. So now I have 'type checking' and more secure code in PHP.
- patricklouys 9y agoPHP also supports other type declarations. But using lots of value objects is a good idea anyway. http://php.net/manual/en/functions.arguments.php#functions.arguments.type-declaration http://php.net/manual/en/functions.arguments.php#functions.a...
- stiGGG 9y agoSince when does PHP has value types? Aren't all the classes reference types or you mean that Array thingie? And it is still the case with type declarations, that they make your code actually slower, because the runtime adds asserts in your code which gets evaluated at runtime?
- zaphar 9y agoRuntime type checking while useful does not offer the same level of safety as compiler time. It will catch sinner classes of errors but you'll still have bugs lurking in production.
- psergeant 9y agoI’d really like a strongly typed (or optionally typed) Python or Perl derivative. Rust feels most Perl-like so far.
- TurboHaskal 9y agoWhy do you say that? I love both Perl and Rust, yet the latter doesn't feel very perlish to me.
- patricklouys 9y agoModern PHP is very nice to work with. Ignore the haters that haven't touched the language in 10 years.
- Lazare 9y agoTo be fair to the haters, even modern PHP can be horrible. The old nightmares are still around; we've just agreed to ignore them, and maybe deprecate a couple of the worst. (And ternary syntax is still broken, and the standard library is anything but standard.) But yes, if you're working on a modern PHP project, there's a lot to love: A solid module system, an enormous sea of high quality libraries, type checking, a really nice deployment and scalability story, decent performance, good tooling (IDEs, debuggers, etc.), a servicable C-style syntax. For many purposes (not all!) it's ten times better than, eg, nodejs. (Which might seem like a low bar, I admit...)
- joshbaptiste 9y agohttps://nim-lang.org/ https://nim-lang.org/
- Lazare 9y agoI've been eyeing up Pony (https://www.ponylang.org/ https://www.ponylang.org/) a lot lately. To my eye, it has a lovely syntax and a very useful mix of modern programming features. I'm particularly enamored of the types, safety, actor model, and absence of exceptions. From a distance, it looks like the best parts of Rust, Golang, and Python. > Haskel? Where are the libraries? Well, I suppose the same drawback would apply to Pony. :)
- powerslacker 9y agoI've seen a lot of stuff on Pony as well and it looks promising. Have you built anything with it yet?
- Lazare 9y agoNot yet, but I'm looking forward to it; just need to find a good project.
- thegayngler 9y agoWhat about Apple's language Swift?
- didibus 9y agoScala, or C# ? There's Nim and D too, but I get the lack of big commercial backing could disqualify them.
- LOLOLOLO1 9y agoScala is a perfect example of how NOT to design languages.
- mustardo 9y agoKotlin, C#, Scala
- coldtea 9y agoBecause Typescript (or Javascript) has more quality libraries than Haskell?
- Erlich_Bachman 9y agoWhat is your problem with Java? What does "No thanks" mean? It's interesting to hear your perspective, but hard to know what you mean if you don't write it. (Also have you even looked at Scala, Kotlin, Groovy with static typing, and perhaps others?)
- shmish111 9y ago"Haskel? Where are the libraries?" What libraries are missing? The only issue I've had with libraries are that some client libraries are wrappers over C libraries and this makes static linking difficult (or seemingly impossible on a Mac) A few years ago there was a lack of libraries in some areas but that's not the case these days.
- deleted 9y ago[deleted]