[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip / qa] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: 1726570352196.png (1.5 MB, 1024x1024)
1.5 MB
1.5 MB PNG
When computers got more powerful, C succeeded Assembly as the lingua franca of general purpose user-level software, as hyper-optimization on the instruction level and CPU cycles was no longer necessary for userland.
And now, Go has succeeded C as the lingua franca of general purpose user-level software as hyper-optimization of memory allocation is no longer necessary for userland.
Ergo, you should learn and use Go.
>>
Go has to be the language that is fucking killed by its mascot more than any other.
>>
File: 1726570614564.png (9 KB, 256x256)
9 KB
9 KB PNG
>>102423695
Go should use the Hare mascot.
>>
>>102423695
is it weird if I feel the urge to have have sex with the mascot?
>>
>>102423689
I actually want to learn go but I don't have time.
>>
>>102423699
All Hares should be killed by Myxomatosis.
-t Australia.
>>
>>102423689
Cool take but as someone that knows go, I wish I'd learned rust instead.
>>
>>102424722
>I wish I'd learned rust instead
just do it, then
what's stopping you?
>>
>>102423689
>C succeeded Assembly
That would be Fortran and Cobol, but nice try faggot.
>>
Buy an ad faggot
>>
>>102424729
the genital mutilation part
>>
>>102424992
But you get cute programming socks as compensation, so it's still a win.
>>
>>102423689
>Go has succeeded C as the lingua franca
Yet to be observed.
Javascript would sooner be declared today's lingua franca.
Python would sooner be declared today's lingua franca.
And I hate Python.

>>102423733
Go read the book.
>>
>>102423695
It's just another push by megacorps to infantilize people.

>>102423699
I would genuinely be more interested in learning go if it had this for a mascot, instead of mascot that conveys that it's for children.
>>
>>102425133
based
>>
File: 1726584039765.jpg (26 KB, 600x600)
26 KB
26 KB JPG
>>102423695
best mascot
>>
>>102425057
I said for userland software. Javascript and Python are usually scripts/web related. While interpreted languages are the next level in ease of code, the computers aren't strong enough yet to write things like file explorers and terminal emulators in python without noticable lag
>>
i think the mascot is cute, i've personally NEVER wanted to touch this language because i had a friend on Matrix who kept shilling it. i didn't want to give him the satisfaction so i was constantly a contrarian
>>
>>102423689
I'm too low iq for go.
I'll stick to python.
>>
>>102426860
shame
>>
>>102423714
No. It's a perfectly reaction upon viewing a lust inducing image.
>>
>>102423689
C had nothing to do with CPU power, it simply exists to be as close to an abstraction from a generalized CPU instruction set as possible. It won't be replaced until someone makes a closer abstraction with modern language features
>>
>>102428083
Which is only useful for extracting CPU power
>>
>>102428109
There is no such thing as "extracting" CPU power, speed comes from using as few instructions as possible to complete a task and cache targeting
>>
>>102428155
Which is exactly what I meant, autismo
>>
>C succeeded assembly because computers got more powerful
C succeeded assembly because it was portable and businesses didn't want to spend more money writing the same product again for a different flavor of assembly. Also C was pretty close to assembly level optimization and was more readable than assembly. Go is nice, but the same pressures that moved people from assembly to C aren't there. Go can't be the lingua franca because it is not a systems language. C remains the lingual franca because every language needs to communicate with C to communicate with the OS or hardware. That's why rust is trying so hard to penetrate OS dev so it can overthrow C as the lingual franca.
>>
>>102423689
>>102426860
>I'm too low iq for go.
https://go.dev/tour/
https://www.golang-book.com/books/intro
you can learn this in a week
>>
>>102428642
The channels confuse me. Are they sockets underneath or something?
>>
>>102428642
No language is easy, all languages are difficult and identical, because only 1% of code is the language. 99% of real code is just frameworks of some kind.

I'm making a video downloader website and it's just depressing me having to ask GPT so much. Right now I have it so you can enter a video URL and it displays back to you all the video info. It feels like the repository patterns and structs are the only things I even wrote, and some database query stuff. GPT has had to give me a lot to do with unmarshaling the JSON, and running terminal commands in the Go application to get the JSON from a video URL.

Really doesn't feel like there's much difference between any language you choose. You can learn how to use X language in days, but then it's the same wall of frameworks and new commands to memorize. Wish I'd learned front end web dev, simply because doing anything useful seems to involve oceans of HTMX, Javascript, and etc.
>>
>>102423815
Lmao, I get it.
>>
>>102423689
>When computers got more powerful, C succeeded Assembly as the lingua franca of general purpose user-level software
That's not what happened at all. By the time C was popular, writing software in high-level languages was normal. BASIC and Pascal were more popular in the 8/16-bit world, and FORTRAN, COBOL, ALGOL, and PL/I were popular on bigger computers. Lisp machines with hardware garbage collection and dynamic typing were before C replaced everything. There were even 5th generation computers for Prolog and research on hardware for running pure functional languages. There were a lot of different languages people used for general purpose software and then in the late 80s and early 90s, C started to replace everything. This is because C was the JavaScript of it's time, something shilled everywhere even though it wasn't as good.

>>102428607
>C succeeded assembly because it was portable and businesses didn't want to spend more money writing the same product again for a different flavor of assembly. Also C was pretty close to assembly level optimization and was more readable than assembly. Go is nice, but the same pressures that moved people from assembly to C aren't there.
C had nothing to do with people switching from assembly to high level languages.

>businesses didn't want to spend more money writing the same product again for a different flavor of assembly.
That's a big reason for using high level languages instead of assembly, but C had nothing to do with it. C didn't take over until other high-level languages were already more popular. C was replacing high level languages like FORTRAN and Pascal, not assembly.
>>
>>102423689
>hyper-optimization of memory allocation is no longer necessary
it never was the need, thats made by the malloc implementations.
and you still need control of memory usage cycle in many critical scenarios.
Thats when effective modern C++ is still king.
You have to expose yourself to more problems to understand it.
>>
>have problem that can be solved with polymorphism
>no classes or inheritance
garbage language that is actively working against me
>>
>>102429808
Interfaces{} and structs are like the main cornerstones of the language. Alongside if err != nil...
>>
Feels nice to write Go.
>>
>>102429905
Extremely. It looks nice and you know you are being forced to handle errors, leading to well documented debugging.
>>
c go perl
>>
File: plan9-team.jpg (874 KB, 1890x1704)
874 KB
874 KB JPG
Sometimes I wonder if Golang is the heir of Plan9.
>>
>>102429987
imagine the smell
>>
>>102428984
>No language is easy
>1% of code is the language
did you just call yourself a giga-brainlet?
>>
>>102423689
you're missed the part where everything off the browser is C++ and everything on the browser is JS
>>
>>102430320
Different context. An infant can learn any language, languages themselves are fairly simply but what a "language" ACTUALLY entails is the language and then a billion libraries that require rote memorization of commands. Writing actual applications seems to involve almost no language at all, just interfacing with some sort of framework.

Arctix web looks identical to Go Fiber IIRC. You could pretty much write with either framework and not even know what language you're writing in because you're just interfacing with the framework.

Programming is a totally different thing now. If computers and software were still like the 2000s, you wouldn't need all this. You could write full games in Assembly then like Chris Sawyer. Now you can't because a basic phone app even is more complex than his video games. The disease is terminal unfortunately.
>>
File: 1726602050714.png (51 KB, 600x600)
51 KB
51 KB PNG
>>102423695
>>
>>102430472
Or maybe it was Arctix and Drogon, which is Rust and C++ respectively. They all just blend together in a haze of endless frameworks. What language am I coding in? I'm coding in Drogon. Where's the C++? Oh well you see that if {} else {} waaaay over there, way over in the corner? That's the C++.
>>
Anons are missing out on the comfiest and most productive language of all time because they're getting filtered by some jpeg

Your loss I guess
>>
File: 1000005331.jpg (22 KB, 220x330)
22 KB
22 KB JPG
>>102430559
is it this jpeg?
>>
File: gomascot.jpg (84 KB, 1280x719)
84 KB
84 KB JPG
>>102423695
ngl I love this cute little faggot so much
>>
File: IMG_2239.jpg (28 KB, 568x526)
28 KB
28 KB JPG
I learned Rust instead. Now I don't even know what project to write in Rust. It's like I just finished the book and most of rustlings and now have no idea what to do. Fucking hell I feel so fucking stupid
>>
>>102430813
Rust is for kernels and drivers. So write a kernel or driver. Here is a challenge. Create a unix like OS that will have all basic utilities and fit on a 1.4MB floppy dick!
>>
>>102430862
Dude I had a lot of problems writing an (incomplete) cat clone
>>
>>102428083
Zig no?
>>
>>102430862
>Create a unix like OS
Worse is Better
>>
go doesn't have a good gui library though no ?
>>
>>102423733
you have time to shitpost on gaychan and jerk off to anime girls but not learn the simplest programming language in the world
?
>>
>>102430926
huh? isn't that just file::open and io::copy?
>>
>>102431263
gotk3
>>
>>102431263
1. you bind to a C library
2. kek
>>
>>102431303
Uh yeah, I mean I finished it but I had some trouble while writing it. I am just quite unexperienced.
>>
>>102430862
>floppy dick
kek
>>
>>102431263
https://p.janouch.name/article-xgb.html
>>
>>102430813
I'm sorry bro, I almost made that terrible mistake too. ALL applications are network based now, I am so grateful to have picked Go, and still have C++ on the back of my mind if I want to make vidya for some reason.
>>
>>102430161
the smell of progress.
>>
>>102428717
If you're thinking about sockets, as in a duplex connection, then no.
Channels can basically be thought of as worker queues which are consumed by go routines(functions that run in parallel). So you can do things like define pipelines between different stages, load balancing between multiple workers, and signaling stops.

