[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

>he actually uses C++ exclusively when C is better 99% of the time

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 320
Thread images: 17

File: 1482968677529.jpg (132KB, 500x351px) Image search: [Google]
1482968677529.jpg
132KB, 500x351px
>he actually uses C++ exclusively when C is better 99% of the time
>>
>>59026570
>2017
>using C when C/C++ or C# exists
>>
>tfw find C easier to write and the libraries more stable / high performance
best language
>>
File: IMG_20170208_124316.jpg (3MB, 3036x4048px) Image search: [Google]
IMG_20170208_124316.jpg
3MB, 3036x4048px
>>59026570
>he uses C++ when Rust is better
>he doesnt use C primarily
>he isnt using Clang
>HES A GNUMALE
>>
>>59026631
>clang
hey karlie
>>
>>59026570
Have fun writing a game in C. C is only good for autistic shit like systems development.
>>
>>59026673
>writing games
>important
And almost every game nowadays is just built using scripting in something like Unreal or Unity.
>>
>>59026673
>I want to create gayms mom! XDDD
>>
>>59026570
>know C
>try to learn C++
>see a bunch of :: and bitwise shifts
>stop
why
>>
>>59026769
It was designed by an autistic dane literally because he wanted to prevent people from getting into programming
>>
>>59026622
>best language
https://www.youtube.com/watch?v=KlPC3O1DVcg
>>
File: 2.jpg (70KB, 1280x720px) Image search: [Google]
2.jpg
70KB, 1280x720px
>>59026781
not actually true though
>>
>>59026781
>>59027181
https://www.youtube.com/watch?v=JBjjnqG0BP8
The actual reason
>>
>>59026622
So what do you do when you want to write generic code that can operate on multiple different data types? For example a resizable array. To avoid writing the same code for each data type you want supported, it's much easier to use templates in C++. What would you do in C?
>>
>>59026769
it's even crazier now
auto foo(int) -> int;
>>
>>59026769
>literally afraid of namespaces
Shit tier code monkey. Would not hire.
>>
>>59026769
Operator overloading was a mistake.

Namespaces are not.

Leaking namespaces through #include was.

Thank C++ for showing all the languages-to-be how not to do it.
>>
>>59026570
The parts of C that don't have better counterparts in C++ are part of C++ anyway.
>>
>Not using golang
Good luck with multithreading. And yes, your implementation is wrong
>>
>>59026631
>>59026591
Add golang onto that list. Serious applications where security, performance, and productivity are required would mean without golang things like docker wouldn't exist. Rust is a close second.

C takes far too long to make anything productive in it.
>>
>>59026570
C is a subset of C++
Checkmate, atheists
>>
>>59030054
yeah I have to agree, Go is quite nice.
>>
File: qt-hello-form-cpp.png (87KB, 894x661px) Image search: [Google]
qt-hello-form-cpp.png
87KB, 894x661px
>implying sepples isn't comfy af
>>
File: 1484492458206.png (558KB, 1440x900px) Image search: [Google]
1484492458206.png
558KB, 1440x900px
>he uses a language from the C family when Object Pascal exists
>>
Implement the following in C using only the standard library in a cross platform way
 
#include <iostream>
#include <thread>
void hello()
{
std::cout<<"Hello Concurrent World\n";
}
int main()
{
std::thread t(hello);
t.join();
}
>>
>>59032461
Damn, guess I need to use a different thread-spawning function for my multithreaded hello world on Windows.

Also, C++'s statically linked executables are even larger than Go's, so these "cross platform" libraries come with a cost.
>>
>>59032512
>>59032461
There's threads in C11 standard.
>>
>>59032432
using netbeans to write c++ using qt

nigga why? just fucking use qt creator
>>
>>59032526

Yeah, too bad glibc is shit though.

https://sourceware.org/bugzilla/show_bug.cgi?id=14092
>>
>>59026742
:-(
>>
>>59032461
#include <stdio.h>
#include <threads.h>

#define NUM_THREADS 2

static int threadData[NUM_THREADS];

int
threadFunction(void * data) {
printf("Hello %d-th world\n", *(int*)data);
return 0;
}

int
main(void) {
thrd_t threadId[NUM_THREADS];

// init thread data
for (int i=0; i < NUM_THREADS; ++i)
threadData[i] = i;

// start NUM_THREADS amount of threads
for (int i=0; i < NUM_THREADS; ++i) {
if (thrd_create(threadId+i, threadFunction, threadData+i) != thrd_success) {
printf("%d-th thread create error\n", i);
return 0;
}
}

// wait until all threads terminates
for (int i=0; i < NUM_THREADS; ++i)
thrd_join(threadId[i], NULL);

return 0;
}


There's this >>59032585 though, so you need to either be on an operating system with a decent libc (like FreeBSD or Windows) or use musl on Loonix.
>>
>>59032585
>>59032630
People who like Linux unironically know jack shit about low-level. glibc has several serious, exploitable bugs outstanding for almost 6 years:
https://sourceware.org/bugzilla/show_bug.cgi?id=12683
https://sourceware.org/bugzilla/show_bug.cgi?id=12889
https://sourceware.org/bugzilla/show_bug.cgi?id=14942
No one who knows two shits about computer science uses Linux.
>>
>>59032680
wtf I love windows now
>>
>>59032680
>implying glibc == linux
>>
>>59026570
Show me *one* popular, large C library that's not C with classes.
>>
>>59032701
Show me one major Linux distribution that doesn't use glibc.

>>59032693
I'm not defending Windows here. Windows has a lot of defects. Different ones, but it does have them. Not to mention it's closed source, so you can't do anything about it. Not that you can do anything about GNU code, their design is awful, it's poorly documented and their LISP-inspired code coding conventions makes their C code barely understandable.

The GNU project is pretty much the cancer killing Linux.
>>
>>59030084
>C is a subset of C++
no its not
>>
Look at all these students who think they know programming.
>>
>>59032461
That's not how you hello world the C++ way.

#include <iostream>

class Program {
public:
void run() {std::cout << "Hello world!" << std::endl;}
};

int main()
{
Program pgr;
pgr.run();
return 0;
}


MUH ABSTRAKSHUN
>>
Implying C doesn't inspire suicides.
>>
>>59033575
>takes a threaded program and makes it single threaded and adds a class for no reason
hello Pajeet!
>>
>>59033694
>not using OOP
Enjoy unemployment.
>>
>>59030054
Like os components? Try building a os off go.
>>
>>59026769
Okay, I'll give you that. The scope resolution operator is a travesty. There is no reason why it isn't just a dot. Operator overloading is useful. If you don't like the stream syntax, just used good old printf. That's the glory of C++, it allows you to cherry pick the parts you like, while ignoring the ones you don't like.
>>
>>59033524
Look at that fagtron, worked on one big project where they used Java or Scala or some gay ass shit who thinks he knows programming
>>
>>59033928
nice projection
>>
>>59033975
no u
>>
>>59028863
C++:
list<int> derp = new list<int>();

C:
list derp = make_list(sizeof(int));

So hard!
>>
>>59033481
You can't tell me why it isn't without googling it. Anything you would normally write in C, you could also write in C++.
>>
>>59034046
Actually, using void* to make generic types is retarded since the data will have to be dynamically allocated along with the cells of the list. Using unions or making a macro DEFINE_LIST(type) that makes different list types is much more sane.
>>
>>59028863
>muh """"app"""" needs to operate on 30 different types of lists
ask me how I know you have 0 experience
>>
File: tumblr_o9wxrduZaM1sbi637o1_500.jpg (75KB, 500x515px) Image search: [Google]
tumblr_o9wxrduZaM1sbi637o1_500.jpg
75KB, 500x515px
As someone coming from a scripting background, should I learn C or C++. Which will likely get me a Job?
>>
>>59030054
>docker wouldn't exist
and the world would be a better place
>>
>>59034128
Two different lists is already too much copy-paste. Ask me how I know your only programming experience is ricing your weeb desktop.
>>
>>59034106
>unions
So when you use your list library in another program you'll have to add the structs (or whatever) manually to your union? Sounds tedious.
>>
>>59026570
>uses c++ exclusively

How the fuck do you do that? Everything has to start with main() which is not exclusive to C++. C++ without the C parts doesn't work very well.
>>
>>59032461
#include <stdio.h>
int main(void)
{
puts("Hello Concurrent World");
}

BTFO
>>
>>59034087
int class;
>>
>>59034191
kek
>>
>>59034131
use lua for everything
>>
>>59034189
studio.h*
>>
>>59032680
>cancellation """bugs"""
damn, fizzbuzzer, you might be onto something :^)
>>
>>59032740
>The GNU project is pretty much the cancer killing Linux.
interesting, considering linux wouldn't exist without the gnu project
>>
File: benchup.png (157KB, 3064x2288px) Image search: [Google]
benchup.png
157KB, 3064x2288px
>>59034191
Had to check.

int main(void)
{
int class = 0;
return class;
}


How come Bjarne is not starving under a bridge after getting fired for being a total retard?
>>
>>59034151
>copy-paste
hello fizzbuzz
>>
Penetration tester here, I fucking love it when I see clients with bespoke C applications
>>
>>59034267
Nice damage control, retard, but race conditions are a serious issue.
>>
>>59034330
>race conditions are a serious issue when I'm also retarded
they sure are :^)
>>
>>59034343
0/10
>>
>>59034387
>animooooooo
>>
>>59032728
>C library that's not C with classes
there are no classes in C
>>
>>59032728
SDL
Goodbye.
>>
>>59034474
You didn't understand his question.

