Function operations are possible in Go like it’s possible in any language that define function in the syntax. But functional programming goes beyond functions, and Go was not designed to support it.
I’m a fan of Go and FP and would love to see someone bridge other FP aspects like monads, in a way that feels natural in Go.
If one were to produce a Clojure analogue to Go, I think that would be pretty huge. Meaning, Clojure is to Java as XXXX is to Golang. Golang has atrocious syntax and - agreed - not really well suited for functional programming. But having a higher level language that could be compiled down to golang and leverage the ecosystem would be quite nice.
Was just talking about this during a 1:1 with a colleague of mine today. It's remarkable that language developers have set out to do clean sheet designs (golang, rust) and somehow managed to settle on gross syntax. If I were desigining a language today it would look and feel like Python without any of the performance hurdles.
> It's remarkable that language developers have set out to do clean sheet designs (golang, rust) and somehow managed to settle on gross syntax.
You are talking of your opinion as some kind of facts. What you call gross syntax is good enough for people to write enormous amount of useful software that millions and millions use daily. The same can't be said for Clojure.
The additional features this tool brings (port enumeration, list usb devices, system info), makes me thing the tool was not designed for good/ethical reasons, but to ease the life of infostealers that are usually distributed via Discord.
Say you're building a feature for a password manager to import passwords from firefox. You'd want the the firefox decryption functions to be available as library.
Or say you're building a tool to extract data from broken hard drives, partially recovered filesystems, etc. Again, you'd want to have this available as a library so you can import the functions you need and use them in your own tooling.
Normally you'd expect this package to primarily export a lib with a "cli" subfolder that provides a sample CLI tool that imports the lib.
The fact that this tool requires libusb which is solely needed for the useless list usb devices functionality is extremely sketchy. It makes using this tool legitimately harder and only helps attackers.
In the grown up world where people can hold a respectful discussion, there's a difference between being able to use stock code in your malware and distributing ready-to-be-used code.
You are aware that satellite guided surface to air missile systems are not a mere git clone away? There are good reasons for controlling weapons, while still letting everybody be free to study them.
What's the idea behind a satellite guided surface to air missile system? The ground station detects the target with radar, derives a set of GPS coordinates for an intercept, transmits those coordinates to the missile, and the missile guides itself to them via GPS receiver? Seems suboptimal.
There could be field-specific ones like Dolthub, but what I believe is needed is datasets for all fields. GitHub isn't field-specific. There is no GitHub for hospitals, physics, AI, etc. It's any field.
Most Android apps are huge because they bundle tons of assets just to accommodate the “initial experience of the user”. Also, using bloat libraries and frameworks (any shipped by Google), increase the apk size.
Nowadays Google offers a solution for this problem called app bundling. It’s especially good if you build a mono app that behaves differently in certain regions. Instead of delivering a raw apk, you deliver a region specific app bundle.
I attempted to do this back at the start of this year, but lost motivation building the web ui. My trick is not CSS but simply loading fake images with <img> tags: