Gee I wonder who could be behind this post.What's your opinion of it?TBH Go is just a mini-version of what rust does better. Sure it might be easier to transition from java to Go for idiots. But just learn rust if you are going to learn a meme language.Will it see widespread use?Yes because jewgle will push it.Will it replace any other languages?Maybe java for the pajeets, maybe.

Go is the first language I don't hate. To me every other language is overly complicated or bloated or some weird abstraction magic.

Pros:- it is simple to master- it has anti new feature mentality so you won't end up with fucked up lang spec like C++- it provides just nice enough abstraction so it is no black magic fuckery behind the scenes- its faster than most high level programming languages- compiling and distribution is simple, because it by default creates static binary executable, so just werks- it doesn't really have any community at all because it is boring language, but still lots of libraries are created- doesn't shove OOP down your throat- all the functional features are nicely integrated in the language design mentality and not just bloat only to produce less code like other languages

Cons:- it is made by C people so it kinda comes with unixy mentality and some things you just gotta do the "worse is better" way, which I personaly like

What's your opinion of it?Don't have one.Will it replace any other languages?It has been around for 8 years, was designed by two legends of computer science, and is backed by one of the wealthiest and most influential tech companies in the world. If it hasn't by now, it probably won't.Will it see widespread use?It has been around for 8 years, was designed by two legends of computer science, and is backed by one of the wealthiest and most influential tech companies in the world. If it hasn't by now, it probably won't.Are you a gopher yet?No.

The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt. – Rob Pike>>851351

Go is Java done well.But moreso than C#.Go is Python done well.But moreso than Ruby (which tried to be Perl done well, so it's a bad example of better-Python in many ways.)I wouldn't blow my brains out of if I were forced to work with it.There's some cool stuff written in it, like InfluxDB.I mostly see it as barely differentiable from the "hey check out my boring language" languages that came out before the wave of "hey check out this COOL RUBY SYNTAX for an actually good language that isn't mine *or* boring". That Rob Pike worked on it doesn't make it interesting. That Google finds it useful doesn't make it interesting.

The UNIX we know today that influenced all other unix-like operating systems was one developed by Ken Thompson and Dennis Ritchie based on AT&T Unix. Today's OSes wouldn't be anything like they are today if not for their work. Ken also invented UTF-8. Not to mention that C wouldn't exists like it is if it wasn't for B (made by Ken).

Rob Pike is one of the main developers of Plan 9 which is very innovative OS.

You also completely missed the point.UNIX is and always was shit. The only way it influenced modern OSs was by showing how not to do it.Rob Pike currently does the same for programming languages with Go.

UNIX is and always was shitSo you are that pathetic LARPer that keep posting this forced contrarian bullshit. I rarely say this, but get a fucking life. Nobody gives a fuck about your special snowflake opinion that you must insert in EVERY single thread about these subjects.

There is nothing Go does better than already existing languages. Prove me wrong.Go is the only programming language that does ALL that:compile to binary executable by DEFAULT, no need to install dependencies and interpreter/bytecode vmeasy compile for different platforms (only 1 flag needed)garbage collectorrich standard libraryfast compilationsimple pretty much feature complete language that doesn't indefinitely grows more bloat (C++, Java, C#...)simple in design, easy to master (unlike Rust)simple abstractions, no need to fuck around with behind the scene magic language does for you (like Python) or need to be overly careful (like with C)C style syntax (so no Python, Ruby shit)no OOPpredefined code style, meaning everybody writes the same code style

Name 1 programming language that does all this. You CAN'T. The point is not that Go is the best language, because spoiler, it isn't. No language is the best, it depends on what you want. And I and many others want these things more than new hipster functional feature #431 that will surely innovate programming.

You mean designed for retards?Simple doesn't necessary mean easy. Read on "worse is better", UNIX philosophy, KISS etc...I would argue anyone who would want overengineered complex languages like C++ and Rust retarded, but hey that's just me.

Unironically Java. If generics are too hard for you, you can use Java 1.4.It's like you can't read. Java needs JVM. Failed first thing I pointed out I want. And it is forced OOP garbage. Generics are also one of the worsts things about Java. Obviously generics are useful, but they are not necessary and Java version of generics is horrible.

It's like you can't or won't understand that people want different things as you.

golang.org/pkg/math/#Mingolang.org/pkg/math/#MaxRetard. Look at the function signatures of the math package. All of those are for floating point numbers.Also why is there no round function? Does Go seriously have no round function for floating point numbers??