>>59035182
>SDL
>popular
>>
>>59035268
>SDL
>half of emulators use it
>Valve uses it
>Crytek uses it
>Starbound uses it
>unpopular
(You)
>>
>>59033901
It's also the worst part of C++ because everyone picks a different subset.
>>
>>59034191
shrekt/10
>>
What bothered me with C++ was:

>create header
>write function prototypes in header
>create cpp
>write functions in cpp

so bothersome

Also, what's a good c++ IDE?
Is Codeblocks good?
Are there other IDE which make life easier programming in C++ ?
>>
>>59035462
I actually miss that part of C++. The header file serves as a nice catalog of all the functions and features of the file. I know modern IDEs have Outline views that serve that function, but part of me laments the fact that some people would only see the monolithic monstrosity of code that is my class and never get the big picture.
>>
>>59035527
Hmm, interesting point.
I guess it also can have the purpose of hiding the complexity, which is nice when collaborating.
>>
>>59035462
you don't have to do that all. you can do everything in the headers or everything in main.cpp if you want. and quit using IDEs you fucking faggot
>>
>>59026570
>He doesn't program directly in binary
>>
>>59034291
>no optimization flags
Not an argument. Kill yourself.
>>
>>59034291
Also not to mention

>using at&t syntax
>using interrupt 0x80 instead of calling the c library, making the code locked to one operating system in the process
>>
File: 1462974416338.png (845KB, 960x717px) Image search: [Google]
1462974416338.png
845KB, 960x717px
>>59026570
>He uses C when Ada is by far the best embedded programming language
>>
>>59036033
-s is optimization. The -O flags just fuck your shit up because GCC is a piece of shit.

>>59036072
>instead of calling the c library
Using stdlib.h in assembly is as impure as using cstdio in C++.

Kill yourself.
>>
>>59036288
Just use
conio.h
, anon.
>>
>>59036433
Works on 100% of PCs out there. That's portable enough to me.

If your shit platform doesn't have
conio.h
, just download DJ Delorie's djgpp version, pleb.

http://people.redhat.com/dj/
>>
>>59035462
Headers are excellent for documentation.
People should read the headers, and know everything they need to know about how the stuff works and what functions they need to look closer at.

On proprietary projects, you often get a header and a shared object with the compiled software.

Good IDE's are stuff like QtCreator and Kdevelop or vim+bloat.

And you realize that you can automate this right?
>>
>>59028863
Cast to void*
>>
>>59036525
anon@nonbloatedmachine ~ $ find /usr/include/ -name conio.h
anon@nonbloatedmachine ~ $

