I've only written a handful of production projects in Go so my experience isn't very deep, but I find the syntax to be the ugliest of any PL. The mixed capitalizing based on function privacy, to me, is awful (among other things, i.e. personally I loathe curly brace initialization/definition). I'm sure you get used to it? It doesn't help that it just feels very hacked together, from the wonky generics, the lack of useful types like tuples and enums, the bolted on module system, to the annoying error handling, to say the least.
That said, compile times are great, the concurrency is dead simple, it's performant, and it's still easy to be really productive in it so it's not like I'd never consider it. Many other languages have many of the same issues, anyway.
> The mixed capitalizing based on function privacy, to me, is awful
Awful compared to ... what? `private` and `public` keywords? Ugly hacks like pythons `_` and `__`?
> it just feels very hacked together
> the wonky generics
What exactly about the generics is "wonky"? "Wonky" is not a term defined in any programming textbook I ever read. And languages are not designed on feelings, especially when the design goal is to be as pragmatic as possible, as is the case in Go.
And btw. 99% of the time tuples are used, it's as a stand-in for multiple-returns. E.g. Python does that. Go simply has...multiple returns.
> and enums,
Outside of language-enthusiasm with matching and whatnot (which more often than not is used because it looks cool rather than being useful), the most common (and again, 99%) use of enums, is to give names to magic values. Go has that covered:
type Color string
const (
RED Color = iota
GREEN
BLUE
)
> the bolted on module system
Pray tell what exactly is "bolted on" about modules? They are simply an extension of the import system, nothing more, nothing less.
> the annoying error handling
The "annoying" thing about it is that it's explicit and forced. Both of which are positives as far as I'm concerned, because I AM FREKKIN DONE with shitty 10-mile stacktraces because some joksters library threw an "exception" 400 layers down in some sub-sub-sub-sub transient dependency lib.
Zed is the only editor I've been using for maybe two months or so. But I find the extensions still sorely lacking and the API not extensive enough yet either. Still, I really love the design as well as how AI was builtin, and some more of the niche differences.
Anecdotally, my cats meow at me a lot. But they're my cats (others live in the house and help care for them). I also meow back more than anyone else. In fact, I might be the only one to do so. :)
I used to meow back to my cat when he was younger for vocal modulation and pitch practice (lots of minor seconds and perfect fourths). This might have been a mistake as he's now very talkative, particularly when I'm on the phone.
Anything to avoid stricter gun legislation. This type of incident will be considered an unfortunate but necessary sacrifice despite how dystopian it really is.
How do you pay with PayPal if not putting in your credit card or bank details? link is a pretty well-known online wallet and much simpler to use than PayPal.
I've never heard of link, so it's the difference between a random website and a well established brand. Not that hard to understand why someone might be hesitant to put in their cc details.
My grandpa (father's father) grew up in Rochester and that was the first time I visited New York for a family reunion, way back in the early aughts. Kodak was the major employer in town then; he and practically everyone he knew either worked there, had dealings with them in some form, or knew many others who did. When we went, I had the pleasure of touring the place and hearing plenty of stories from my gramps and our family. Good times.
That said, compile times are great, the concurrency is dead simple, it's performant, and it's still easy to be really productive in it so it's not like I'd never consider it. Many other languages have many of the same issues, anyway.
reply