Java needs JVMProtip: nobody cares.forced OOP garbageProtip: You can deal with it way easier than with a lack of generics. Generics are also one of the worsts things about Java. Obviously generics are useful, but they are not necessaryOk. I also enjoy having to write my own type system that runs at runtime.Java version of generics is horrible.agreedIt's like you can't or won't understand that people want different things as you.see There is nothing Go does better than already existing languages. Prove me wrong.Where did I say that I cared about what language other people use?

All of those are for floating point numbers.Are you serious right now? Is this too hard for you? Are you trolling?

func min(a, b int) int { if a < b { return a } return b}

Also why is there no round function?It is coming in next version of Go. So in few months. They refused to add it first because it is not hard to do it manually, but obviously it was stupid decision and they acknowledge it and now they are changing it.

Protip: nobody cares.You don't care. Other people care.

Protip: You can deal with it way easier than with a lack of generics. What a shit argument. It is a design flaw of the language. No generics is on purpose to try to keep the simplicity of the language. Show me generics in C? Yeah we can't live without them right? And you call other people retarded?

I also enjoy having to write my own type system that runs at runtime.Obviously I agree with that, but the point is that it is a pointless nitpick. I bet you get all those sweet "original" opinions from /r/programming. Golang devs acknowledged that generics like system would be useful and they are thinking about it for Go2, but personally I would rather have no generics than bad generics.

There is nothing Go does better than already existing languages. Prove me wrong.Where did I say that I cared about what language other people use?And I don't care about what you want to use or feel like is shit. The whole point of Go is not that it has a shiny need innovative feature that no other language has. It is a combination of everything that Go does by default that makes is better language than dealing with anything else. I have been programming for 10 years and have been waiting for something like Go for a long time because EVERYTHING else fucking sucks FOR ME. You post in this thread your post: "lol go sucks because I don't like it and that makes it official and objective".

I am still waiting for you to point out 1 language that does everything I pointed out in . Because if you can't give 1 correct example then it means that Go is unique enough to fill the niche.

Are you serious right now? Is this too hard for you? Are you trolling?No. Are you trolling?because it is not hard to do it manuallyAlright. Write a correct implementation.muh simplicityTypical Gotard excusing obvious shortcomings. I'm done arguing with someone who obviously has stockholm syndrome.I am still waiting for you to point out 1 language that does everything I pointed out in . I am still waiting for you to point out one thing that Go does better than already existing languages.

All those spelling mistake. I need to go to sleep. Close minded people like you really fucking annoy me to no end. I am still waiting for you to point out one thing that Go does better than already existing languages.I already did that! I keep telling you. It is the combination of Go features that makes it better programming workflow over other languages. I can output single static binary executable that gets compiled really fast while still having garbage collection and rich standard library. I don't have to eat shitty new features that some retarded committee pushed down my throat because some retarded hipsters shilled for them at conferences. How can you not understand that? Even if some language does 1 thing better and at the same time does 5 things worse that doesn't make it better imo. But that is subjective. It is like you can't understand people like different things. How can you just dismiss that and say it is shit language? It is shit for you personally, so what? I don't care about that, but then stop writing in every thread your retarded opinion like it is a fact. I really hate people like you. Can't have a honest discussion with dishonest person.

The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt.– Rob Pike

It must be familiar, roughly C-like. Programmers working at Google are early in their careers and are most familiar with procedural languages, particularly from the C family. The need to get programmers productive quickly in a new language means that the language cannot be too radical.– Rob Pike

I am not retarded and why bait? I am 100% serious. What language does all of that out of the box?

I don't understand why this keep getting posted. Rob is simply shilling Go because the simplicity of the language is a plus not a minus. Is like you are implying it is gimped down like VB6 or shit like that. Essentially what he is saying is that Go code is easy to learn and understand even if you haven't programmed in it before for long period of time, unlike other languages like C++ and Rust...

I am going to sleep. It feels really pointless to argue with people that don't want to try to understand some merits of the language. It is not like I am saying it must be the only language and the best. It caters to a certain niche of problems and it solves it really nicely.

posts incorrect round functionThis is exactly why there should be a round function in the standard library. Ironically you BTFO'ed yourself with your claim "rich standard library".Round(4.503599627370497e+15) = 4.503599627370498e+15It should be 4.503599627370498e+15.

we're hiring people based on their skin color and genderbut it turns out the colors and genders we hire aren't very good at programming for some reasonin order to get literally fucking anything done around here, we have to make them use a language that's dead simple

Rob Pike may very well be the only one there with any sense, mostly because all the other people with any sense fucking LEFT. So it's just Rob, and Rob is smart so he knows if he shaves his head and wears pink and uses PC language he can avoid being castrated by the HR department. Maybe Rob is a cuck that just couldn't leave Google, or maybe he's a real patriot that still believes in Google after all these years. He knows he can't stop them hiring Pajeets and women, but he knows what he has to do to at least herd them into some semblance of productivity.

