3 ms·
This is a bit of a rabbit trail, but something I’ve been wondering about lots of these new languages. Who uses them and why? I’m genuinely asking here. I hav
by shireboy 4y ago
This is a bit of a rabbit trail, but something I’ve been wondering about lots of these new languages. Who uses them and why? I’m genuinely asking here. I have a hard time imagining going to a team or customer and saying “c#/go/java/python/javascript are the wrong approach for this project. We need to all learn this new language and use that instead.” Don’t get me wrong: I’m glad people are innovating, and I get that personal curiosity and growth might be good reasons to build a new language. But I just wonder about the real world uses and actual stories behind new and lease known languages. Why did someone create Gleam and how is it being used in production today? What are the long term goals for it? What would be the argument for using it on a company’s projects?
- deleted 4y ago[deleted]
- myaccountonhn 4y agoWell Paul Graham wrote an article on it (http://www.paulgraham.com/avg.html http://www.paulgraham.com/avg.html). Essentially, I think the people who pick those languages believe the extra stability/speed/whatever is gained from using it beats the drawbacks.
- kerkeslager 4y agoThat really depends on which language you're talking about. An opposite trend I've been noticing is that big languages steal ideas from some smaller language and absorb its community: for example a lot of R ideas have been pulled into Python libraries, resulting in a migration from R to the more capable Python. R's syntax is nicer for statistical computing, but having access to the larger Python ecosystem with slightly worse syntax turns out to be more valuable in the long run. > Why did someone create Gleam and how is it being used in production today? I'm an outsider to this community, so I'd trust someone with inside information over myself, but my outside impression is that Gleam was invented to push Erlang's potential for extremely high reliability even farther. Gleam's strong type system lets you create software that rarely fails, and on top of Erlang/OTP's "let it fail" philosophy you have battle-tested patterns for recovering from failures when they do happen. The use case is for networking software which requires high levels of security, scalability, and fault-tolerance, such as cryptocurrencies and end-to-end encrypted messaging systems (it's used by WhatsApp and I think the NEAR cryptocurrency though I can't find a reference for the latter claim).
- guhidalg 4y agoIt's not about creating a "useful" programming language, it's about exploring an idea by implementing it in a working compiler/interpreter and seeing it how well it works in practice. Like other posters have said, the popular "useful" languages will learn from these small experimental languages and incorporate their features once they've proven how useful they are.
- kerkeslager 4y agoYou seem quite confident you know what creating every programming language was about, so I'll defer to you!
- mamcx 4y agoJust format this: > I have a hard time imagining going to a team or customer and saying “ - c# - go - java - python - javascript ARE wrong ... for this project. --- So, what people don't get is that you need somebody crazy enough to make `go, python, java` when C, Cobol and other existed. You see the major success, but not the attempts in the middle. For people like us that do languages, not just for fun, we are trying to be the NEXT on that list!. And if somehow one of this languages break it the barrier is because, for certain, they are better than most, at least at certain niche. --- > But I just wonder about the real world uses and actual stories behind new and lease known languages A little secret: Creating a new language is the ONLY way to make a paradigm work at scale. You can't do OOP in C, not practically. A new language is the next step after make a framework, and you can see it as the only way to make the idiom of a large scale framework to truly shine without the baggage. So, in my case (https://tablam.org https://tablam.org), I have used +20 programming languages (including SQL dialects that inflate the number!), for real, for work, for pay. None is close to solve the needs of build business apps, and the one that was close (FoxPro) die too long ago. None is relational, none is good for data manipulation, none allow me to encode the business checks, flows or invariants, or make data reports, etc. "None" here is too strong of a word, right? All that other languages I have used have shipped code! So they "works!", but none allow me to truly embrace the relational paradigm, aka: deal with data.
- dvlsg 4y ago> Why did someone create Gleam I can only speak for myself, and I am not involved in the creation of Gleam. But I have to say, an ML style language on top of the Erlang VM (BEAM) is a very enticing combination to me. I'm also not using it in production at ${dayJob}, so take that for what it's worth. Maybe some day I'll get the opportunity.
- noir_lord 4y agoC# and Go where both one of those "we need to switch everything to this new language" when they where young enough. So much so it became something of a meme to say "just re-write it in Go" for a while.
- giraffe_lady 4y agoI think clojure tells a useful story here. Rigid approach, unfamiliar syntax for a lot of developers, and unusual semantics make it a really strange choice. And it never has been popular compared to big languages. But a lot of companies are institutionally committed to the jvm, and/or have deep expertise within it, and a lot of those have smaller teams or individuals with more freedom to experiment with their tools. And now clojure has settled into a comfortable niche as the language you use when you should be using java but just don't wanna. This is one path to making it easier for devs to justify using a new language. And I mean, typescript was in this situation more or less at one point. So sure erlang isn't as popular as java or javascript, but it is a runtime that some places are committed to and have expertise in. I could see gleam latching onto that, maybe.
- acestus5 4y agoI love clojure. The boss ask for a jar file. I give him a jar file with clojure in it.