It seems non-Noobuntu distros would like to have a word with you. :^)
>>
>>59037056
conio.h is specific to MS-DOS and Wangdows.
>>
>>59026570
C is a subset of c++ mostly
>>
File: 1482783597496.png (346KB, 500x464px) Image search: [Google]
1482783597496.png
346KB, 500x464px
>>59026570
>he actually uses C/C++ when it's guaranteed that 90% of the shitty hello worlds he's writing would be better accomplished with a higher level language that lets you spend more time getting work done and less time micromanaging memory
>>
>>59026570
Both are deprecated by Rust.
>>
>>59038434
You misspelled Nim.
>>
>>59039040
How can something that compiles to C deprecate C.
>>
>>59039592
>temporary
>>
>>59039592
At least Nim's compiler is written in Nim. Rust's compiler is written in C++.
>>
>>59039956
>I don't understand how LLVM works
>>
>>59040038
>>
// the code
typedef std::map<std::string,std::string> StringToStringMap;
void print(const StringToStringMap& dict) {
for(StringToStringMap::iterator p=dict.begin(); p!=dict.end(); ++p) {
std::cout << p->first << " -> " << p->second << std::endl;
}
}
// the error message
test.cpp: In function 'void print(const StringToStringMap&)':
test.cpp:8: error: conversion from
'std::_Rb_tree_const_iterator<std::pair<const std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, std::basic_string<char,
std::char_traits<char>, std::allocator<char> > > >' to non-scalar type
'std::_Rb_tree_iterator<std::pair<const std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, std::basic_string<char,
std::char_traits<char>, std::allocator<char> > > >' requested
>>
>>59040275
Try compiling this
template<class T>class L{L<T*>operator->()};L<int>i=i->
>>
>>59040275
looks like job security to me
>>
>>59026591
>C#
my sides
>>
>>59026570
C++ is a superset of C.
C is obsolete and finished.
>>
File: C++.png (40KB, 1620x774px) Image search: [Google]
C++.png
40KB, 1620x774px
>>59040415
>>
>>59040415
I'd list many C features that C++ doesn't support but people worth that much effort know those features already.
>>
>>59034131
Start with C.
>>
>>59034131
By limiting yourself to one language you deny yourself a job.
>>
>>59040334
>template
how about no
>>
>>59040501
struct x struct z<x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(y,x(y><y*,x(y*w>v<y*,w,x{}
>>
>>59034131
the problem with c++ books is they bog you down with inheritance/MRO/access modifier minutia that you shouldn't be using 99% of the time
>>
Most of the reason I use C++ is the STL. having to re-do hashmaps and such would be a bit of an annoyance, and something you'd have to do quite a lot in real programming.
>>
>>59040275

Concepts are being developed to fix this very problem.
>>
if i need an array do i use T arr[] or std::vector<T>?
>>
>>59040697
Stroustrup would recomment std::vector.
In my testing, vector is a lot slower on MS VC++, but the same speed on gcc (both with max optimisation settings).
>>
#define private public
>>
>>59027049
>let's ask the guy who invented the piece of shit what he thinks about it
>>
>>59034131
C is a solid foundation. Then learn Java.

C++ is dying because it has no place. C blows it out of the water for C stuff, and Java blows it out of the water for OOP general purpose crap.
>>
>>59036108
>he uses C instead of Ada
>he doesn't work for a defense contractor
>he doesn't even have a security clearance
not even human desu
>>
>>59041143
>Java blows
Yes
>>
>>59026570
Even if you prefer the C style of programming, there is absolutely no reason (aside from writing for embedded platforms) to write ISO C when you could just write same code in C++ and take advantage of basic quality of life features like namespaces and function overloading.
>>
>>59034474
Explain the actual difference between a struct and a class.

Classes are just marketing bullshit that have ruined programming.
>>
>>59041190
There are formally verified C compilers. There aren't any formally verified C++ compilers, to my knowledge.

C also has ACSL (Ansi C specification language), which will let proof obligations be expressed in comments and discharged with an appropriate tool. Such features have not been made for C++ yet, presumably because of its complexity..
>>
>>59041143
>C++ is dying because it has no place. C blows it out of the water for C stuff
Bullshit. C is dropping faster on the TIOBE index than C++ and really isn't any better "for C stuff" except that the compiler is easier (although still far more difficult than one might expect) to implement on an embedded platform.
>>
>>59041231
Let's list all the developers who actually care, I'll start:
>>
File: 1465691580594.png (17KB, 347x102px) Image search: [Google]
1465691580594.png
17KB, 347x102px
>>59026570
>he doesn't program in machine code
>>
>>59041188
Yeah, but it's better than C++.
>>
>>59041287
Try to do anything remotely complex with Java's BigInteger class, cry at the unreadable spaghetti you produce and tell me that again.
>>
>>59041188
javafx is pretty nice
>>
>>59041287
Generics alone make C++ better. Java's are so gimped in comparison it's not even funny. Also C++ has unique features like variadic templates that allow to do stuff like vector::emplace.
>>
>>59041241
kek
>trusting an index that bases its results solely off of search queries to determine the popularity and use of a language
IEEE's index, which uses multiple metrics, including search queries, open source contributions, and job opportunities, shows C increasing in popularity through 2016.

http://spectrum.ieee.org/static/interactive-the-top-programming-languages-2016
>>
>>59034046
>Fucks up his C++ syntax
>Fucks up his usage of C++ in general
>Handily omits the bit where he has to hunt down and destroy that list when he no longer needs it
>Handily omits how much more of a pain in the ass it is to copy it
Shut the fuck up
>>
>>59041222
I'm not an expert so I'm genuinely asking.
What about polymorphism?
>>
>>59041305
>java
>spaghetti
>C++
>not spaghetti
lol
>>
>>59041222
There's no difference but not for the reasons you think. In modern languages structs are basically classes with fields public by default.
>>
>>59041392
...Which shows C++ also trending, second only to C. A far cry from
>C++ is dying because it has no place.

>>59041405
No really, do it.
>>
>>59041402
Those features are the real difference between a struct and a class, classes (usually) have polymorphism, inheritance and all those other features and structs never do.
>>
>>59041402
You just use pointers to functions, and when you "inherit" if you want to override the base class's implementation you just change the pointer to your new function.

Your new function is then accessed the same way it would be if it were the base class's function, but it's different.
>>
>>59041458
>structs never do
OOP dipshit detected.
>>
>>59030054
>without golang things like docker wouldn't exist
I wish

docker is so close to be cancer I can't even

99% of the times is used improperly or as as a lazy excuse for sloppy and unsecured habits

other than that, golang is java without being java
>>
>>59041491
>OOP dipshit
Nah.
I'm not saying you couldn't duct tape them onto structs if you wanted to. You just... Probably shouldn't...
>>
>>59041458
In C++, you can add methods to, and inherit from a struct.

In fact, in C++ the only real difference between a struct and a class is that structs have public as the default access type for members, whereas it's private for classes.
>>
>>59041287
>AIDS is better than CANCER
Literally no point in debating this.
>>
>>59041392
i wouldn't say it's dying just based anecdotal evidence. I feel like plenty of companies have their "big iron" win32 shit written in C++. I do agree its not something I would ever use. Seems like all the headaches of non-managed memory plus the complexity of a OO approach. I like C for simple shit, java for complicated shit, and python/groovy for scripting type of stuff. C++ is somewhere in the middle for C programmers who want more complexity without introducing defects and OO people want to manage their memory. Either one seems silly.
>>
>>59026570
>he pretends to be a dog on the internet
>>
>>59041571
If you have to pick one, than there is.

I'd love if Java died too, but I'd take Java over C++ any day.
>>
>>59041231
Is C formally verified, to begin with?
>>
>>59041875
Not many people are ever in a position to pick. You're proscribed one or the other by the nature of your company or your project. If I'm going to do anything of my own volition it'll be neither.
>>
>>59034163
Why even bother using a strongly typed language if you want to use generics so fucking bad?

What I really don't get is when people say "but macros are ugly, use templates".
They're just as fucking ugly, and even more of a pain in the ass to use.
>>
>>59042058
>Why even bother using a strongly typed language if you want to use generics so fucking bad?

Dumbest thing I've read all day.
>>
>>59042090
Auto is your favourite keyword, isn't it?
>>
>>59042160
I can't even guess at what you're trying to say in either this or your other post. There's no dichotomy between strong typing and generics, and I don't know what auto has to do with that either. I only use it for iterators and closures.
>>
>Not just coding in C and then using C++ features when/if you need them
Good luck with your autism
>>
>>59042234
>Compilation takes 4x longer, just in case I want to use C++ features later, which then make it even slower still

No thanks.
>>
>>59038386
this desu senpai
C and C++ should only be when high performance or embedded solutions are required, otherwise you're making life difficult for yourself and others for no reason.
>>
>>59042329
Or if, you know, you are maintaining an existing project instead of reinventing the wheel in <meme-of-the-year> language.

Or if you want stable, functioning libraries at your disposal.

Nobody cares what language you use for fezbucks, we're not here for that.
>>
>>59026591
>[Current year] argument
>Using C# ever
>>
>>59026631
>Rust
>A production language
>Not a SJW language because C++ is too hard for wymen
>>
>>59040655
I'm sure they'll be wonderful in 2037 when the standard committee comes to an agreement.
In the meantime I'll use a language that actually contains a type system
>>
>>59042501
>2037
What makes you so optimistic?
>>
>>59026570
C is better 0% of the time.
0. That's less than 1.
>>
>>59026570
>Current year
>Niggers on /g/ argue about languages/OS/hardware instead of creating something wonderful with the available technology

You people are the epitome of laziness, simply wasting bandwidth. I met 3rd world curryniggers who had shitty P4, CRT with WinXP but they focused on creating software and got jobs with software consultancy firms.
>>
>>59042916
What did you expect, 3/4 of /g users are neckbeards that have never done any serious job as software engineers.
>>
>>59042916
>software consultancy firms
Literally pajeet phone-support tier except it pays even less.
>>
>>59042960
I'm a software engineer at microshit. Ask me questions if you dare.
>>
>>59026570
struct file_operations
{
ssize_t (*read)(struct file*, void *buf, uint64_t off, size_t n);
ssize_t (*write)(struct file*, const void *buf, uint64_t off, size_t n);
// etc
};

struct file
{
struct file_operations *ops;
// etc
};

// ...

static const struct file_operations fops = {
.read = fs_read,
.write = fs_write,
};

int foo()
{
struct file f;
f.ops = &fops;
}


VS

struct file
{
virtual ssize_t read(void *buf, uint64_t off, size_t n) = 0;
virtual ssize_t write(const void *buf, uint64_t off, size_t n) = 0;

// etc
};

// ...

struct my_fs_file : file
{
ssize_t read(/* ... */)
{
// ...
}

ssize_t write(/* ... */)
{
// ...
}

// etc
};

int foo()
{
my_fs_file file;
}


C++ is just better for stuff like this.
>>
>>59043091
what's your favorite kind of curry
>>
>>59043321
Not him, but probably green Thai
>>
>>59043321
Definitely korma. But I'm not Indian, I'm American. Pure-blooded white-skin blue-eyes Aryan master race.
>>
But really, ask me something cool. Maybe you want to know about the garbage they push about liking OSS or something. Or maybe you want to know what microsoft employees think of microsoft products. Or perhaps you're curious about the tools we use internally.
>>
>>59026570
I use C#, though.
>>
>>59040038
LLVM is written in C++, you dipshit.
>>
>>59043449
How do you go about testing, whatever it is you're working on.
>>
>>59043563
On the software end, semi-recently, the engineering and testing teams (which used to be separate entities) were merged. This is still referred to as "combined engineering" internally though it's really just "engineering" as a whole now. In other words, there is no longer any real test process going on. Each team in each organization just does whatever. In our case we just pile up on the current code-base while trying to maintain at least 90% coverage but without worrying about it enough.

On the user end, before the product is actually released to the public, microsoft employees can try out the product in-house (this is non-mandatory). That is, there's a dogfood policy on microsoft products ("we eat our own dogfood"). For example, windows server 2016 was used for, as I recall, 2 years in-house before being released. The problem is that the first dogfood version of any microsoft product is so broken that not even half the bugs and issues get fixed by the time of release. An example of that: when you delete the first post in a thread on yammer (basically microsoft's facebook), the thread still does not get deleted. Other employees keep mocking yammer for this nonsense behavior which permeates this (similarly there was a bug until recently that made all posts be sent to everyone company-wide when they were meant for the personal page or a specific team page).
>>
>>59026570
I use Rust exclusively because it's better 99% of the time
>>
>>59043091
is the bloat of the window OS because no one can maintain the core components anymore? Like we've all heard control panel is a mess and no one knows how NTFS works. I get the feeling windows 10 is just the NT kernel with more bloated shit on it. I mean, you got r&d money and you've got to keep growing so they grow the telemetric shit instead of making things faster and more secure. Do they every rewrite core shit in the kernel?
>>
>>59026570
>using anything with C in the mame when java exists
>>
>>59043091
Are they going to redeem themselves by finally ditching the horrible codebase in NT? Will windows reach the level of efficiency performance that Linux and FreeBSD provides?

How many pajeets do you work with?
>>
>>59043795
I don't know much about windows development, but I do know that the telemetry is a very important part of the microsoft strategy now since data is so valuable and that windows is installed on so many devices. Given how other product development is going, I would be surprised if that was not true though.

With regard to telemetry, I also know that full, non-anonymized data is kept in microsoft servers (but only the anonymized data can be accessed with an access level under HBI). I also know they keep 12 month's worth of complete twitter history, including deleted tweets and the like, and that they update that data once a month (they don't have access to the firehose stream at all). I also know they have a complete historic and up-to-date reddit archive.

>>59043843
>Are they going to redeem themselves by finally ditching the horrible codebase in NT?
No such plan that I'm aware of.
>Will windows reach the level of efficiency performance that Linux and FreeBSD provides?
I don't think so. Microsoft engineers are extremely good at optimizing software for performance, but I assume that windows development is different than for other products because of the large amounts of piled-on code that accumulated over the years.
>How many pajeets do you work with?
In the chain of command + the team, there have been a total of 4 Indians only. Of these, one of them is a complete pajeet, and completely adheres to all the stereotypes. Another is actually not a pajeet at all and is extremely smart. The 3rd is the team's boss. The last one is satya nadella.

However, it turns out that even as microsoft employees, if we contact IT support, we get lined up with actual indian call-center IT pajeets.

Basically microsoft has "fake" ("vendor") employees: they're actually associated with 3rd party companies and aren't "M$" employees, this is probably where the Indians come from but maybe other teams are different.
>>
>>59034145
anon, you got some explaining to do.
>>
>>59043946
>I also know that full, non-anonymized data is kept in microsoft servers (but only the anonymized data can be accessed with an access level under HBI). I also know they keep 12 month's worth of complete twitter history, including deleted tweets and the like, and that they update that data once a month (they don't have access to the firehose stream at all). I also know they have a complete historic and up-to-date reddit archive.
Jesus christ
>>
Gotta go soon. Last questions have to come in now.
>>
>>59028999
>Operator overloading was a mistake.
I disagree. It's very useful in some cases. Multiplying matrices gets very ugly without it.
mat4 main_mat = mat4_multiply(projection, mat4_multiply(translate, scale));

