4 ms·
Ask HN: How do you work in Programming language research?
I've always been interested in the theoretical side of Programming Languages. I've learned a dozen of them and built my own demo one.
I've always done this as a side project, but I'm often wondering if it's possible to start doing it full time. That would be great.
(For context: I have studied Maths, and worked as a SW engineer for the past few years, especially ML and now Data engineering. But, I'd love to get back to a more theoretical project at this point..)
The problem is, as far as I understand, the only people who work on PL research are:
- At universities. But, the universities in my city/country don't offer many opportunities in this area...
- At the R&D section in some corporation (eg Microsoft)
My question is, what are my options? How are all the maintainers/developers of the many programming languages around getting paid? Do you really do all this work in your free time, after having another full time job?
It appears there are not many opportunities around to get paid to do PL research... Am I missing some of them?
- lee101 3y ago[dead]
- atsuzaki 3y ago> How are all the maintainers/developers of the many programming languages around getting paid? Do you really do all this work in your free time, after having another full time job? I want to correct the assumption that may have led to this question little; programming language _research_ and programming language _implementation_ are generally two separate jobs requiring separate skillsets (that sometimes may overlap). Which one are you interested in doing? (both?)
- 9NRtKyP4 3y agoJane Street has a compilers team who do OCaml: https://signalsandthreads.com/future-of-programming/ https://signalsandthreads.com/future-of-programming/
- selfmodruntime 3y agoBack when I was in search of a PhD placement, I wondered this as well. I've sadly never found a place where I could research programming languages.
- JonChesterfield 3y agoIf it's an existing language, companies may be employing people to work on it. E.g. if you want to work on Swift, go talk to Apple. Lots of people contribute to LLVM and GCC while being paid to do so. Search "company name" + "compiler". If it's a language which doesn't exist yet that you want someone else to pay for, it's on you to make the case. In academia there's some funding game to play. In industry you probably have to build the thing first, at least to prototype level, then persuade people it's a good idea. You'll probably also find cases where people do their day job for the first 40 hours of the week and their passion project for the next 40 hours, but ymmv maintaining that workload. Remote / office tradeoffs as usual.
- fluffyspork 3y agoWhat is the goal of programming language research?
- Reki 3y agoTo make better languages
- fluffyspork 3y agoAre programming languages really a limiting factor for anyone?
- 7373737373 3y agoIt can be very insightful to understand the limitations of the language(s) one uses and the guarantees they can give
- bertday 3y agoSure, writing bug-free code is not possible for most programmers. The language can reduce the occurrence of bugs.
- fluffyspork 3y agoI agree with the first sentence. I don't think in 2023 a new programming language will help humans in a significant way.
- bertday 3y agoIt doesn’t have to be a totally new language. Javascript is an example where there are multiple front-end languages. You can go as far as formally prove the implementation is correct, too. Language theory is an abstraction for mathematical logic and proofs, so it touches anything logical at all.
- gnulinux 3y ago
- lioeters 3y ago- A company that comes to mind is Strumenta. https://strumenta.com/ https://strumenta.com/ They provide Language Engineering services, which include creating domain-specific languages, transpilers, editors, programming languages, compilers, interpreters. - Companies that "incubate" languages, like Rust at Mozilla, Go at Google, TypeScript and C# at Microsoft.. - Zig and Bun could be considered projects with people who work on language research full-time.
- nequo 3y agoAs sibling says, Jane Street has employed people who have worked on implementing unboxed types[1] and stack allocation[2] in the OCaml compiler. For Haskell, Well-Typed,[3] Tweag,[4] and Serokell[5] have employed people who have worked on GHC. For example, when Richard Eisenberg was at Tweag, he was working on implementing dependent types in Haskell which has led to new published research.[6] The work on dependent types is continued by other paid contributors. [1] https://www.janestreet.com/tech-talks/unboxed-types-for-ocaml/ https://www.janestreet.com/tech-talks/unboxed-types-for-ocam... [2] https://blog.janestreet.com/oxidizing-ocaml-locality/ https://blog.janestreet.com/oxidizing-ocaml-locality/ [3] https://well-typed.com/blog/tags/ghc-activities-report/ https://well-typed.com/blog/tags/ghc-activities-report/ [4] https://www.tweag.io/blog/tags/ghc https://www.tweag.io/blog/tags/ghc [5] https://serokell.io/blog/ghc https://serokell.io/blog/ghc [6] https://www.youtube.com/watch?v=TXDivoj1v6w https://www.youtube.com/watch?v=TXDivoj1v6w
- deleted 3y ago[deleted]
- max_ 3y agoLook up the blockchain Space there, both the layer one and layer two space. Most specifically smart contracts. There are several open problems in the space especially research around having safe smart contracts. Check out Move Language, Sway, Vyper, Bamboo(Ethereum), Motoko on ICP