the creators don't want to add them...More like, they don't know how to add them without making the language spec needlessly complicated, seeing as one of Go's main goals is to be very simple to learn and use, with minimal "magic".There have been a ton of talks about getting it into 2.0 at least, with different proposals on syntax and shit.

I don't understand why this keep getting postedYou don't seem to know where you are; Holla Forums, like /g/ before it, is filled with snotty elitists that don't actually know how to program. Something being described as "easy" to learn, to them, is seen as "inferior".

You don't seem to know where you are; Holla Forums, like /g/ before it, is filled with snotty elitists that don't actually know how to program. Something being described as "easy" to learn, to them, is seen as "inferior".Nice ad hominem, Gopher. Unfortunatley for you it is you Gophers that don't know how to program. See and cockroachlabs.com/blog/rounding-implementations-in-go/

^ Braindead, doesn't see the obvious pattern of mega corporations pushing $LANGUAGE down everyone's throats. Sun with Java, Microsoft with C#, Google with Go, and so on. They do it so they can hire legions of pajeets, because it helps them fill their pockets, while paying less to programmers (that's us btw, you cuck), plus keeping programmers on a tight leash with lots of mandatory overtime and 24h on-call (H1B's can't do shit about it or they get fired and sent home). But wait, that's not all. The software gets shittier and more bloated, because idiots can't be arsed to learn fundamentals of programming so they end up making lots of bugs anyway. That's modern software development and now you see the future: more buggy Intel processors to barely make up for shit, inefficient code. As it turns out, Terry Davis is the sanest one of all.

Did you even read your link?Finally, correctly rounding floating point numbers is ridiculously hard. It is no surprise that Java was broken for 6 major versions (15 years since the release of the Java 1.0 until Java 7)The round will be in standard library in 1 month. What is your point?The solution that you were given works for simple inputs. Obviously if your input is 4.503599627370497e+15 then you must handle more edge cases.

Btw did you even the javadoc?docs.oracle.com/javase/6/docs/api/java/lang/Math.html#round(double)Returns the closest long to the argument. The result is rounded to an integer by adding 1/2, taking the floor of the result, and casting the result to type long. In other words, the result is equal to the value of the expression: (long)Math.floor(a + 0.5d)This is pretty retarded but hardly broken.

I don't hate the language. I'm ok with a GC language with the simplicity of C existing. It just doesn't appeal that much to me, and may be overused in some cases.I can see it being used for glue code for example.

Go is great for developing microservices because of the concurrency features. Channels and goroutines are ace. I use it for game development, it's a powerful language with a simple syntax (so code is usually "correct"), and GC means I don't have to write a complex system that manually frees random garbage.

using C++ everrunning srand in a loopfunction calls inconsistently hugging their ()repeating the size of the arrayreturning a value >127 from main()making an array of one-letter strings instead of using a single stringinconsistent indentationcapital Idunno what I(2) means butusing C++ ever