vs
mat4 main_mat = projection * translate * scale;
>>
>>59044172
If I learn of some more interesting info, I'll do some other inpromptu Q&A. Can't freely give out classified information of course.
>>
Is Programming in C combined with C The Programming Language a good start?
>>
>>59044172
will you marry me
>>
>>59041539
object oriented C is totally fine, in some cases its easier to understand than c++ oo, its not like access modifiers are useful for anything, if someone wants to do something bad to your class, making an attribute or behavior private isn't really going to slow them down for too long.
>>
>>59041395
>whines about a missing star
>can't extrapolate from a list example to a custom datatype that you have to destroy manually anyway
>implying copying a datastructure is more work in C than in C++
wew lad
>>
>>59032680
I guess all those HFT compute cluster designers must be dipshits then. Actually, most high performance computer users must be because they use linux.

Before you autists scream at me, I realize people are probably rolling their own libc for hpc, but they are sure as hell running linux
>>
>>59034291
if you only write hello world, then sure, use asm or C.
>>
>tfw ram is so large that pythons inefficiency has become irrelevant

where were you when all the knowledge you obtained became useless? soon us codelets will reign supreme on this board! you'll see! hahahahahhaha!
>>
>>59045598
>the inefficiency of python is most noticable in the memory usage
>>
>>59045598
Python is inefficient primarily because of its global interpreter lock nowadays.
>>
File: thome.jpg (14KB, 389x343px) Image search: [Google]
thome.jpg
14KB, 389x343px
>>59034291

