|25 days ago||2 days ago|
|GNU General Public License v3.0 or later||GNU General Public License v3.0 or later|
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
1 project | reddit.com/r/webdev | 10 Nov 2021
PHPStorm detects \u3164 "HANGUL FILLER" but VS Code does not. I tried using the Gremlins plugin, but looks like it currently doesn't detect this confusable. Is there any alternative plugin or setting in VS code to help detect these characters?
Expectations for Generics in Go 1.18
6 projects | news.ycombinator.com | 27 Oct 2021
On VSCode, I use the Gremlins extension which highlight all those suspicious characters.
In defense of complicated programming languages
2 projects | news.ycombinator.com | 25 Jan 2022
> There is something in video games called minmaxing, which is where you maximize one attribute at the expense of all of the others. For me C++, and now Rust, feel like they are guilty of this with their weight on zero-cost abstractions.
> I think it was literally just meant to be the bare minimum to try to solve the most important parts of the problem, and at that it succeeds.
In other words, it's the cost effectiveness of a language feature. You want features to provide as much value for as little cost as possible. This is what Go's going for; to paraphrase Russ Cox - "If a feature is not clearly above the bar, it's below it." .
> Just as reducing programming language complexity doesn’t remove it, but only moves it around, removing runtime cost doesn’t remove it either. And the problem here isn’t that compile time isn’t a better time than runtime; it’s the hidden costs that suck. Sure, maybe the compile times in Rust will improve, and maybe it’s not even that big of a deal. But every little feature the language has puts some additional stress on the ecosystem. The language server has to bear this load, for example.
The worst hidden cost that's often missed is the impact on the programmer.
Take Python's controversial walrus operator . If you look at the reasoning and the examples, the change seems reasonable. But consider that once the feature gets implemented, every single Python programmer will have to learn what it does in order to be able to read others' code. Does this feature provide enough to justify this weight? Undoubtedly not. Of course, it got implemented anyway, because the impact of making the code slightly more readable in some cases is clearly visible, but the cost incurred on every single programmer's mind is not.
This is how languages reach untenable levels of complexity. By the time you realize your language is getting complex you're 20 features in and it's too late to turn back. "A frog dropped in a pot of boiling water will jump out of the pot to save his own life. If the frog is put into cool water and slowly brought to a boil, he will remain there until he is cooked through."
Change Go beta's SDK location
1 project | reddit.com/r/golang | 25 Jan 2022
x/dl/version: installer shouldn't create a new subdirectory of $HOME #26520
proposal: constraints: move to x/exp for Go 1.18 · Issue #50792
1 project | reddit.com/r/golang | 24 Jan 2022
Please help a noob understand this basic golang behavior
1 project | reddit.com/r/golang | 24 Jan 2022
This is described in detail at https://github.com/golang/go/wiki/CommonMistakes
GitHub - ledongthuc/goterators: A utility library that supports aggregate & transforms functions Go 1.18 with generic. Such as filter, map, reduce, find, exist
2 projects | reddit.com/r/golang | 24 Jan 2022
Such as common constraints package for generic, they are ready to start with after thinking and using Generic in period: https://github.com/golang/go/issues/50792
Anyone know where I can find discussions around generic methods?
https://github.com/golang/go/issues/50726 was recent and IIRC there were some more bugs related to this a while ago.
There seems to be a general misunderstanding in this thread, that this is about having additional type parameters on methods. It's not. That particular sentence refers to this issue, about having local type-declarations in generic functions. That's simply a bug, which is intended to get fixed by go 1.19.
This seems to be the most interesting issue.
Go is about to get a whole lot faster
4 projects | reddit.com/r/programming | 23 Jan 2022
Dispise the language seems a bit harsh, I just think the Go community makes a lot of weird design decisions. For the longest time generics and the try function were super obvious ways to improve the language but the community was hell bent against improving the language to maintain simplicity.4 projects | news.ycombinator.com | 23 Jan 2022
> It was endless arguments from Go users that generics aren't needed
There was (and still is) a small minority of Go users that insist generics are bad, but in my observation it's nowhere near the majority view. As a concrete datapoint, the GitHub issue on this has 2k upvotes and 150 downvotes. A sizeable minority, but a minority nonetheless.
As is often the case, "the Go community" is far from heterogeneous, and it's hard to really get an idea what "the average Go programmer" thinks, and easy to criticise the most extreme elements.
Certainly for the Go team itself the position was always that 1) generics are useful, but 2) we're not quite sure how to best implement them. People take issue with that viewpoint too, which is fair enough, but it's really quite a different one.
What are some alternatives?
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. https://vlang.io
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
golang-developer-roadmap - Roadmap to becoming a Go developer in 2020
RxGo - Reactive Extensions for the Go language.
gin-vue-admin - 基于vite+vue3+gin搭建的开发基础平台（已完成setup语法糖版本），集成jwt鉴权，权限管理，动态路由，分页封装，多点登录拦截，资源权限，上传下载，代码生成器，表单生成器等开发必备功能，五分钟一套CURD前后端代码。
Weaviate - Weaviate is a cloud-native, modular, real-time vector search engine
Gin - Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.
sqlc - Generate type-safe code from SQL
crystal - The Crystal Programming Language
asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more