Live data from Hacker News

Show HN: Winglang – A new cloud-oriented programming language

github.com

61–70 of 72 posts

Re: Show HN: Winglang – A new cloud-oriented programming language

#61

I think it's an interesting idea, but I feel like creating a whole new language has too much overhead for adoption. You would need to create a language server and extensions for every editor you want to support. A language-specific DSL (Pulumi, CDK, etc) just works in any editor that already supports your language. This is a similar reason to why I dislike most docblock-based infra tools as well. If wing is confident…

[I'm on the Wing team] I get what you mean about adoption and maintenance overheads.

On the adoption front, we are aware it takes time for languages to get adopted. We also plan to release the Wing SDK to other languages soon, but the best DX is still provided by using Winglang itself simply because we are not constrained by what other languages support.

The language server is actually the same one for different editors, but we do need to create and maintain different editor extensions. The best supported one at the moment is VSC.

Re: Show HN: Winglang – A new cloud-oriented programming language

#63
post #42
post #27

This is pretty cool! I've had my eye on Wing for a while, as a avid fan of Pulumi. I was fortunate enough to have the freedom to use Pulumi in a past role, and it revolutionized the way I thought about infrastructure. My current org has been slow to adopt IaC, and Bicep has been all for which I've managed to drum up appetite. I was surprised somewhat to enjoy the simplicity, but eventually I think we'll outgrow it. M…

[I'm on the Wing team] Thanks for the feedback. We call it new because it is only a year old, and for programming languages its pretty young. It is just now getting mature enough to be able to build real world applications with. Hope it makes sense

I understand your point, and I sincerely wasn't sniping. Since you took the time to reply, I'll share a little of my reasoning in case you might find it valuable.

I think using a subjective term is meaningless, at least in the context of an introduction. "New" is far too relative, and means something entirely different for one person to the next.

I personally think it makes more sense to provide an objective fact, such as "started in 2022" and let readers determine whether that qualifies as "new" or not.

I wouldn't have mentioned it, and may not have even noticed if it weren't literally the first piece of information presented to me in the repo.

In any case best of luck with the project. It looks very promising and I am excited to see where it goes!

Re: Show HN: Winglang – A new cloud-oriented programming language

#64
post #62

Does it work on/against GCP?

[I'm on the Wing team] Yes, but it's still in early days, you can see our support matrix here: https://www.winglang.io/docs/standard-library/compatibility-...

oh boy -- lot's of work ahead for you folks, best of luck! I'll be watching this project. We do a ton with GCP so when this matures we'll be looking at it more.

How do you compete with -- if at all -- with Ballerina lang? https://ballerina.io/

Re: Show HN: Winglang – A new cloud-oriented programming language

#65
post #61

I think it's an interesting idea, but I feel like creating a whole new language has too much overhead for adoption. You would need to create a language server and extensions for every editor you want to support. A language-specific DSL (Pulumi, CDK, etc) just works in any editor that already supports your language. This is a similar reason to why I dislike most docblock-based infra tools as well. If wing is confident…

[I'm on the Wing team] I get what you mean about adoption and maintenance overheads. On the adoption front, we are aware it takes time for languages to get adopted. We also plan to release the Wing SDK to other languages soon, but the best DX is still provided by using Winglang itself simply because we are not constrained by what other languages support. The language server is actually the same one for different edit…

> We also plan to release the Wing SDK to other languages soon

Awesome! I agree that your intended experience is likely to be more curated, but supporting other languages might really help. This is really cool to hear.

Also, I realize I might have phrased it poorly, but I meant exactly that about the language server. Language server once, but each editor needs its own extension. Even the extension wrappers around the language server could quickly eat up a lot of maintenance time because there is no true standard. Open VSX is pretty nice for cross editor extensions, but not too many editors use it, yet.

Re: Show HN: Winglang – A new cloud-oriented programming language

#66
post #63
post #42

Earlier quoted context omitted.

[I'm on the Wing team] Thanks for the feedback. We call it new because it is only a year old, and for programming languages its pretty young. It is just now getting mature enough to be able to build real world applications with. Hope it makes sense

I understand your point, and I sincerely wasn't sniping. Since you took the time to reply, I'll share a little of my reasoning in case you might find it valuable. I think using a subjective term is meaningless, at least in the context of an introduction. "New" is far too relative, and means something entirely different for one person to the next. I personally think it makes more sense to provide an objective fact, su…

Thanks, and I agree with your reasoning, makes sense to provide objective data

Re: Show HN: Winglang – A new cloud-oriented programming language

#67
post #61

Earlier quoted context omitted.

[I'm on the Wing team] I get what you mean about adoption and maintenance overheads. On the adoption front, we are aware it takes time for languages to get adopted. We also plan to release the Wing SDK to other languages soon, but the best DX is still provided by using Winglang itself simply because we are not constrained by what other languages support. The language server is actually the same one for different edit…

> We also plan to release the Wing SDK to other languages soon Awesome! I agree that your intended experience is likely to be more curated, but supporting other languages might really help. This is really cool to hear. Also, I realize I might have phrased it poorly, but I meant exactly that about the language server. Language server once, but each editor needs its own extension. Even the extension wrappers around the…

Yea, no good way around IDE extensions. Hopefully if Wing gets popular enough the community will create extensions where there is demand for them.

Also, thanks for taking the time to give us feedback

Re: Show HN: Winglang – A new cloud-oriented programming language

#68
post #62

Earlier quoted context omitted.

[I'm on the Wing team] Yes, but it's still in early days, you can see our support matrix here: https://www.winglang.io/docs/standard-library/compatibility-...

oh boy -- lot's of work ahead for you folks, best of luck! I'll be watching this project. We do a ton with GCP so when this matures we'll be looking at it more. How do you compete with -- if at all -- with Ballerina lang? https://ballerina.io/

Yes lots and lots of work, but we enjoy doing it :)

About ballerina, there are similarities to wing, but at a high level it is focused on simplifying networking whereas Winglang is about simplifying the use of cloud services.

Re: Show HN: Winglang – A new cloud-oriented programming language

#69
post #38

Earlier quoted context omitted.

> In existing languages, where there is no way to distinguish between multiple execution phases, it is impossible to naturally represent this idea that an object has methods that can only be executed from within a specific execution phase. I'm sure I'm getting the wrong end of the stick but isn't this possible to ensure using typing? Very simple dependent typing/phantom types/bog standard normal types?

The current type system is designed around the experience of writing code like the example below where objects can have two kinds of methods: let bucket = new cloud.Bucket(); let api = new cloud.Api(); // api.get is a preflight method - it generates cloud infrastructure api.post("/hello", inflight (req) => { // bucket.put is an inflight method - it performs data plane operations, at "runtime" bucket.put("data.txt", r…

What I was getting at is that it seems to depend on the compiler to know the difference between preflight and inflight because the calling convention is identical.

I personally don't think it's intuitive that function calls using the same syntax either emit terraform code or JS. It's like mixing compile time macros and code into one.

Re: Show HN: Winglang – A new cloud-oriented programming language

#70
post #53

Show me a complex use case. Show me making it more complex and what that costs. Show me the performance benchmarks. Syntax is cool but the older I get the more I care about productivity and speed.

[I'm on the Wing team] Wing is still in early days so we can't show very complex use cases yet, but as time passes developer use to build more and more complex things with it. Our aim is to improve productivity and speed by enabling developers to develop against a local simulator and visualization console, giving them instant feedback and much shorter iteration cycles. By allowing them to work at a higher abstraction…

> dev against a local simulator

But can’t you already do this today with GCP and AWS and more generally a wealth of Docker images and Kub/Knative?

Furthermore, I wonder how you guys plan to encourage users to jump ship from (node/go/Java/.NET) to winglang, all of which have a rich package ecosystem?

Post reply on HN