> tfw you use puts and printf anyway
> tfw you wrote your own printf formatter that can write directly into a char[] because cout is for plebs
>>
>>59028863
C preprocessor nigga
>>
>>59028863
The only good GNU thing is the GPL
The second there's a GPL'd BSD or other UNIX, I'm switching to it
Fuck GNU/Linux, I love it because I have to
>>
>>59045701
Meant for >>59032740
>>
>>59045620
people won't give up shitty cpython 2.7 for whatever reason

>>59045675
sprintf?
>>
>>59045620
why is GIL a thing?
>>
File: 1485700544595_pol.png (146KB, 320x240px) Image search: [Google]
1485700544595_pol.png
146KB, 320x240px
>>59032432
>Using netbeans to use qt instead use qt creator
Get cancer and die
>>
>>59032740
>>59045711
alpine linux
>>
>>59040697
std::array?
>>
>>59045719
1. Synchronization is hard in interpreted languages

2. not all the C libraries commonly used in Python programs are thread-safe.
>>
>>59045620
oh fuck not this meme again.

explain in your own words how the GIL actually slows down real production code.
>>
>>59045755
By effectively only granting your program access to one physical CPU at a time.
>>
>>59045745
CPython is designed primarily for efficient single-threaded performance. Having lots of little locks on each object is slow so they opted to have one global lock. This means that you cannot use the python memory allocator or call into Python code from C without holding the gil because none of the structures are individually threadsafe. In practice, this isn't a big deal because if you care about perf you are most likely using numpy which releases the gil when acting on ndarrays allowing other threads to run. If this wasn't true, projects like numexpr and dask would get fucked but instead they run great.

>>59045774
In real code you release the gil when you don't need it.
>>
>>59045786
was for
>>59045719
>>
>>59028863
Code in D
>>
>>59045786
so what makes Cypthon so necessary compared to numpy considering people still complain about that global lock?
>>
>>59034330
R U S T
U
S
T
>>
>>59045868
numpy is a library, cpython is the interpreter
>>
>>59045868
people complain because their hear "muh gil" but don't actually do any serious numeric computing where people have solved these problems. A lot of code I work with has a thin python "shell" where quants and data scientists can call into optimized C and C++ code which is internally threaded. So while you only have one python thread, you are running many compute threads under the hood. These inner threads don't need the gil. The flask/django crowd is normally IO bound and IO wait also releases the gil so you can serve another thread while you are waiting for your api calls to finish. In that domain pypy is probably your friend because your are running very little C extension modules and your pure python will see a nice speedup. pypy still has the gil though.
>>
>>59041469
Congratulation, you invented vtables
>>
>>59046333
so if i wanted to do 3D graphics programming would i be able to call into C++ libraries from python?
>>
>>59035182
How is it not C with classes?
>>
>>59046359
yeah, CPython has a pretty rich C API which you can call. I would be amazed if most of the popular libraries you want to use aren't already bound. If they aren't it is really easy.

Many game engines work by having the core algos and structures written in C++ and then using an embedded scripting language for game logic. You can embed python as an inner scripting language even. gdb embeds python for scripting and writing pretty printers.

You might be interested in the library pybind11 for interfacing with the C api through C++, I am working on my own version right now using C++ 17 with concepts with more ambitious goals of encoding reference information at the type level along with more aggressive compile time optimizations.
>>
>>59046400
would that work with something like Aether3D? i like it since it already implements a ton of APIs under one engine but i was figuring out a way to use that through python as some sort of interface caller where it's all simplified.
>>
>>59046437
I don't know what Aether3D is; assuming there is some C or C++ API or binary ABI then you will be fine.

https://www.youtube.com/watch?v=lrk6erM3mkI this talk walks through some of the lower level API options for 3d graphics programming in Python. You will notice that all of these options are using Python as a thin layer over C or C++ code.

Just a warning, the talk starts with a little story which is a bit slow, but it sort of starts around ~11 minutes.
>>
>>59034211
>studio.h*
what
>>
>>59026570
I want to learn C. Where do I start? I know the basics of Java (ie. I'm really crappy at it)
>>
>>59046359
Any time you're using OpenGL or DirectX, you're calling a C library. Because that's what they are.
>>
>>59044239
Yes, Matrix arithmetic is one of the very few cases with well-established Mathematical operators in which Operator Overloading is a valid use. But for all four or five valid use cases there are a million people abusing it to hell. What the hell were they thinking with that std stream shit?
>>
>>59042381
>thinly veiled strawmen trying to paint everyone who disagrees with the C hipster as some kind of numale node.js cuck instead of just someone who actually understands how and when to choose the right language for a job instead of just following memes and trying to look smart
it gets me every time
>>
>>59046665
iostream is shit but it was designed to look like shell redirection which I sort of get. things like std::valarray or xtensor make operator overloading worth it
>>
>>59043639
>the engineering and testing teams (which used to be separate entities) were merged.
so they're paying engineers to do the job a dedicated tester could do the same if not better (because they don't have to bother with other shit) for less than half the pay? it doesnt sound very smart
>>
>>59046766
tests are what allow engineers to make changes to the code base. If nothing is tested, you will break shit in your changes which slows down development at best and breaks in prod at worst. Engineers should be writing automated tests as part of any change. If you add a feature, test the interface so it can be reworked. If you fix a bug, write a regression test so it is not reintroduced.
>>
>>59027049
>the big think
>>
>>59046615
pls?
>>
>>59041315
No it's not.
>>
Rust is literally C++ but without all of the old deprecated shit
>>
>>59047145
>Featuring
>zero-cost abstractions
It's shit.
>>
>>59047158
nice argument
>>
>>59047145
And forced bounds checking pointlessly* wasting time.
*assuming you did automated testing
>>
>>59047145
this
>>
>>59047179
forced-overflow-ckecks=off

however, the faggots at mozilla have deprecated this feature. They said they would re-implement it soon™
>>
>>59047179
>>59047202
>Not checking overflows
Just use a language with not concept of security like C
>>
>>59047213
Bounds checking is pointless if you have verified that it won't fail. Not sure what's so hard to understand about that.
>>
>>59047223
if you have verified that it wont fail, the compiler *should* optimize away the check

I don't think rustc is that good yet
>>
>>59047223
yet programs suffer from out of bound bugs
>>
>>59045715

Should've added that its a type-safe(tm) template-based version. It uses ordinary format specifiers with precision etc..., but throws exceptions with position information instead of printing bullshit.
>>
>>59047239
Yes, because people don't verify their shit and just commit it.
>>59047238
I'll patiently wait for that to happen.
>>
>>59047249
I would prefer bounds checking to be on for debug builds and off for release builds

sadly the faggots at mozilla don't think like that

I'll still use rust since it is better than using C++
>>
>>59026570

Basically it all started with
>waaah A is too hard, I'm gonna make B
Okay, indeed ASM is a tad too low, too hardware centered, and lacks some abstraction, maybe we need BCPL. Then
>waaah B is too hard, I'm gonna make C
Clearly BCPL was very basic, so yeah, C was much needed. Suddenly you could create reusable libraries implementing high-level concepts, and use the raw language to manipulate those in an abstract way. It was almost perfect.
>waaah C could be a little bit better, I'm gonna make C++
Okay maybe we're onto something with that object-oriented approach. Most of it is a geek's wet dream and should never be used, but there's some solid stuff in there and if we KISS it should solve every-
>waaah C++ is too hard, I'm gonna make D
Wait wha-
>waaah D is too hard, I'm gonna make Erlang
>waaah Erlang is too hard, I'm gonna make Fortran
>waaah Fortran is too hard, I'm gonna make Go
>waaah Go is too hard, I'm gonna make Haskell
>waaah Haskell is too hard, I'm gonna make IPL
>waaah IPL is too hard, I'm gonna make Javascript
>waaah Javascript is too hard, I'm gonna make Karel
>waaah Karel is too hard, I'm gonna make Lisp
>waaah Lisp is too hard, I'm gonna make MultiLisp
>waaah MultiLisp is too hard, I'm gonna make .NET
>waaah .NET is too hard, I'm gonna make Objective-C
>waaah Objective-C is too hard, I'm gonna make PHP
>waaah PHP is too hard, I'm gonna make Q
>waaah Q is too hard, I'm gonna make Rust
>etc.

99% of languages were created by people too retarded to learn C/C++. Python and Lua deserve honourable mentions, integrate nicely with C, and can even replace C++ adequately, but that's it.

Now you need the power of a 00's era supercomputer to run the towering stack of web technologies and exchange 140 char long messages on Twitter. Tomorrow, some will claim Node.JS is too hard and make something even more retarded. What's funny is it's human ignorance, not progress slowdown, that broke Moore's law.

Just learn C.
>>
>>59047274
Moore's Law has nothing to do with execution speed of anything, including processors.
>>
>>59047289
>no humor allowed

Okay.

Still, it was indeed performance. Moore was never a technical guy, he was a salesman, and he basically told companies "every year it'll be twice as fast!"

The whole thing is ridiculous when you look at it, so maybe allow me to joke about it.
>>
>>59026673
If you want your game not to be shit performance-wise you'll use a C-like part of C++ anyways. Abstraction truly is a meme, data locality is what matters and C++'s features don't really help for that.
>>
If I learn C, would it be slightly easier to learn other languages
>>
>>59047315
Depends. I would argue that learning C and assembly would greatly increase your knowledge about how computer programs work under the hood and most likely boost your understanding of how high(er) level languages are implemented.
>>
>>59047311
>muh vectors use an additional 16 bytes meme
>>
>>59047331
>Increase compile and run time by using the bloated C++ templated standard library
Wanna know how I figured yoiu're retarded?
>>
>>59047315
Learning C will give you good taste.
>>
>>59047315
Not, but you don't learn languages but their associated paradigms. Imperative programming is the sanest way to develop high performance applications since they stick closer to the way the CPU actually works (see how CPU manufacturer push it so heavily).
>>
>>59047338
>templates
>runtime
Do you want to know how I know you're retarded?
>>
>>59047347
>Imperative
That's probably far too much of a bare-bones definition.
"Procedural" would be the more descriptive term.
>>
>>59047367
>calling C procedural
>doesn't even support coroutines
C is essentially just a portable assembly.
>>
>>59047356
It's because you can't read.
>>
you'll never know elegance
fn main() {
let n: i32 = 4;
println!("n squared is {}", n.pow(2));
//prints "n squared is 16"
}
>>
>>59047374
Since when is a coroutine a requirement for something to be called procedural?
>>
>>59047385
I can read very well, thank you. That's probably why I also can tell that you have no fucking clue what you're talking about and are just repeating memes you've read on /g/
>>
File: sLe13h3.jpg (195KB, 1224x1445px) Image search: [Google]
sLe13h3.jpg
195KB, 1224x1445px
>>59047374
>implying being procedural means you need to support coroutines
>>
>>59047322
Where I would start to learn C?
>>
>>59047396
Since TAoCP came out?
>>
>>59047374
>has a dedicated runtime
>requires a stack to be setup
Don't think so but it's the closest we have. When I think portable machine language the only thing that comes to mind is LLVM IR (even if it's SSA).
>>
>>59047405
You can start with K&R (2nd ed), it's an old book and some of the things in it are considered unidiomatic and even non-standard in some cases, but it's very well written and the programming tasks at the end of each chapter is ideal for beginners IMHO.
>>
>>59047398
I covered compile time in my post too. Any large scale project using templates takes decades to build. It truly is one of the worst way to do meta programming.
So no, you can't read.
>>
>>59047407
You're just making up your own stupid definitions.
>>
File: 1487667689141.jpg (32KB, 350x602px) Image search: [Google]
1487667689141.jpg
32KB, 350x602px
>>59047419
Thanks mate, I'll look into it. Some say that "Learn the C hard way" is utter garbage, why's that?

Mongolian beauty as a reward
>>
>>59047412
>LLVM IR
Will differ depending on the system's ABI.
>>
>>59047412
>C
>requires a stack
It doesn't. There are plenty of stack-less C implementations, which is also why variable length array was removed as a mandatory in C11.

>requires a runtime
Barely, there's a reason why C is always the first language to be ported to a new architecture.
>>
>>59047425
I never disagreed with increased compile time (although precomiled headers and template specifications greatly reduce compile times).

However, I am explicitly referring to runtime because you're a fucking moron.

>>59047447
I've never read it so I can't say.
>>
Discuss dicks
*whips out this*

#include <stdint.h>
#define uint8_t u8
#define uint16_t u16
#define uint32_t u32
#define uint64_t u64
#define int8_t s8
#define int16_t s16
#define int32_t s32
#define int64_t s64
#define unsigned int uint
#define uintptr_t uptr

/*
some code
*/

#undef u8
#undef u16
#undef u32
#undef u64
#undef s8
#undef s16
#undef s32
#undef s64
#undef uint
#undef uptr


>>
>>59047583
>Macros for type aliases
>Pointless, special-snowflake, duplicate standard types
You're stupid.
>>
>>59047583
You can just include linux/types.h and all those would already be defined (except they're called i and not s).
>>
>>59047602
Not every platform has linux/types.h

>>59047598
They could be typedefs but this way you don't pollute the namespace with your header.
>>
>>59047623
Why the hell do you even need to use such pointless shit?
Just type the proper names.
>>
>>59047637
>proper names
>_t
They are shit
>>
>>59047623
>Not every platform has linux/types.h
Most platforms have the equivalent types, WinAPI deals with U8, U16, U32 etc.

>They could be typedefs but this way you don't pollute the namespace with your header.
If this is supposed to go in a header file, then why are you

1) undefing it
2) including code in it

?
>>
>>59047642
>They are standard-conforming
ftfy
>>
>>59047642
I don't give a shit about your personal tastes.
They are the standard solution.
>>
>>59047249
>because people don't verify their shit and just commit it.
Tell that to Linus
>>
>>59047583
>copying rust
>>
>>59028907
isnt that C syntax for dereferencing?
>>
>>59045728
>Alpine
>major
>>
>>59032527
>>59045726
I develop in several languages, and it's comfy being able to use a single IDE for all of them. Stay mad.
>>
>>59045701
But that's the worst thing about GNU, anon.
>>
>>59045477
>industry runs shit software
No way, did you realize that by yourself or did it take help from others?

Windows is a thing, you know. And is a prime example of that.
>>
File: 1486742321205.png (53KB, 256x256px) Image search: [Google]
1486742321205.png
53KB, 256x256px
>I don't know either language, nor have I ever worked on any large project, but here's my opinion anyway

lol c is so low level its old skool hacker language hehehe welcome 2 da matrix
>>
>>59047238
It actually is almost that good. The case it can't handle yet (more like, I believe it can't handle) is when the input is explicitly checked for correct bounds.
>>
>>59047263
>I prefer having buffer overruns in production and not knowing what the fuck because the debug build completely hides the possibility
huh.... really makes you think...
how many years of fizzbuzz experience do you have?
>>
>>59047274
What? C is literally a stripped down version of BCPL, not the other way around, BCPL was not made to replace ASM and neither BCPL nor C were made because ASM was "too hard". Go shitpost somewhere else.
>>
>>59048757
You can also create a function that accepts a numeric parameter (n), creates an array with 'n' elements and then iterates over each array element. The compiler seems to be incapable of realizing that your iteration will never violate the bounds and keep checking them.

>>59048769
Hides what possiblility? That there are buffer overruns? Why would that be the case in release builds but not in debug builds?
>>
>>59045701
It's true, GNU/Linux is a piece of crap. But BSDs are even worse in every respect. The meme about linux not supporting any hardware is actually true with BSDs and BSDs are slow as fuck as well as having fuckall security since their best security offering does security by wishfull thinking.
>>
>>59048814
>Why would that be the case in release builds but not in debug builds?
Oh I don't fucking know. Maybe because you want bounds checks in debug builds but not release builds. Inbred.
>>
>>59048814
The compiler has no problem removing that check. What the fuck are you even on about? Check the LLVM IR yourself.
>>
>>59048828
So you are suggesting that I don't test my programs in debug mode but just in release mode?
Are you retarded?
>>
>>59049017
Fizzbuzz expert right here folks.
>>
>>59030054
This. GoLang is an amazing modern alternative
>>
>>59042305
>Compilations takes 4x longer
Indeed, you must have better things to do, like browse 4chan
>>
>>59026570
>>he actually uses C++ exclusively when C is better 99% of the time
well, he's a fucking dog.
what did you expect?
>>
>>59026570
>He uses C but hasnt even got a job.
>>
>>59049518
>2017
>not being employed embedded developer
Look at this js-babby and laugh.
>>
>>59049543
whats up does the truth hurt?
>>
>>59041241
Well, considering how LLVM is becoming the new widely used standard, I expect C to local assembly compilers to be replaced with LLVM bytecode to local assembly. It's easier to do and it supports more languages.

Also it lets you inspect LLVM IR to see what kind of optimizations the compiler implemented. LLVM IR is a lot more readable than assembly.
>>
>>59041554
Question. I know that for basic structs the overhead is zero like in C. I also know that Java objects have a significant overhead by comparison.

What is the source of the overhead from OOP code that makes class instances so huge?
>>
>>59043680
Do you get paid for it?

I'd like to learn Rust at some point, but from my point of view, it's a significant time investment to get into a language that may flop like D did.
>>
>>59050396
Struct is just a plain chunk of data. In case of OOP though everything is referenced. The class itself is referenced(thus you store both the class and the reference to it), class' fields are often referenced, and when inheritance is used even the methods are referenced - each instance of class stores a table with references to the methods of class(C++ only uses that behavior for virtual classes, languages like Java default to that). This introduces both memory and performance overhead(for dereferencing), both can easily reach 2x compared to plain structs. But structs obviously can't exhibit complex polymorphic behavior.
>>
>>59047263
Strings and arrays are dynamic heap objects. There have to be some bounds checks.
>>
>>59052165
>Strings and arrays are dynamic heap objects
What a shit language construct
>>
>>59052085
So if I understood everything right, declaring a struct as a class in C++ will add overhead, and making it inherit anything will also add overhead?

But declaring methods on a struct adds no overhead over just declaring plain functions that take a struct as an argument?
>>
>>59052363
There won't be overhead in C++ as long as you don't declare your methods virtual. Also in C++, unlike Java, you have absolute control over what's referenced and what isn't.
>>
>>59052415
But if I override a concrete method of a class I inherit, any inherited methods that depended on the overridden method will have changed behaviour right? Doesn't that require some runtime redirection? Or is the overridden method to be called inferred at compile-time for inherited instances of the method?
>>
>>59052571
This requires methods to be virtual.
>>
>>59052571
"OOP makes your programs easy to understand!"
>>
>>59052590
Ah right. I was thinking of pure virtual methods. But yes, only virtual methods can be overridden, and ordinary methods can't.

I have a second question. What about interfaces, which are abstract classes in sepples? Does that mean that you can't implement the typeclass/interface/abstract class pattern in C++ without incurring a runtime overhead from virtual calls? Should I just use maximally generic template functions instead when I want to minimize overhead?
>>
>>59052735
>Does that mean that you can't implement the typeclass/interface/abstract class pattern in C++ without incurring a runtime overhead from virtual calls?
I'm not sure so I won't lie.
>Should I just use maximally generic template functions instead when I want to minimize overhead?
Yes. That's the reason std::sort is faster than C's qsort. You can even do duck typing with templates. But they aren't a complete replacement for interfaces. Consider you have an array of an interface type and you fill it with classes that implement that interface. Calling a method of a class in that case will invoke specific implementations of that methods, and it's only possible due to the overhead of function table stored in each class instance. I forgot to mention overhead that's required for RTTI(which works only for referenced classes by the way), and you're going to need that if you're doing that kind of shit.
>>
>>59052978
Ah right, that was a great explanation. Thanks!

I haven't quite familiarized myself with the OOP bits of C++ in particular so this was really helpful.

I'm intrigued by the array of interface types. Do you mean I can actually pass around variables/array slots of unknown types, or am I passing pointers/references to objects of unkown types, kind of like void pointers with more information?
>>
>>59053281
http://ideone.com/MTzsKa
>>
>>59053281
And here's an RTTI example
http://ideone.com/LrOznA
>>
>>59052233
>muh fixed inputs
Thread posts: 320
Thread images: 17


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
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.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.