Think of it this way, Golang was designed by Google primarily to be a data processing language and Channels, as a concurrent pattern, are a natural implementation of many data processing tasks.
>>
>>102432202
>X11
I think I have some NeWS bindings lying around here somewhere too...
>>
>>102432277
Are you employed? What kind of stuff do you use Go for? And what kind of stuff (I mean more like beginner - intermediate projects) could I think about building on Go in order to learn?
>>
File: Benchmarks.png (132 KB, 1783x1212)
132 KB
132 KB PNG
>>102423689
GO Bros...
>>
>>102432419
I'm building server applications that will accomplish various tasks. I will finish the projects (not have 1000 abandonwares). I am noob (I started a couple months ago)... A lot of this shit is really difficult, primarily because I have to constantly work with JSON. It's pissing me off, I hate web dev enough that I wouldn't actually mind a LLM doing the entire web frontend code.
>>
>>102432524
Scam benchmark tests. Fiber is faster than the listed standard library one, but it's not that relevant anyway. Literally like .0001% difference to have a much more secure codebase that is actually maintainable and conducive to efficient work. Go apps THRIVE while Rust apps DIE.
>>
>>102423689
This, but Haskell instead of Go.
>>102423695
I like the gopher.
>>
>>102430813
...what would you be doing if you learned go?
Go is good for networking programs, mainly servers, but who the fuck writes servers as hobby projects?
Most of the time hobby programmers work on CLI tools, toy interpreters, graphics programming, video games, ...
Rust isn't any worse than Go at any of those.
Personally when I first learnt Rust I wrote a terminal program to roll dice and show the output as a tree.
>>
>>102432901
servers are gay as hell for hobbyist projects as well because it's hard to run into the truly unique problems you only find at scale.
>>
>>102432762
Haskell with batteries included stdlib like Go would be kino
>>
>>102430813
Dude, I was so close to doing the same mistake. I even started the Rust tutorials, but something happened irl that needed my full attention - which made me drop the Rust tutorial and never pick it up again. Thank god.
Rust is a twitter language, you're supposed to go there and post about Rust. No one writes it because it's a piece of shit.
>>
>>102433184
>No one writes it
Zed? Typst? I mean I hate the language as a programmer but if it gets people to drop electron and pajeetscript for IDEs and other high performance applications, then this is an absolute win for me as a user
>>
>>102428155
>access memory
>aka do a shitton of serial nonsense through SMBUS when you could have instead used the 16-1-3(-1-1 ????) fucking registers at your disposal
thank you GCC.
>>
>>102433226
Accessing memory is 1 CPU cycle for multiple accesses, because of pipe lining. The first instruction takes ~6 CPU cycles, but subsequent, only 1
>>
>>102433030
Haskell's stdlib is pretty good, it's just core functional things.
But I agree with you in a sense that it's hard to pick between libraries if you're not already familiar with them. The Haskell community is too diplomatic, and the lack of strong opinions means you can't figure out if you wanna have a "warp" server or a "servant" server. Beginners are bound to either coinflip or pick the one with the most downloads, which is what "batteries-included stdlib" solves.
>>
>>102428083
That is not true. It exists to be the best programming language for which you could fit a compiler into 64k of code and heap.
>>
>>102433336
>It exists to be the best programming language for which you could fit a compiler into 64k of code and heap.
There were still a lot of better programming languages. Unless you're defining "best" as "buggiest."
>>
>>102433201
>Zed? Typst?
Never heard of Typst, Zed is a meme.
Nonetheless, I'm not saying there are 0 total lines of Rust written in the world. I'm just saying it's a marketing-first language, where a sizeable chunk of Rust fans are nocoders. It seems to be a prominent language in two areas: startups and crypto scams.
The startups are founded by nocoders who fell for the marketing ploy and picked Rust as the company language because "I want the best for the company!". None of these seem to live very long, and none of them has made a big impact.
The crypto scams are similar in nature, some blockchains chose Rust as their official language because "everyone knows Rust is the safest", which brings confidence to non-tech investors. It's a word-play on "safe" as memory-safe and "safe" as "safe to invest in".
>>
>>102433388
>Zed is a meme
Elaborate
>>
>>102433404
No one uses it, it's a vscode clone with "AI" stapled in. It's very clearly a venture capital scam, where they'll sell the company to non-technical investors as "what is popular but with AI", trying to capitalize on the AI hype.
Pretty sure it's not even in the top 10 code editors.
>>
>>102433461
Wrong. It is vscode but not slower than windows XP boot times. Hence why I use it.
>>
>>102433376
Not really. The better ones either needed a 10+ pass compiler in order to fit on the PDP series, or only existed on mainframes. PL/1 was IBM mainframe only. Lisp had compilers but didn't have things like arrays (those came in with Lisp Machine Lisp). Pascal of that era had some major limitations, even Niklaus Wirth abandoned it due to its crippling limitations and went on to design Modula and Oberon (which later Pascal implementations then raided for ideas leading to things like Delphi). Algol and CPL were far too complex to fit on a PDP, BCPL fit beautifully but was very primitive, with no data types whatsoever, but it was widely used at AT&T and Xerox and was the basis for B and later C. Hmm what else was there... Smalltalk required specialized hardware and ran like ass even then. Mesa and Cedar also required specialized hardware but didn't run quite as ass. Ada wasn't around yet. Fortran and Cobol were but weren't "better" than C except in their specific domains. There was IAL (and its descendant JOVIAL) but they weren't better than C either. BLISS was DEC-specific, and like BCPL didn't have data types (though it did have the most powerful macro system outside of Lisp).
>>
>>102433506
The fact that you use it doesn't contradict my point.
Sorry you got butthurt by reality.
>>
>>102433506
We're all pretty sure your programming socks are the main reason you use it.
>>
>>102433522
>>102433519
Instead of whining, why don't you rewrite vscode in C, so there is an actual alternative to Zed (rust)?
You aren't a nocoder, are you?
>>
>>102433572
You're the only one whining, I don't give a shit about my text editor.
>>
>>102433597
because you don't use it enough or you are one of those "buy a new computer every five years" consoomers
>>
>>102433572
stop your hysterics, womxn.
>>
LISP is the only answer.
>>
>>102433626
What are you talking about? I write code every day, and I don't consoom like that.
Code editing is very simple, it's lightweight even if written in the worst language known to men by people who shit in the streets.
I have never in my life thought "Oh no, this editor is too slow!" - and I've used quite a few.
>>
>>102433506
firejail’d vscodium starts up in about 2 seconds for me and that’s on a stinkpad. What fucking shitbox do you have that it takes minutes?
>>
>>102433765
HP elitebook 230 something. And the start time is not even the worst thing, input lag is. Often as I type quickly I let go of the keyboard and then it takes three seconds for the text I typed to fill. vscode sucks on Linux, yeah it is fast and okay on windows but imagine using that shitware
>>
>>102433792
>lemme just backpedal and bring up a different problem for a minute after getting btfo’d
works on my machine, and by the presence of the word
firejail
in my last post you can infer that I’m using some flavor of linux
>>
>>102433792
This thing. I remembered it wrong. It is 8540
>>
File: 8540.png (1.82 MB, 1500x1359)
1.82 MB
1.82 MB PNG
>>102433850
>>
>>102425057
I say JavaScript is the new lingua franca. You might not be able to write a ui in python with good performance, but you can with JavaScript.
>>
>>102435983
this is such an utterly retarded webcucked take.
>>
>>102433508
Oh that's where Oberon comes from. People at my job are always talking about that
>>
>>102423689
Go is god awful for building anything that isn't cli
>>
>>102432996
You can simulate problematic data and 'solve' it with your tool
>>
>>102423689
>hyper-optimization of memory allocation is no longer necessary for userland.
manual memory allocation instead of having an entire program that keeps track of all memory isn't "hyper-optimization of memory allocation" you fucking retard
>>
>>102425133
>mascot that conveys that it's for children
I used to think that the mascot conveys that its for idiots.
That is why that gopher looked like an idiot like Sid from ice age. Also, the mascot was made by the language creator's wife. She good.
>>
>>102430649
who do its eyes look like breasts??
>>
>>102425057
>Javascript would sooner be declared today's lingua franca.
>Python would sooner be declared today's lingua franca.
>And I hate Python.
I notice you didn't say you hated Javascript. Do you have something to tell the class, anon?
>>
>>102423689
>throw away cpu cycles and memory for no reason
>"why is modern software so shit?"
i hate that line of thinking. kys and total gopher death
>>
>>102428083
your computer is not a fast PDP-11
>>
>>102428109
C is terrible for extracting CPU power because most CPUs have instructions that do things C can't do, even simple things like rotate bits and the carry flag. You have to actually have a way to use them in the language to be able to use everything your computer can do.
>>
>>102438750
>get 2x speed for 10x cost
i don't think it's worth it
>>
>>102423689
>And now, C# has succeeded C as the lingua franca of general purpose user-level software
fix
go doesn't have enough systems programming features for that (cgo is terrible). meanwhile exectuing C code inside C# as simple as writing "public static extern void foo();" and you can use a script to generate all binding automatically
>>
>>102438735
NTA but JS is a Scheme with a prototype-based OOP system that got mutilated with a C-style/Java syntax.
Yes, weak dynamic typing is bad, null having "object" type is bad, et cetera, et cetera, but at its core JS is not a bad language. Post 2015-2017 ECMAScript is genuinely pretty nice to use.
Python on the other hand has a much weaker foundation and is ugly under the hood (a 100% OOP language...with probably the worst OOP out of all relevant today languages with first-class OOP support). It's not without its moments, it has a lot of QoL features and included batteries, but as a language it's categorically worse than JS.
>>
>>102439026
What's bad about python's OOP?
>>
>C succeeded Assembly as the lingua franca of general purpose user-level software
Cniles and their nocoder understanding of programming have been a disaster for this board.
>>
Literally the only important piece of software written in Go is Docker. Since Docker is what makes Linux usable, I guess you could say Go is the second most important language in Linux. Aside from that, it's a meme, why would you ever used it for normal programs
>>
>>102433756
>Code editing is very simple, it's lightweight
if you don't use autocomplete or syntax highlighting
otherwise it is slow. The input lag in vscode is horrible on GNU/Linux
>>
>>102438339
Yes it is
>>
>>102438990
That is correct on Windows, but on GNU/Linux, hardly anyone uses C# and I say this as someone who likes C#. Go is much closer in terms of features, syntax and the way of thinking to C than C# is, which is why fanboys of Unix-like systems love it
>>
imperative shitlang designed to be moron-proof
>>
>>102439051
It's bare-bones and clunky, if not hacky - which in itself wouldn't be a big problem if Python wasn't 100% OOP down to the core.
For example,
list(map(lambda i: print(("Fizz"*(i%3 == 0) + "Buzz"*(i%5 == 0)) or i), range(1, 101)))
- True and False behave like 1 and 0 in numerical contexts, the bool class is a subclass of int.
This silly stuff can be nice occasionally, but anything to do with metaclasses, no private instance variables and methods, sunders and dunders, things like enums that technically exist in the standard library but I don't think anyone actually uses - it's all just awkward.
Contrast with Ruby, which is like Moon fairy technology in comparison.
>>
>>102439784
Ruby is really beautiful, I still remember how beautiful Rpg maker code was. But sadly, it is very slow
>>
>>102439160
>why would you ever used it for normal programs
It's as fast, easy, and fun to write in as Python, but more performant.

>>102439338
Yes, that's why it's good.
>>
>>102439061
OP pretty obviously isn't a cnile though, he's a 1st year CS student trolling for (you)s.
>>
>>102439810
Python is even slower than Ruby, when you're not calling baked-in stuff or modules written in C(++)/Fortran/Rust/whatever.
Like if you were to implement some custom number/data-crunching in pure Python chances are it would be slower than the same thing in pure Ruby.



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.