Really cool idea! My only notes would be it's not clear at first glance what this language provides.
A serverless language doesn't really explain what it is, I mean JS, Python, Java etc.. all run in serverless environments.
But after reading more it seems similar to Erlang, as each function can be deployed to other systems and invoked as if it were a local function... <- this is what you want to emphasise.
I would suggest adding a graphical flow chart on how this works (maybe like this https://i.imgur.com/fJHyJni.png). Perhaps a comparison of how regular programs invoke functions, compared to how Teal invokes functions (showing scalability and parallel computing).
"Why should I learn a new language?... Because it'll give you a new way to think about cloud software."
This is not a good reason. If you want people to learn a random language, you need to demonstrate the reasons why it's better! At first glance it seems crazy to have no interoperability with another language/package manager.
Anyway, sorry if I sound critical, I think there's real potential in this idea and am excited to see more development for Teal!
- "serverless language". Fair point; I'm still working on how to describe it. I'm trying to get across the idea that it's a language for describing serverless applications (rather than a language that runs in a serverless env).
- flow charts: working on it
- new language: you're right, that section is pretty cringy
Comments
Really cool idea! My only notes would be it's not clear at first glance what this language provides.
A serverless language doesn't really explain what it is, I mean JS, Python, Java etc.. all run in serverless environments.
But after reading more it seems similar to Erlang, as each function can be deployed to other systems and invoked as if it were a local function... <- this is what you want to emphasise.
I would suggest adding a graphical flow chart on how this works (maybe like this https://i.imgur.com/fJHyJni.png). Perhaps a comparison of how regular programs invoke functions, compared to how Teal invokes functions (showing scalability and parallel computing).
This is not a good reason. If you want people to learn a random language, you need to demonstrate the reasons why it's better! At first glance it seems crazy to have no interoperability with another language/package manager.
Anyway, sorry if I sound critical, I think there's real potential in this idea and am excited to see more development for Teal!
Thanks, that's great feedback!
- "serverless language". Fair point; I'm still working on how to describe it. I'm trying to get across the idea that it's a language for describing serverless applications (rather than a language that runs in a serverless env).
- flow charts: working on it
- new language: you're right, that section is pretty cringy
There's a current lobsters thread on language rationales[1], and HN thread on Racket's new website[2].
[1] https://lobste.rs/s/6bphbw/fennel_programming_language_ratio... [2] https://news.ycombinator.com/item?id=24285767
Those are great, thanks for sharing.