See? You're clearly a larper. First, you don't make any argument at all ( '> :=' is barely a statement, and that's only by contextual implication), Then you make an assumption about my character because I didn't learn Java at Kharagpur Institute of Technology

batteries-included languageTypical go user, even talks like a corporate marketing drone.I cringed while writing that buzzword but it was a relevant way to explain it. Calling it bloat isn't accurate as it doesn't need to be included by default.

The biggest reason I don't use "Go for everything" like shills exclaim they do is that the binaries are over 1mb because the complete runtime is packaged with your application. Garbage collection, debugging, etc is all bundled in. THIS is what I would call bloat.

Go for everythingI have never in seen anyone who would advocate using "Go for everything". It is common sense to use the "best" (often subjective) tool for the job. Me personally I would never write GUI applications in Go.

I ended up trying to use it for a project at work. I actually found myself enjoying it a lot and got really into it. My other teammates seemed to be having more fun too (one was an old Unix C dev and the other a middle aged Windows dev so I thought it was interesting the enjoyment factor was crossing generational and platform boundaries). Actual development time seemed to be going really quick too, though I guess everything's easier when you're having fun.

Unfortunately, when we were nearly done with the project and gave a demo, we got told to throw it away and redo it because it "wasn't in Java" (this was never stated as an upfront requirement, political enterprise BS). I fucking hate my job now.

Yeah that is why there should be a round function in the standard library instead of going full "muh simplicity" and requiring retarded Gophers to implement incorrect rounding functions over and over again.

No, I'm serious, it really sounds like marketing speak. Also it's bogus because how the fuck do they know what libraries I'm gonna need? Does it handle graphics and sound like SDL, as well as sprites and playfield functions like say Amiga or TempleOS? I'm betting this batteries stuff is hand-waving where they pretend everyone is making web apps and other boring shit.

"Go is shit language because I don't agree with <insert_random_nickpick> and every one who uses it is retarded because I said so. retard retard retard lol lol lol"And when people try to explain to you why they like it and don't agree with your childish complaints, you just keep spamming the same shit, like you want to get a medal in debate. Nobody cares about your random petty complains and when they try to have a proper discussion, you shit this thread with the pointless comments. 25% of all comments in this thread are yours. Completely ruined the thread that could be a good discussion. I don't want an echo chamber but still discussing anything with you is pointless. I feel bad for you man, not trying to be mean. I need to fuck off of chans, I am too old for this shit.

Yeah I'm so childish because I'm not constantly sucking down corporate propaganda about what language is cool in $CURRENT_YEAR and what kind of applications have merit. Batteries aren't included, because it's not a fucking flashlight or other such device. It's a shitty analogy that useful idiots repeat and they don't even get paid for it by the company. I'd be laughing if it wasn't so sad. All these fucking new-fangled corporate-backed language shills are full retards, period.

Yeah I'm so childish because I'm not constantly sucking down corporate propaganda about what language is cool in $CURRENT_YEAR and what kind of applications have merit. Batteries aren't included, because it's not a fucking flashlight or other such device. It's a shitty analogy that useful idiots repeat and they don't even get paid for it by the company. I'd be laughing if it wasn't so sad. All these fucking new-fangled corporate-backed language shills are full retards, period.

Also look at this shit: I hope it will replace Perl, Python, Ruby, Java, C#, and similar languages that are easy to prototype in.What the fuck is the point of this mentality, where you always want to fucking replace shit with more lame shit just so it can be different? You're fucking retarded! Fucking nigger!

If you took 5 minutes to read a little bit about the language you'd know "batteries included" refers to things that are commonly needed but you'd typically need to introduce another dependency for, like crypto or a web server. I'm not saying it covers every possible use case (I think there is a certain amount of built in support in the standard library for SQL databases, but you need a library for talking to MongoDB, for example) but it's pretty good. I would never tell anyone the language is great for everything and can replace every other language, that's just stupid, but there are some cases where it's a really good fit. Shockingly, some choices in life come down to picking the right tool for the job and/or personal preference.

meme languages with built in functions encouraging the worst practices of programming resulting in bloated garbage that requires gigabytes of memory and other ridiculous requirementsimpossible to maintain spaghetti that you have to pay people to look atno thx bye

Are you actually thinking before you post? If a feature is in the standard library but you don't use it, then it won't affect the size of your program. If you don't use web related parts of the standard library, you will not be affected by their existence.

I actually think the web server is pretty nice, but there are some nice middlewares and libraries that save you time with dynamic routing and other day-to-day things. I prefer Julien Schmidt's httprouter because it's just enough for the stuff I typically want to do, but Chi is really nice from what I've read.

Running srand() in a loop isn't "semantics". It's defective. Use your PRNG properly.You didn't "forget one tab", you indented the entire loop for no reason.If else while are not functions. Their parens aren't what I was referring to. Fucking hell you can't even see the problems when they're pointed out to you.

youtube.com/watch?v=ENLWEfi0TkgWell, I had never before heard this man talk. It is definitely a disguise. He is a wise man pretending to wear a millennial facade, and you can tell he doesn't even give a damn that it shows it's a facade.

On a related note, I think Upspin sounds like a good idea. What do you think?

Well terrible is kind of a big overstatement. The quality is good enough for most purposes as long as you seed it right.The biggest problems of Mersenne Twister are that it has a massive state size (2.5 KiB) and is slow.For most use cases even a LCG beats the fuck out of Mersenne Twister.

Actually, I can't. But you can start at Volta Laboratory and Bureau and how it ties to the creation of Plan 9 (emphasis on Nine) and the people behind all that.I do believe Rob Pike is a big picture guy. One of those that help shape the world. What I'm not so sure of yet is whether this is so in a good or a bad way.

The problem with Upspin is the orwellian centralized key server. There's no security there. Who cares if everything is end-to-end encrypted when all the keys are stored in the same place for Google and the government to peruse at their leisure? It's prototyped on email, but email doesn't need some centralized single server fuckery to work. Why stop at letting users host their own storage servers? Let me host my own key servers too, have many key servers, fuck his "I don't want to split (((the community)))" nonsense.

Yeah, the centralization bit isn't good. But a system like this with a decentralized mesh of key servers would be nice, though.In the end it doesn't matter, because Normal McNormie is going to use Facebook Cloud(tm) or some such.

because Normal McNormie is going to use Facebook Cloud(tm) or some suchSo? That's fine. Let him use what he wants. Who the fuck said we have to cater to him? Linux tried to cater to normalfags for decades and it turned into a fucking disaster.

We don't have to cater to him, but systems like the one we're discussing have the potential to make technology work in favor of mankind instead of working for the matrix.Regardless of whether you consider this is something desirable, my point was that people's intellectual laziness and lack of self-respect is ultimately what fucks this world up.

We are also too poor, hardware has incredibly high fixed costs which makes projects like TALOS almost die and the low variable costs make the oligopolies unassailable. The rich are not going to finance libre hardware for obvious reasons and the commoners have not been robbed of all their money yet and some (very few) might support us. The armboard scammers like rpi etc. do well enogh.

tfw your language is so shit you have to resort to unconstrained type erasure to make up for the lack of genericstfw you pray no one will accidentally pass an x or an arr with the wrong type"Fuck compile-time errors, run-time errors are good enough for me"t. rob pike

I don't know if Minow is committing the hagiolatry oneassociates with the typical weenix unie, but I really feelthat any further mention of the reputed tear-inspiringbeauty, simplicity, symmetry, economy, etc of "V7" (orwhatever) Unix should be cause for immediate and permanentexpulsion from present company.

I've seen quite a number of allusions to some downwardfall of unix even in this forum. Let's get this straightonce an for all: Unix was flawed from conception. Itsentire New-Jerseyist philosophy is flawed. In fact, itsentire "philosophy" is a Source of Evil in the Modern World.

THERE WAS AND IS NO FALLING-OFF FROM A WORLD OFUNDIVIDED LIGHT. THERE WAS NO GREAT PURE, PRIMORDIAL,PRELAPSARIAN UNIX. The Unix you see, with which youstruggle, which you curse, is not a diseased and reducedremnant, but is itself the agent of disease and reduction.

How can one lose sight of that?

I don't regard it a "real" UNIX, then again I wouldn't buy a"real" UNIX, 1970s software technology is not something Iwould want to buy today.

Getting caught up in the "pure" UNIX war will lead you torestrict yourself to "pure" SVR4 implementations, in themainstream camp *only* SUN have gone for this. That in myview does not make it much of a "standard".

If a vendor decides to do something about the crassinadequacies of UNIX we should give them three cheers, notstart a flame war about how the DIRECTORY command *must*forever and ever be called ls because that is what the greattin pot Gods who wrote UNIX thought was a nice, clear namefor it.

The most threatening thing I see in computing today is the"we have found the answer, all heretics will perish"attitude. I have an awful lot of experience in computing, Ihave used six or seven operating systems and I have evenwritten one. UNIX in my view is an abomination, it hasserious difficulties, these could have been fixed quiteeasily, but I now realize nobody ever will.

At the moment I use a VMS box, I do so because I find that Ido not spend my time having to think in the "UNIX" mentalitythat centers around kludges. I do not have to tolerate ahelp system that begins its insults of the user by beinginvoked with "man".

Apollo in my view were the only UNIX vendor to realize thatthey had to put work into the basic operating system. Theyhad ACLs, shared libraries and many other essential featuresfive years ago.

What I find disgusting about UNIX is that it has *never*grown any operating system extensions of its own, all thecreative work is derived from VMS, Multics and theoperating systems it killed.

What if Go was made by Joe Schmoe or Pajeet? What if UNIX didn't have the AT&T name on it?

stupid niche contrarian anti-UNIX bullshitYou have Stockholm syndrome because of marketing bullshit started by AT&T in the 80s. Nothing much has changed from 1992 to 2018. They're still blaming the user, still making crappy programs and telling you it's "simpler", still telling us that bugs and flaws are actually the "real operating system" way to do things.

Nothing before or since has surpassed it, except maybe P9. But that fucked up by being barely-usable.Nothing has surpassed it in its ability to suck, to waste time, to be barely-usable, to be unfixable, to turn people into corporate shills for AT&T software, to create Stockholm syndrome among users.

If there's one thing which truly pisses me off, it is theattempt to pretend that there is anything vaguely "academic"about this stuff. I mean, can you think of anything closerto hell on earth than a "conference" full of unix geekspresenting their oh-so-rigourous "papers" on, say, "SMURFY:An automatic cron-driven fsck-daemon"?

I don't see how being "professional" can help anything;anybody with a vaguely professional (ie non-twinkie-addled)attitude to producing robust software knows the emperor hasno clothes. The problem is a generation of swine -- bothprogrammers and marketeers -- whose comparative view of unixcomes from the vale of MS-DOS and who are particularlysusceptible to the superficial dogma of the unix cult.(They actually rather remind me of typical hyper-reactionarySoviet emigres.)

These people are seemingly -incapable- of even believingthat not only is better possible, but that better could haveonce existed in the world before driven out by worse. Well,perhaps they acknowledge that there might be room for someincidental clean-ups, but nothing that the boys at Bell Labsor Sun aren't about to deal with using C++ or Plan-9, or,alternately, that the sacred Founding Fathers hadn'texpressed more perfectly in the original V7 writ (if only wepaid more heed to the true, original strains of the unixcreed!)

My perspective on this matter, and my "reading" of thematerial which is the subject of this list, is that the twoare inseparable. The "fundamental design flaw" of unix isan -attitude-, and attitude that says that 70% is goodenough, that robustness is no virtue, that millions of usersand programmers should be hostage to the convenience orlaziness of a cadre of "systems programmers", that one'stime should be valued at nothing and that one's knowledgeshould be regarded as provisional at best and expendable ata moment's notice.

My view is that flaming about some cretin using afixed-sized buffer in some program like "uniq" says just asmuch about unix as pointing out that this operating systemof the future has a process scheduler out of the dark agesor a least-common-denominator filesystem (or IPCs or systemcalls or anything else, it -doesn't matter-!)

The incidental -is- fundamental in dissecting unix, much asit is in any close (say, literary or historical) reading.Patterns of improbity and venality and outright failure arerevealed to us through any examination of the minutiae ofany implementation, especially when we remember that onecornerstone of unix pietism is that any task is really nomore than the sum of its individual parts. (Puny tools forpuny users.)

And speaking of revealing patterns of abuse throughobservation of detail, has anybody considered that unixgeeks might be Adult Children or Survivors or be permanentlyIn Recovery? Perhaps they were sodomised by an awk at ayoung age, leading to a parodoxical attachment to the agentof their humiliation? If we could persuade them them tospend all their time attending pop-psych workshops in thewoods ("Fire in the John"), beating drums and invoking theshade of Dennis Ritchie, we could keep them away from theirkeyboards...

I'd much rather be running something like CP/M or even a straight-up Forth REPL, but frankly Unix is the least worst thing today that actually has the necessary drivers for ACPI, USB, and such unfortunate complexities. At least it doesn't force you to use the desktop shits constantly, so you can boot into a simple text or framebuffer console. Otherwise, TempleOS is the only decent modern thing.

all known implementation(s) are badthe UNIX philosophy is not badIt's worse than bad, it's a disease.

Yesterday Rob Pike from Bell Labs gave a talk on the latestand greatest successor to unix, called Plan 9. Basically hedescribed ITS's mechanism for using file channels to controlresources as if it were the greatest new idea since thewheel.

There may have been more; I took off after he credited Unixwith the invention of the hierarchial file system!

Amazing, wasn't it? They've even reinvented the JOB device.In another couple of years I expect they will discover theneed for PCLSRing (there were already hints of this in histalk yesterday).

I suppose we could try explaining this to them now, butthey'll only look at us cross-eyed and sputter somethingabout how complex and inelegant that would be. And thenwe'd really lose it when they come back and tell us how theyinvented this really simple and elegant new thing...

Last night I dreamed that the Real World had adopted the"Unix Philosophy."

I went to a fast-food place for lunch. When I arrived, Ifound that the menu had been taken down, and all theemployees were standing in a line behind the counter waitingfor my orders. Each of them was smaller than I remembered,there were more of them than I'd ever seen before, and theyhad very strange names on their nametags.

I tried to give my order to the first employee, but he justsaid something about a "syntax error." I tried anotheremployee with no more luck. He just said "Eh?" no matterwhat I told him. I had similar experiences with severalother employees. (One employee named "ed" didn't even say"Eh?," he just looked at me quizzically.) Disgusted, Isought out the manager (at least it said "man" on hisnametag) and asked him for help. He told me that he didn'tknow anything about "help," and to try somebody else with astrange name for more information.

The fellow with the strange name didn't know anything about"help" either, but when I told him I just wanted to order hedirected me to a girl named "oe," who handled order entry.(He also told me about several other employees I couldn'tcare less about, but at least I got the information Ineeded.)

I went to "oe" and when I got to the front of the queue shejust smiled at me. I smiled back. She just smiled somemore. Eventually I realized that I shouldn't expect aprompt. I asked for a hamburger. She didn't respond, butsince she didn't say "Eh?" I knew I'd done something right.We smiled at each other for a little while longer, then Itold her I was finished with my order. She directed me tothe cashier, where I paid and received my order.

The hamburger was fine, but it was completely bare... noteven a bun. I went back to "oe" to complain, but she justsaid "Eh?" a lot. I went to the manager and asked him about"oe." The manager explained to me that "oe" had thousandsof options, but if I wanted any of them I'd have to know inadvance what they were and exactly how to ask for them.

He also told me about "vi," who would write down my orderand let me correct it before I was done, and how to hand thewritten order to "oe". "vi" had a nasty habit of writingdown my corrections unless I told her that I was about tomake a correction, but it was still easier than dealingdirectly with "oe."

By this time I was really hungry, but I didn't have enoughmoney to order again, so I figured out how to redirectsomebody else's order to my plate. Security was pretty laxat that place.

As I was walking out the door, I was snagged in a giant Net.I screamed and woke up.

You forgot the software curse of backward compatibility. And you still don't have any argument against the philosophy itself.

Honestly, most of POSIX and SUS would be fixed if they standardized the tool interface. For example, choose a field separator (\t), a record separator (\n) and don't allow these in any tool output, filename, etc...You can now do robust shell scripting without all those GNU extensions that allow \0 as a delimiter. There's a lot to improve in stuff like sh and awk, too; on the spot, most of what rc did, but while having fucking elses, and for awk, cut-like field references. There's too much to list, but we really need a POSIX2.

You forgot the software curse of backward compatibility.AT&T didn't care about backward compatibility. They replaced the existing RFCs and standards with UNIX bugs.

And you still don't have any argument against the philosophy itself.The philosophy leads to bad programming. It leads to bugs. It leads to duplicate code. It leads to "extending" broken code instead of rewriting from scratch. How many ad hoc text processing "tools" does UNIX need? sed, awk, cut, paste, grep, cat, tac, nl, split, sort, tsort, head, tail, and all the others?

Honestly, most of POSIX and SUS would be fixed if they standardized the tool interface. For example, choose a field separator (\t), a record separator (\n) and don't allow these in any tool output, filename, etc...ASCII already has standard control characters for separating records and fields, FS, GS, RS, and US. AT&T did not care about the proper use of the ASCII standard. They probably use tabs and newlines because they're intended for human output and UNIX glorifies "munging" human readable text instead of calling APIs to get information.

You can now do robust shell scripting without all those GNU extensions that allow \0 as a delimiter. There's a lot to improve in stuff like sh and awk, too; on the spot, most of what rc did, but while having fucking elses, and for awk, cut-like field references. There's too much to list, but we really need a POSIX2.Add a useful shell that can do the work of awk better and throw the "tools" in the garbage. POSIX "Shell & Utilities" are now one program, besides compiler software. The "System Interfaces" need a lot of work too. I'd start by getting rid of anything that depends on null-terminated strings.

You speak of 'Un*x' as if was some complete and well formedentity, particularly when it comes to networking (which wasonly glommed on in recent history).

I just loved that what AT*T sold as the "Basic NetworkingUtilities" package was UUCP! Basic Networking, yeah right.For g*ds sake, RFC1 is dated 1969, before Un*x was evenstarting taking up disk space.

Please see RFC1288 (one of my favourites of a recent slewwhich redefine protocols to agree with unix implementationbugs.)

Normal maps are a type you define, like map[string]float64, so that keys are strings and values are float64. (Why you would do that is beyond me.sync.Map is (basically) a map[interface{}]unsafe.Pointer with a hidden mutex (for thread safety), which basically means the keys are generic, and the values are pointers, so it's sorta generic, but means you have to type type assertion shit, because Go doesn't actually have generics.

The philosophy leads to bad programming. It leads to bugs. It leads to duplicate code. It leads to "extending" broken code instead of rewriting from scratch.Except it doesn't since the philosophy is literally "do on thing and do it well". Meaning no duplication and no tinkering to add "missing features". You can say that UNIX itself was a poor implementation of the "UNIX philosophy", though.

someone needs to make a meme of this fuckin gopher carrying around a bag of garbage so all the people who spend all their time sucking googles dick can remember they are garbage and so are their programs because this fuckin rodent likes collecting the garbage data of garbage programmers.your language is bad and you should feel badseriously go program in python or javascriptif you had half a brain youd take the time to learn rust

What the fuck is Ord supposed to be? Why doesn't it say return when it returns something? Why is the syntax so ugly? Why can you export the function if max is not capitalized? Even worse, what's this T? It comes out of nowhere. Nobody is going to understand that.

Except it doesn't since the philosophy is literally "do on thing and do it well".It's "everything is raw byte files", "software tools", and other bullshit. The opposite of UNIX philosophy is "do one thing and do it well", which is called orthogonality and modularity. There is a lot of duplication and overlap and the "tools" are ad hoc and aren't organized in meaningful ways.

Meaning no duplication and no tinkering to add "missing features".There is no duplication between sed, awk, cut, paste, grep, cat, tac, nl, split, sort, tsort, head, tail, and all these other "tools"? None of them have added more features since the first version?

You can say that UNIX itself was a poor implementation of the "UNIX philosophy", though.If it doesn't describe UNIX, it shouldn't be called the "UNIX philosophy" at all. What AT&T shill invented "UNIX™ philosophy" to replace English adjectives that don't even describe UNIX?

Well, I fritter away some more idle minutes running anotherten or so iterations of running my shell script, adding andremoving switches, carefully checking that no commands arealiased, that my search path is correct, that I'm actuallyrunning grep on the correct files and that I am reallyinvoking grep without the "-h Do not display filenames"switch. I check the non-setting of "-h" many times, sincehaving it set would produce exactly the sort of lossage Iwas experiencing.

Finally, about to tear my hair out, I happen to type "c-L"in the Emacs buffer in which the grep options are displayed.This recentres the window such that three additional linesappear at the top of the buffer's window. I read

---------------------------------------------------------------------- want the filename to appear, use /dev/null as a second file in the list.----------------------------------------------------------------------ARRGGGGGGGGGGGHHHHHHHH.

I scroll back and read the whole screen:---------------------------------------------------------------------- When any of the grep utilities is applied to more than one input file, the name of the file is displayed preceding each line which matches the pattern. The filename is not displayed when processing a single file, so if you actually want the filename to appear, use /dev/null as a second file in the list.

OPTIONS -b Precede each line by the block number on which it was found. This is sometimes useful in locating disk block numbers by context.

-c Display a count of matching lines rather than

displaying the lines which match.

-h Do not display filenames.----------------------------------------------------------------------

Incidentally (or not -- YOU be the judge!) this is EXACTLYthe kind of bullshite which makes the "ls" command lose sobadly (and which, incidentally, contributes to every unixFTP server flagrantly violating the FTP spec): the defaultfilename argument for "ls" (the current directory) istotally different from specifying "ls * .*" (which one mightthink would be the same thing) because bloody cretinous "ls"descends into subdirectories which are specified on thecommand-line, even those without a trailing "/" (even ifunix had some command-line convention to discriminatebetween "the directory" and "the files of the directory",which it doesn't) and even those which are a result of awild-card expansion (even if unix commands knew anythingabout wild-cards, which they don't.)

(I won't even start to rant on the matter of needing ".*" inaddition to "*" to get all of the files in a directory. Iwon't. I won't. I won't.)

Even worse, what's this T?T is a generic type it could have been called anything just like a variable or function

What the fuck is Ord supposed to be?en.wikipedia.org/wiki/Ordinal_numberit means that your generic type T has some method that can be used to order unique values which is required to determine what less than and greater than mean to the compiler

Why doesn't it say return when it returns something? Why can you export the function if max is not capitalized? you can use a return statement and capitalize whatever you want, the real question is, why should we be following arbitrary rules that dont affect the compiled code?

the thing about learning to use a real systems programming language is you have to know how the system actually works, if you dont want to go that, youre a garbage programmer and should be using a garbage collected language anyway because youre garbage mentality could never produce good code.

I HATE satori, the maintainer of go.uuid. What a CUNT. I'm sold on using any sort of retarded vendoring because of people like him. The guy's package is OLD, has 1,717 stars and has 200 forks on Github AND THE GUY BREAKS THE API, APPARENTLY WITHOUT ANY NOTICE.

seeing all of those communists get flummoxedI am errect. On-topic, can you not build a static dependency on your end to then reference anytime you need build your Go implementation? I'm reading the docs and it looks like you can. It's not downloadable from Go's package manager, but then, why would you distribute a go program that relies on other go packages?

Go has 'import github repository'. Jesus christ you're at their fucking mercy then. Can you at least specify a git branch or tag on the import? At least the more sane repos have versioned and tagged releases you can hit with #1.2.3 and shit.

Can you at least specify a git branch or tag on the import?No, it can only pull master. You need third party shit for that. I don't know how well the external package managers work because I don't use shit languages.

Why would anybody ever use Go? It's own creator admits that it's literally been purpose built for drooling retards, niggers, and pajeets who can't deal with real programming languages.The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt.

FYI this is not needed. At work, I simply commit all 3rd party dependencies to our repo (under a separate GOPATH though). This way our build server can grab all the required code to build with one git fetch.

Umaru is fucking disgusting, I hope Onii-san marries Ebina and they move into country, leaving Umaru living alone, unable to take care of herself, lying in a puddle of her own piss and shit, leading to her dropping out of school, selling her consoles just to survive and ultimately her own body as well.

Confirm your age

About Privacy

We use cookies to personalize content and ads, to provide social media features and to analyze our traffic. We also share information about your use of our site with our advertising and analytics partners.