[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]

/dpt/ - Daily Programming Thread

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: 316
Thread images: 39

File: tmp_31644-1484450506936479852916.png (102KB, 1000x1071px) Image search: [Google]
tmp_31644-1484450506936479852916.png
102KB, 1000x1071px
What are you working on, /g/?

Old thread: >>59515417
>>
import std.stdio, std.string, std.conv, std.random, std.range, std.range, std.algorithm;
struct Node {
int element;
Node * left;
Node * right;

void insert(int element) {
if (element < this.element) {
insertOrSet(left, element);

} else if (element > this.element) {
insertOrSet(right, element);

} else {
throw new Exception(format("%s already exists",
element));
}
}

void print() const {
if (left) {
left.print();
write(' ');
}

write(element);

if (right) {
write(' ');
right.print();
}
}
}

void insertOrSet(ref Node * node, int element) {
if (!node) {
node = new Node(element);

} else {
node.insert(element);
}
}

struct Tree {
Node * root;
void insert(int element) {
insertOrSet(root, element);
}
void print() const {
if (root) {
root.print();
}
}
}
Tree makeRandomTree(size_t n) {
auto numbers = iota((n * 10).to!int)
.randomSample(n, Random(unpredictableSeed))
.array;

randomShuffle(numbers);

/* Populate the tree with those numbers. */
auto tree = Tree();
numbers.each!(e => tree.insert(e));

return tree;
}

void main() {
auto tree = makeRandomTree(10);
tree.print();
}
>>
>>59521230
Don't create duplicate threads, even if the other OP is retarded.
Delete this shit.
>>
>>59521329
It's up to users to support or not support retardation.
>>
>>59521299
Is that D?
>>
>>59521668
Looks liek C++ with import, so probly.
>>
>no ideal programming language
What do?
>>
>>59521299
>import std.stdio, std.string, std.conv, std.random, std.range, std.range, std.algorithm;
>>
>>59522231
Learn Lisp.
>>
>>59522292
>no O(1) access time to lists
Why even try?
>>
>>59522322
aref, elt, nth
>>
>>59522322

Lisp actually can use arrays and vectors. It's just that it's not the preferred method of programming.
>>
>>59522322
How does O(1) access time to lists even work?
>>
>>59522292
>this is what lispfags really believe
>>
>>59522231
what is your ideal programming language
>>
>>59522411
Nth element of the list is available at offset+(N-1) address.
>>
>>59522441
Lisp is so shit, the only advantage is that you can turn it into a different language
>>
File: kek.jpg (103KB, 917x592px) Image search: [Google]
kek.jpg
103KB, 917x592px
ActionScript is the only language you need
>>
>>59522488
Trash.
>>
>>59522231
use a few different semi-ideal languages
>>
>>59522458
Oh that makes sense, why doesn't Lisp have this?
>>
>>59522518
It does
>>
/* mixin.h */
#pragma once
#include <typeinfo>
#define mixin(base, derived, body) \
template <typename base> class derived: public base { \
body \
public: \
virtual bool includes(std::type_info mixin_id) { \
if (mixin_id == typeid(derived<void>)) return true; \
return base::includes(mixin_id); \
} \
}; \
template <> class derived<void> { \
private: derived() {} \
};
class empty_mixin_receptor {
public:
virtual ~empty_mixin_receptor {}
virtual bool includes(std::type_info mixin_id) {
return false;
}
};
>>
>>59522458
... So in other words, lists are just vectors with list interfaces grafted onto them to facilitate recursive programming?
>>
>>59522581
C++ is truly has one of the ugliest syntax, almost as ugly as rust.
>>
>>59522600
No, vectors are just lists with magic algorithmic properties because of how memory works
>>
>>59522606
go fuck yourself it's beautiful
>>
>>59522558
And how am I supposed to do them from CAR, CDR, CONS, EQ, ATOM, SET, EVAL, ERROR, QUOTE, COND, AND, OR and LIST?
>>
>>59522609
So, lists AREN'T just vectors with list interfaces grafted onto them?

In other words, storage of list elements is not contiguous?

In other words, the thing you said before wasn't true???
>>
>>59522628
What?
>>
>>59522641
>Nth element of the list is available at offset+(N-1) address.
This claim is equivalent to saying list element storage is contiguous. That claim is in turn equivalent to saying lists are internally vectors. I then asked if lists were internally vectors, to which you replied they were not--which contradicts the claim I quote above. I'm confused, which is it?
>>
>>59522672
I don't know what you're talking about?
A language could implement lists by using vectors, but the concept of lists doesn't depend on the concept of vectors
>>
>>59522685
>Nth element of the list is available at offset+(N-1) address.
You said this. Is it true? If it is, then lists are by definition actually dynamic arrays. If lists aren't actually dynamic arrays, then it's not true.
>>
>>59522558

No, it does not. Otherwise cons would be an O(n) operation, and there would be no need for the vector type.
>>
>>59522700
I didn't say that and it's language dependent
>>
>>59522711
I was assuming he meant to refer to vector but misspoke.
>>
>>59522714
See: >>59522458
If you're that guy, yes, you did. If you aren't, what are you even doing butting in.
>>
>>59522720
you asked a question about lists and vectors and i answered
>>
lads I've been wondering
for a couple years now I've never really thought of going to grad school

so i just relaxed with my grades for shit outside CS getting Bs or Cs and whatever, GPA kinda went down

I keep wonder if that was a bad decision and maybe I should care about it

How relevant is grad school if you want to make 6 figures some day?
Is undergrad just not enough?
>>
>>59522746
I don't feel that grad school matters much unless you want to go into academia, which notably pays less than industry anyway.
>>
$ time ./test3.sh
142913828922

real 222m59.277s
user 41m53.744s
sys 101m19.524s

Is bash just a slow piece of shit, or is there fundamentally something wrong with this script?
#!/bin/bash

primes=2
for i in $(seq 3 2 2000000); do
isPrime=true
for ii in $(seq 2 $(bc <<< "sqrt ($i+1)")); do
if (( $i % $ii == 0 )); then
isPrime=false
break
fi
done
if $isPrime; then
(( primes+=i ))
fi
done
echo "$primes"

The same implementation in Python takes ~25 seconds, so trial devision itself isn't the problem. Bash is ridiculously slow, I suspect iteration is the culprit.
>>
>>59522720
>what are you even doing butting in.
Butting in is fun.
>>
>>59522818
h-homu please
>>
File: dangerous-dave.png (13KB, 642x407px) Image search: [Google]
dangerous-dave.png
13KB, 642x407px
>>59521230
>intermediate pleb programmer here

I still feel like such a dumb cunt when it comes to programming.

>dangerous dave written from scratch in 1990
>~27 years on and something like that feels next to impossible to write unless you use some shitty scripting game engine (which I'd probably fuck up and take forever to learn how to use)
>>
>>59522827
who said this?
>>
>>59522827

What's the problem?

The only annoying part is actually figuring out how to get shit to show up on the screen. Everything else is up to you and can be programmed with the very simplest methods.
>>
>>59522844
Who said what? I said it.

>>59522845
>figuring out how to get shit to show up on the screen

Even games like lemmings/etc. It feels so achievable.

I guess what my problem is, is that there are these turbo nerds writing shit in C/C++/etc with no graphics frameworks/etc (talking out my ass I don't know what they actually used) and I feel like I'm flat out getting hello world to show in the console (exaggeration).

Why aren't I a turbo nerd :(
>>
>>59522827

>My 1988 version of Dangerous Dave was the Apple II version. The scrolling was done by moving all the screen bytes over then drawing a new tile on the edge of the screen - repeat 20 times for a full screen shift. The Apple II version was written all in 6502 assembly language.

>On the PC, the 1990 version, I wrote graphics code in 80x86 assembly language for all video modes at the time: CGA, EGA, VGA. Dangerous Dave PC is the only game I know of that has all 3 video modes in it and switchable at any time (F2), even in the middle of a jump!

>To scroll the screen quickly, it was all in assembly language and I used a similar technique as I used with the Apple II version - quickly move bytes in video memory and draw a tile on the right side. In EGA it was trickier because to do anything quickly in EGA mode required the use of Latch Mode for memory moves. I remember teaching Todd Replogle how to do that so Duke Nukem 1 would be a fun game (a slow Duke Nukem would not have been cool).

>The game code for Dangerous Dave PC was written in C, in the Borland C 3.0 IDE. Most debugging was done in Turbo Debugger on a 12" amber monitor plugged into a Hercules card.
>>
>>59522884
Fucking boreland
>>
>>59522868

Here is a tip that will take you far if you have the balls to grasp it.

You will never be 'ready' to move on to the next stage or next step. There is no series of tutorials or practice programs that will get you to where you are now to where you want to go. You just have to embark towards your destination.

Go learn how to get shit to show up on the screen in opengl or SDL or even from 'scratch' with xwindow or with whatever windows uses. If you don't have the prerequisite skills you will learn in the process.

You could fuck around with toy programs for a million years and never learn how to get graphics on screen because the only path from toy programs in the console to getting graphics on the screen is to actually buckle down and learn how to get shit to show up on the screen.
>>
>>59522868
>>59522884
>>59522923
>>>/r/ibbit
>>
>>59522923
>drawing simple graphics on a screen
>not a toy program
>>
>>59522868
>intermediate pleb programmer here
>dangerous dave written from scratch in 1990
>~27 years on and something like that feels next to impossible to write unless you use some shitty scripting game engine (which I'd probably fuck up and take forever to learn how to use)
Who said this? This is the first time these messages have appeared in this thread.
>>
>>59522868
>:(
look into some other website more appropriate for your kind.
>>
File: 6-4aQ-Qp.jpg (42KB, 512x512px) Image search: [Google]
6-4aQ-Qp.jpg
42KB, 512x512px
>>59522966
>>
>>59522984
Die in a bus fire.
>>
File: 1486592438864.gif (124KB, 480x270px) Image search: [Google]
1486592438864.gif
124KB, 480x270px
>>59522992
>>
File: 1463528413577.jpg (7KB, 243x250px) Image search: [Google]
1463528413577.jpg
7KB, 243x250px
>>59523026
Die in a river.
>>
File: 1482209151825.jpg (174KB, 1083x720px) Image search: [Google]
1482209151825.jpg
174KB, 1083x720px
>>59523067
>>
File: 1452192874047.png (139KB, 400x398px) Image search: [Google]
1452192874047.png
139KB, 400x398px
>>59523090
Just jump off a bridge already.
>>
File: 1488930110427.jpg (110KB, 1920x1080px) Image search: [Google]
1488930110427.jpg
110KB, 1920x1080px
>>59523109
>>
File: 14258384853146.jpg (44KB, 410x451px) Image search: [Google]
14258384853146.jpg
44KB, 410x451px
>>59523131
Die painfully okay?
>>
File: 1488486726619.png (283KB, 714x574px) Image search: [Google]
1488486726619.png
283KB, 714x574px
>>59523183
>>
>>59522955
>graphics, histograms, GUIs
>toys
>>
>>59523356
toy programs
>>
File: Chunkbuster.png (22KB, 577x575px) Image search: [Google]
Chunkbuster.png
22KB, 577x575px
I'm submitting this to my professor to show that I am not a java super retardo at his request
please let me know if I did anything incredibly stupid, I actually am a java super retardo
http://pastebin.com/9qLRCTs7
>>
Anyone might care to explain how CRUD is supposed to be made in a Rest based design website.

Let's say for example I have my repository with a method(query) that deletes something in my database and that I want to make an http request that calls that method. How should I proceed ?
>>
>>59523377
They aren't.
>>
If I make my own templates in my own language and process them into C file, will my language be considered as some other language or it will be a set of C macros?
>>
>>59523534
Who knows?

Why use templates at all?
Implement proper polymorphism
>>
>>59523618
"Polymorphism" in the way most people think of it is shit.
All we need to use are tagged unions.
>>
File: 1478575370500.jpg (36KB, 512x512px) Image search: [Google]
1478575370500.jpg
36KB, 512x512px
>>59523633
I don't mean inheritance
>>
I want to make a python application that will need a database, I think sqllite should be fine.

Where exactly is my code supposed to install to and put the database etc? Is there some standard way this is done in unix? All my googling gives me web related stuff.
>>
>>59523618
By templates I mean something that serves as a pattern to fill other C commands, not C++ templates.
>>
>>59523633
He said polymorphism, not "polymorphism"
>>
>>59521668
That's D
>>
>>59522868

you would use opengl to make that nowadays
>>
I have made my gibmodulus script portable to my Windows VM by using Ruby libraries!

#!/usr/bin/env ruby
# A simple script to copy the modulus character to my keyboard
# Because my fucking 5 key doesn't work.

require 'clipboard'
Clipboard.copy 37.chr
>>
>What are you working on, /g/?
Managed to hack together a working solution, need to clean stuff up and implement a real workload.

https://github.com/enfiskutensykkel/ssd-gpu-dma

tl;dr version: I've implemented a NVMe SSD disk driver in userspace and I'm able to control it from a CUDA kernel. The benefit of this is that I can do I/O between a GPU and a disk without having to involve the CPU or the system memory at all.
>>
>>59523840
It's called a percent sign.
>>
@--------
Epic post.
>>59523871
Epic reply.
>>
Why tying certain kinds of procedures to certain kind of values is considered a bad thing?
Doesn't that make programming easier? Isn't it easier to have a list of functions with certain types, so in case you've forgot some function, you could just call a list of subroutines of some kind of values?
>>
File: u-srs.jpg (45KB, 600x615px) Image search: [Google]
u-srs.jpg
45KB, 600x615px
>>59523861
>posting your github on 4chan
>>
>>59524018
May I ask why are you replying to an attention whore?
>>
Probably getting a job writing Clojure. Pretty excited about it. Not sure about the whole JVM platform thing, but Clojure sounds nice as fuck. If that sticks, I'll be going over SICP later this year.
>>
>>59524018
I've posted my github profile here before. I've seen lots of other people post their github profile here before.
Nobody gives a shit about who you are. Nobody is out to get you on here.
>>
>>59524031
You know why they call it clojure?
Because you close the door and walk way.
>>
>>59524027
This

Only haskell and fizzbuzz allowed here
>>
>>59524066
he didn't even imply that let alone say it
>>
>>59523861
Shit dud.
Reminds me of that malware that loads itself to VRAM to avoid detection.
>>
Why did you want to become a programmer?
How many years ago you wrote your first programs?
>>
I have a good grasp on C and C# and now I'm working with C++, got the basics and OOP figured, but am lacking in the templates and language intricacies.
What is a good book I could pick up /dpt/?
>>
Is there a better book fo Erlang than learn you some erlang for great good?
>>
File: logo_yellow.png (29KB, 330x175px) Image search: [Google]
logo_yellow.png
29KB, 330x175px
>>59521230

I am struggling to understand SWGEmu's code (A Pre-CU Star Wars Galaxies emulator).

I built and can run the server without problems, and now I want to contribute. But there is barely any documentation besides coding style guidelines, and for a beginner like me it is hard to understand the structure of the code.

Anyone here with some experience with it?

The only docs I've found are for scripting themeparks and things like that.
>>
>>59524171
I just thought it looked interesting.
>>
>>59524018
>>59524027
Trying hard to fit in I see.
>>
>>59523534
Compiling to C is a valid strategy. It is for instance what the first version of C++ or OCaml did.
>>
>>59524335
Nim does it.
>>
>>59524171
I thought it was the only real way that I would be able to Hack the Gibson.
>>
>>59524335
Where can I read about compiling to C if my language is very different from C?
>>
I have lots of sorted files and I would like to merge them all

e.g.

file1: 1,20,53,70,82,96
file2: 4,28,64,81,87
merged file: 1,4,20,28,53,64,70,81,82,87,96

Merge sort seems the obvious approach, but I feel that a kind of linked-list based insertion sort keeping track of the previous inserted position (so no need to seek from the start) could be fast too while being easier on the memory (I/O will likely be the bottleneck in any case and I can just insert the values as they come in - possibly in separate threads).

I'm worried about memory in particular since I have many GB of files.

Thoughts?
>>
File: IMG_9890.jpg (50KB, 600x302px) Image search: [Google]
IMG_9890.jpg
50KB, 600x302px
>interview for embedded programming tomorrow
>haven't used C in over 3 years
how fucked am I?
I don't even remember how to convert binary numbers to decimal to hexadecimal
>>
File: Capture.png (25KB, 829x392px) Image search: [Google]
Capture.png
25KB, 829x392px
I'm trying to scrape Google reverse image search, but after a number of searches from a single IP (~30) my requests end up with an empty page. Though on firefox it shows a captcha box and after I solve it I can keep searching for more images. I assume that it places a cookie on my browser after I solve the captcha. How do I go about receiving the captcha page and storing the cookie on my console application? Pls don't bully, am a language major ;_;

Also, did I use Assert right? I hope its meant to be used like this.
>>
Can anyone help me with this error I'm having ?
"Could not read JSON: java.lang.IllegalStateException: Expected a string but was BEGIN_OBJECT at line 1 column 2 path $; nested exception is com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected a string but was BEGIN_OBJECT at line 1 column 2 path $"

deleteTask: function(value){
console.log('value = '+value);
axios.post('/deleteTask',{
id: value
}
).then(function (response) {
console.log(response);
});
},

This function is supposed to send the id to:

@RequestMapping(value = "/deleteTask", method = RequestMethod.POST)
public void deleteTask(@RequestBody String id){
tasksRepository.deleteTask(Long.valueOf(id));
}

wich use this:
@Query("delete from Task t where t.id = :id")
void deleteTask(@Param("id") Long id);


It's vue.js application with Spring.
>>
>>59524613
>convert binary numbers to decimal to hexadecimal
That makes no sense in the context of programming languages.
>>
>Improve your program so that temperatures below -30 degrees or over +40 degrees are ignored and not added to the graph.

>ignored
>not added to the graph.
What did he mean by this?
Normally I would have written an output and added a break into the while(true) loop and the shit would be done.
But this time it sounds like, it wants me to implement a literally ignore of the output and ask the user to enter an acceptable value.


import java.util.Scanner;

public class Temperatures {

public static void main(String[] args) {

Scanner reader = new Scanner(System.in);

// Graph is used as follows:
/*Graph.addNumber(7);
double value = 13.5;
Graph.addNumber(value);
value = 3;
Graph.addNumber(value);
*/
//Remove or comment out these lines above before trying to run the tests.
System.out.println("Please enter the temperautre of every day: ");

while (true) {
double temperature = Double.parseDouble(reader.nextLine());
if ((temperature < (-30)) && (temperature > 40)) {
System.out.println("temperatures below 30 and over forty are"
+ "not accepted.");
} else {
Graph.addNumber(temperature);
System.out.println("Please enter another temperature: ");
}
}

}
}


please do not give me code pointers yet, I just want to understand the problem so I can work on it.
>>
>>59524528
There's some info about compiling scheme to c and there are lot of toy compilers that do that.
http://churchturing.org/y/90-min-scc.pdf
>>
>>59524613
Do you mean when printing?
man 3 printf
Or if you mean how to convert to bcd?
Or do you mean in general?
binary to hexidecimal is just separating them in groups of 4.
All numbers are calculated the same way.
The number 1234 is calculated as
1 * 10^3 + 2 * 10^2 + 3 * 10^1 + 4 * 10^4
in base 10,
1 * 16^3 + 2 * 16^2 + 3 * 16^1 + 4 * 16^4
in base 16.
>>
File: Capture.png (81KB, 1360x712px) Image search: [Google]
Capture.png
81KB, 1360x712px
>>59524675
Is this what was wanted?
>>
>>59524537
Considering that len(file1) > len(file2)
i = 0; j = 0
WHILE i > len(file1) DO
LET temp1 = file1[i]
LET temp2 = file2[j]
IF temp1 < temp2 THEN
PUSH temp1 TO merged
i = i + 1
ELSE
PUSH temp2 TO merged
j = j + 1
END IF
END WHILE
>>
Someone familiar with query like this one, it seems I can't call the get method for the Id to put the result in my query so how should I do it?

@Query("delete from Task t where t.id = :task.getId()")
void deleteTask(@Param("task") Task task);
>>
>>59522956
What the fuck do you mean? I said them for fucks sake. You do know greentext isn't just for quoting?
>>
>>59524613
How would you set bits 3, 5 and 7 in some variable a?
How would you clear bits 0, 2 and 4 in some variable b?
>>
>>59525026
>greentext isn't just for quoting
Yes it is. They're not your fucking meme arrows.
>>
>>59524171
I hope i will make money sitting in my bedroom's chair one day
>>
>>59525031
I don't know, I'm dumb
>>
>>59525083
consider education
read about bitwise logical operators and bitshifts
>>
>>59521230
>What are you working on, /g/?

http://pastebin.com/YvE2RT7M
>>
>>59524940
>not in-place when the chief concern is memory
>>
>>59524629
You won't be able to do that because the cookie you receive is only valid for the current session, hardcoding the cookie you have in firefox into your program won't work.
>>
File: disaster.jpg (29KB, 500x352px) Image search: [Google]
disaster.jpg
29KB, 500x352px
>function is a performance bottleneck
>spend all morning rewriting it
>it's now 5 times faster
>it also became an unreadable mess
>>
>>59525117
What the fuck is this?
>>
>>59524807
>44°C
>too high
what are you? some kind of snow nigger?
>>
>>59525139
remote debugger back end
it follows instructions from gdb over an rs232 connection.
>>
>>59523217
>>59523131
>>59523090
>>59523026
>>59522984
Stupid moeshit poster
>>
>>59525139
Looks like a GDB back-end
>>
>two fucking thread AGAIN
you do realize that triggers my OCD like crazy my lads
>>
>>59525031
a |= 0xA8
b &= ~0x15

Am I gud enough senpai?
>>
>>59525175
Are you the anon that's working on his OS?
>>
>>59523861
>I've implemented a NVMe SSD disk driver in userspace and I'm able to control it from a CUDA kernel.
This is actually pretty neat, but it seems a bit unfinished atm. I guess this is a work in progress.
>>
>>59525026
It is just for quoting. At least on somewhat decent boards. Please take your "memearrow" bullshit to /v/, /b/ or any other board of your preference.
>>
>>59525233
that's probably not me. it's a low-level library for dos applications.
>>
>>59525320
Ah ok, some anon was trying to do some shit with DOS and a VM over an rs232 connection last time and couldn't get any debug info, this looked similar
>>
>>59525220
Pretty good, I am eager to see how would you solve the problem using 1 << X bitshifts instead of just setting 0xXX values.
>>
>>59525387
a = 1<<3 & 1<<5 & 1<<7;
b = ~(1 & 1<<2 & 1<<4);

I dunno I prefer the hex codes, but ideally you'd write a small function the set the bits on some flag
>>
>>59525416
>>59525387
oops forgot the |= and &=
>>
>>59525433
>>59525416
>a = 1<<3 & 1<<5 & 1<<7

This effectively sets a to 0.
>>
>>59525458
fug, replace the & with |
>>
File: debugging.png (135KB, 1595x1144px) Image search: [Google]
debugging.png
135KB, 1595x1144px
>>59525346
oh that does sound a lot like me though. pic related is my setup now.
I got thread support working in gdb just yesterday.
>>
>>59525416
>>59525433
>but ideally you'd write a small function the set the bits on some flag
What for?
If you want to set or clear some flag, you use bitshifts by some FLAG.
Headers contain definitions for all flags, so every
1 << FLAG

would become
1 << X
>>
>>59525472
You also need to wrap each shift into parentheses because | and & have precedence over << and >>.
>>
>>59525482
Yeah that's you, last time I saw you you were implementing a simple echo server
>>
What can I do with Clojure? Where do I start? What are some fun programs to get into the language? Thanks.
>>
Is this good code?

>>59525448
>>
File: 1364692519908.jpg (104KB, 613x533px) Image search: [Google]
1364692519908.jpg
104KB, 613x533px
Why are there no checked exceptions in C#?
>>
>>59522746
Tech companies will pay you six figures straight out of undergrad and even if you don't get those jobs you can get to that eventually.
Masters is pointless unless you're foreigner or you're stuck in a rut and need to retool to try and jump into higher tier of software job.
Phd is only if you want academic or research type positions.
>>
>>59525387
(let ((a (logior (ash 1 7) (ash 1 5) (ash 1 3)))
(b (lognot (logior 1 (ash 1 2) (ash 1 4))))))
>>
>>59525598
You can use Erlang instead
>>
>>59525920
You could use Lisp Flavored Erlang too.
>>
>>59525879
Don't listen to this guy.

In order to compete with Pajeets, you need a PhD or go to some Ivy League university and play the nepotism game. Otherwise you don't stand a fucking chance and will end up doing shitty web dev or C#/Java code monkery and peak at $85k / year.
>>
>>59521230
Hey all, I want to learn a new language that makes sense to learn at this point in time. I have experience with C/C#/C++, matlab, and html/css/php.

I was looking at python, it seems interesting. Does it make sense to learn it now? Am I too late? Please suggest what I should do!
>>
>>59525931
Yes. If you need fault tolerance and distributed stuff, BEAM VM is the way to go
>>
>>59525971
> Am I too late?
No, Python is in its zenith now.
>>
What is the best MOOC, guide ortutorial to train yourself on designing HTML pages with bootsrap ?
Something interactive with exercices preferably.
>>
>>59525960
My experience says otherwise.
>>
>>59526021
And mine confirms this. I'm doing a PhD now because the jobs I got as a master was boring as fuck and hell on earth.
>>
>>59526036
Meh, anon just said he wanted six figures.
Phd is not the optimal path for that.
>>
>>59526072
Good point.
>>
>>59524613
embedded systems design is more about electronics design than programming, though programming does play a role

I'm taking an embedded systems design class right now - the most we do with C is convert an algorithm expressed in C into FSM, datapath and controller designs

https://www.cae.tntech.edu/~oelkeelany/4140S17/lectures.htm

take a look at the lectures
>>
>>59526095
There's a difference between hardware developers and software developers. I work as an embedded developer and write C code. We have hardware engineers to do actual hardware stuff.
>>
>>59525133
lots of indentation, spacing and comments my friend

unless you're using python or something of course
>>
File: code.png (34KB, 1100x552px) Image search: [Google]
code.png
34KB, 1100x552px
HELLO DARKNESS MY OLD FRIEND
>>
File: 1489264704334.jpg (16KB, 255x200px) Image search: [Google]
1489264704334.jpg
16KB, 255x200px
>>59526126
>mfw I wanted to work with hardware but instead went for Software Engineer
>>
>>59526153
Depends on how he optimized it. If he's doing a bunch of memory access optimizing, the code becomes hard(er) to read pretty quick.
>>
in java if i draw shapes like this:

  
public void paintComponent(Graphics g) {
....
Graphics2D g2d = (Graphics2D) g;
....
g2d.fill(oval);

}


is it possible to add a mouse listener to oval to listen for the mouse to hover over it?

i know it's easy to do with mouseclicked but i was just wonder how i would do it with mouseentered
>>
>>59526126
That sounds reasonable. To be honest, it's pretty obvious the professor in that class couldn't give half a fuck about the programming aspects of embedded systems design - the labs (the only time we do any programming at all) are so simple we could do them in our sleep. The labs are basically just a review of Microcontroller systems class.
>>
>>59526264
Well, of course. I'm just saying that there's a meme here on /g/ that only CE and EE students are able to do embedded programming.

I work as an embedded programmer and I barely know Ohm's law and I studied CS with a focus on networks in my master's. I'm not excluded from these kinds of jobs simply because I haven't implemented Fourier transformation of radio signals in VHDL
>>
should security/authentication be configured at the service layer or the API layer?
>>
>>59525133
>>59526153
you don't need much documentation if you stick with writing code elegant enough that every line of code serves as a clear documentation of its purpose, and the sum total of the lines of code serves just as well as a documentation of the overall purpose of the function
>>
>>59526353
There's nothing wrong with implementing security and authentication at multiple layers.

You can easily have encrypted + authenticated network traffic on link layer, transport layer, session layer and application layer.
>>
Alright, I'm fucking around with OpenGL (in Qt) for the first time. I'm trying to draw two spheres.

Problem is, if I call glPopMatrix() before drawing the second sphere, it looks like it doesn't draw anything. And if I don't call GlPopMatrix() translations of the second sphere happen after the first sphere was already translated, which is something I don't want.

I could presumably fix this by just translating the matrix in the other direction but that doesn't actually solve the underlying problem.
>>
>>59522827
>>59522868

You might not be smart, talented enough, but I don't think that's your problem. Your intelligence is something you accept and it improves on it's own till you reach your limit and most people usually undervalue themselves a lot, so that's most certainly not your problem.

Your problem is attitude, friendo. Yes, being fucking smart helps, but you just need to do shit. To put it simple: it's better to be cocky than being a cock.
Just do what >>59522923 said. It's essentially the same advice my father received when he was building a house and later passed on; "When you build a house, you don't think, you just start doing it and then you finish your house.". Essentially large projects, especially if you're a beginner, can't be done by theorizing. You don't have the necessary knowledge to do that.
Just start doing it, learn about your options and weigh the options and start following a path you deem good. It might turn out to be shit, but with software you have the advantage compared to a house to rewrite parts of it easily, but don't do that in the beginning, just try to follow through with your choice, otherwise you might restart a project to often.

You will learn as you go. As you see how each API/library handles stuff you will know what to do. Each choice you make will be better than the previous one. However this needs will and persistence. Don't let early failure discourage you. If you can't do it otherwise than be a little arrogant and tell yourself that you can do that and you're superior as fuck.

>Why aren't I a turbo nerd :(
Because you aren't trying hard enough. Because you don't do shit instead you contemplate on shit.
Boys are born, men are made. This analogy applies to turbonerds too. People become turbonerds.

So as the other guy said it, get some balls and start doing shit.

PS: Learn math, at least on a beginner university level, for most physics-like stuff it's better if you know basic math.
>>
Is it retarded to write python2 fallback methods when writing a python3 program and vice-versa?
>>
>>59526656
yep
if you REALLY want to do that you'd just write two seperate versions of your program instead
>>
>>59525960
>$85k / year
>about $1.7k / week
sign me the fuck up
>>
>>59526758
that's not even a good salary faggot
>>
>>59524171
It looked interesting and I wanted to see how I could use it. 7 years ago, potentially 9 since I used to modify lua scripts in Roblox.
>>
Array lists > linked lists 99.999% of the time
>>
>>59526605
Thanks mate that's the pep talk i needed
>>
should i read SICP or is it too old? how about HtDP?
>>
>>59526880
You can't just say that. When array lists are worse than linked lists they're program breakingly worse
>>
>>59526880
Ranges > arrays
>>
I'm working on my first real personal project outside of school assignments.

Android app to record my workouts and provide ways to sort them by date, biggest lifts, etc. First time using a database and I'm learning a lot from it.
>>
File: dt170322.gif (129KB, 900x280px) Image search: [Google]
dt170322.gif
129KB, 900x280px
LOL
>>
I am developing a simple C module for reading .csv data files.
I have defined an array which acts as a character buffer and it stores a single row of text (or, a set of comma-separated data fields).
char Line_buffer[MAX_LENGTH + 1];

I've already made a function which reads a single line from the file into the buffer.
Now I'd like to create a function
FieldRead()
that would read the buffer and return the next data field when the function is called repeatedly from somewhere else.

For example: if the data in the buffer is:
ABC,123,DEF\0


I'd like the first call of ReadField() to return "ABC\0", second call "123\0", third call "DEF\0".

How should I return the text string from ReadField()? Should I return a pointer to the line_buffer array?
>>
File: molten.jpg (102KB, 646x960px) Image search: [Google]
molten.jpg
102KB, 646x960px
>>59527430
>parsing in C
>>
Java is pure.
>>
>>59527450
Yeah, pure shit
>>
C# is truth
>>
>>59527430
Global buffer and some index (of current offset in line). Calling ReadField() -> check if buffer/index is valid (if not init buffer/read nextline), then check if current field in buffer is valid -> if so, return the string object representing the currently pointed to data item, increment index count, otherwise error. I would really considering using something like Python (or even R) to parse your data, it's going to be a huge hassle in C.
>>
>>59527430
>Should I return a pointer to the line_buffer array?

Well no, since you want those values null-terminated and there won't be null bytes along the line.
>>
>>59527488
truthfully shit
>>
>>59526884
You're welcome any time.
>>
Rust is funny
>>
>>59526418
>But I understood it when I was writing it
>this is what programmers of badly documented code actually believe
>>
>>59527562
Because it is a joke?
>>
>>59522488
Fuck off. Actionscript was the worst language I've ever worked with. I'd honestly rather "program" in fucking Alice.
>>
>>59522488
wow very if much optional
>>
>>59524027
>>59524018
>being this jealous
>>
>>59527572
>>59527765
who wrote that?
>>
>>59527440
It's not a big deal. You just use someones parsing library or implement your own.
>>
>>59527854

Is this the current shitpost meta?
>>
>>59527854
>le who are you quoting meme
You are the most autistic person in this thread
>>
>>59527865
>>59527914
He's just another one to add to the list of "/dpt/ attention whores"
>>
>>59527914
nah i'm sure thats you actually lamo
>>
>>59527914
>le
i see. no wonder someone like you can't understand how to quote properly.
>>
>>59527960
I bet you actually think you are pretty clever by replying that lol
>>
What is the fastest way to join the C++ master race?
>>
is doing this makes you retard programmer?


public class test{

public static void main(String [] args){
try{
//TODO your code is going here!!!
}catch(Exception e){
System.out.println("ERROR!");
}
}
}
>>
>>59527977
so a person who can understand and accept the most basic facts is someone you would consider "clever"?
>>
>>59527987
you cant even see what the exception was :(
>>
>>59528000
I see reading comprehension isn't your strong game. Try again, I'll let you know when you're able to parse elementary english.
>>
Is it normal to keep a folder full of algo implementations to copy from because you can't remember how you wrote it the first time?

Sometimes I look at some old source code of mine and wonder if I became stupider because I can't read that shit at all.
>>
>>59528029
>Is it normal to keep a folder full of algo implementations to copy from because you can't remember how you wrote it the first time?
I do this

>Sometimes I look at some old source code of mine and wonder if I became stupider because I can't read that shit at all.
It can also be because you're probably a better programmer by now and the old code is written by someone worse in programming than you.
>>
>>59527488
Kek

Idk why but c# feels more creatively limiting than Java. Anyone else find this?
>>
>>59526163
>tfw there's no job that lets you do everything
>>
>>59528049
Who are you quoting?
>>
>>59528048
No, because I am not a brainlet
>>
>>59528049
just make your own company then
>>
>>59528065
Ahh I see you're autistic. Go suck off shitty .Net cock
>>
Is there any reason to use OpenGL now that Vulkan is out? OpenGL is going the way of the dinosaur, right?
>>
>>59528084
Such a small brain that can only think in a specific programming language
>>
>>59528087
OpenGL is still more portable (for better and worse) and have higher abstraction levels (for better and worse).
>>
>>59528048
all languages feel limiting once you become reasonably proficient in c++.
>>
>>59528125
*haskell
>>
>>59528087
Opengl is a simpler API. It does a lot for you that Vulkan doesn't. If your requirements aren't super high then opengl will probably still be useful.

I suspect that now that we have vulkan there will (eventually) be better graphics API that fit that less demanding use better. Modern opengl isn't great.
>>
>>59528137
Rust*
>>
>>59528087
No reason to use vulkan unless you have the assets (i.e super detailed polygons, textures and materials) and the knowledge *how* to push your gpu to the max - because if you don't have intimate knowledge of the entire pipeline and the memory syncronization stuff you're more likely to end up with worse performance.
Hell, most people wont even need the latest opengl, somewhere around 2.1 - 3.3 is the good sweetspot of enough features and not too much boilerplate to get going.
>>
>>59528145
Ahahahha
>>
Did anyone here ever take cs50?

What are your thoughts about it?
>>
File: cs50 harvard meme class.jpg (259KB, 3000x1251px) Image search: [Google]
cs50 harvard meme class.jpg
259KB, 3000x1251px
>>59528205
>this is an ivy league education
>>
>>59528192
What's the matter, can't handle a language that has a type system powerful enough to disallow programs with data races at compile time, zero-cost abstractions, move semantics, guaranteed memory safety, trait-based generics, pattern matching, type inference, minimal runtime, and efficient C bindings?
>>
>>59528217
and that means...?
>>
Why do the Europeans have higher quality posts, while Americans shitpost the whole time?
>>
>>59528227
OBSESSED
>>
What can you tell me about LISP?

I've been reading about it. The idea of suiting it to whatever my needs are makes it look like the most powerful language yet, but I didn't evolve so much into it to get a clear view.
>>
>>59528227
>makes a shitpost while asking this
Really makes you think
>>
>>59528227
Get raped and kill yourself, you retarded kike loving fucking faggot sack of ugly nigger shit with down syndrome.
>>
>>59528259
rude
>>
>>59528246
I am an American, so it really does.
>>
>>59528243
Common Lisp is fun and the macro system makes you extremely lazy and hate yourself in other languages without it.
>>
>>59528274
Sure you are
>>
>>59528282
Whatever you need to tell yourself to fit your narrative, buddy.
>>
So I've written a tree structure that uses vectors to keep track of it's child nodes, and I've run into that I need to be able to write the tree to a file and then load it back up later. How would you guy's recommend going about this? I might try and put them all in one single vector using a recursive method and then write them to a file, but what do you think? I have never tried to write a tree type data structure to file before.
>>
>>59528306
Whatever you need to make up to fit your narrative, buddy.
>>
>>59528190
Vulkan is more about the CPU than the GPU. You don't need high fidelity graphics to benefit from it, you just need a lot going on.
>>
>>59528362
So vulkan is more for GPU parallel computation?
>>
>>59528205
>Course name is only 2 digits
Huh.
>>
>>59528205
saved me from my own programming professor
>>
>>59528392
No, it's for optimizing the process of the CPU telling the GPU what to do.
>>
>>59528362
Where do you learn about Vulkan?
>>
>>59528087
If your program isn't multi-threaded in rendering you won't see a big difference. That's the biggest draw of Vulkan.
>>
>>59528470
Why wouldn't you multi-thread your rendering?
>>
>>59528480
It's simpler design for beginners. Most small applications don't call for it really.
>>
File: 1476131370386.png (192KB, 757x1492px) Image search: [Google]
1476131370386.png
192KB, 757x1492px
Why do you guys not like JavaScript and Python?
>>
>tfw my gpu doesn't support Vulkan so I can't even play around with it to learn
>>
File: fug.png (15KB, 458x165px) Image search: [Google]
fug.png
15KB, 458x165px
Wonder if I can batch the tile rendering better.
>>
>>59528595
>Game class
>>
int *p

or

int* p?
>>
>>59528659
fuck off
go tell me what int* p, q, r, s; does.
>>
>>59528675
p is pointer to int, and all others are just normal ints
>>
>>59528659
int dereference-p
or
int-pointer p
>>
>>59528545
I suppose that even in situations where performance is not important or the programmer is not capable of attaining higher performance with Vulkan than they would with OpenGL, they can still benefit from Vulkan's much saner (although verbose) API.
>>
>>59528611
could be a namespace though
>>
Using * to declare and also to dereference pointers was a mistake.
>>
>>59528718
Got something better?
>>
>>59528733
stop using question marks needlessly?
>>
>>59528733
Actually I guess if * is part of the type rather than the name then it's okay. int* p, or, even better, p : *int is easily distinguished from *p.
>>
>>59528718
Ada doesn't have this problem
>>
>>59528707
I would agree, but It's still early on and I doubt there's a lot of easy ways to get into Vulkan unless you want to dive into manuals and try to learn from others code which may or may not be good to learn from.
>>
>>59528659
int * p
>>
>>59528815
int * p, * q, * r, * s;


:DDD
>>
>>59528835
Looks nice. Would fug ;)
>>
File: 1459487588767.jpg (78KB, 340x314px) Image search: [Google]
1459487588767.jpg
78KB, 340x314px
>>59528582
>that image

To actually give you a response
>Why do you guys not like JavaScript and Python?
When someone asks me if I like Python, I'm always hesitant to say the word "like." I don't have any problems with it and I've found it to be a great language for doing things quickly or doing small to medium sized things reliably and have it be portable across systems, but there are definitely issues that pop into my head and make me recoil (significant whitespace being the most common among people who don't like it) when I try to give a positive opinion of it. There are plenty of people who will take the opportunity to lash out at the language, but so long as you're careful with the language and what you use it for, I don't see any huge problems with it and I'll have no qualms using it despite all issues with speed.

Javascript, on the other hand, just slays me. Going down to the raw basics of CS 101 programming, equivalence:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness

== <-- Equivalence in common languages like Java, etc
Object.is
<-- Object equivalence, also prevalent in common langs like Java
=== <-- Fuck right off

I still can't believe it has such prevalence and usage and I hate that sooner or later (most likely sooner) I'm going to have some kind of strong understanding of the language. Like anything else in the field, however, it can be learned.
>>
>>59527499
>>59527528
I came up with this, it seems to work. Does not need to be fancy, I just want to pull some data from a text file to populate a game board.

/* On each function call, reads the *next* data field from line buffer. 
Returns a NULL pointer if it cannot read a field. */
char *
Data_ReadField(void) {
Byte field_length = 0;
char * p_field = NULL;
Byte i;
Byte begin_pos = 0;
Byte end_pos = 0;

/* Get the length & position of the NEXT data field in buffer */
field_length = Data_CalculateFieldLength(&begin_pos, &end_pos);

//~ puts("Data_ReadField():");
//~ printf(" memory will be reserved for %d chars.\n", field_length);
//~ printf(" begin_pos: %d, end_pos: %d\n", begin_pos, end_pos);

if (field_length > 0) {

/* Allocate a memory block, make it empty */
p_field = (char * )malloc(field_length * sizeof(char));
memset(p_field, '\0', field_length);

/* Copy field from buffer to memory block */
for (i = 0; i < (field_length - 1); i++) {
p_field[i] = Line_buffer[begin_pos + i];
}

p_field[i] = '\0';
}

return p_field;
}
>>
File: 1231231231.jpg (2KB, 125x92px) Image search: [Google]
1231231231.jpg
2KB, 125x92px
>>59529201
>casting the return value of malloc
>>
>>59528219
Rust's type system isn't "powerful", especially when comparing it to something like Hasklel.
>>
>>59529245
I don't know who started this fad but he was clearly a master troll.
>>
>>59529254
Rust's type system is powerful in ways that Haskell's is not and vice versa. Haskell doesn't have affine types and borrowing. Rust doesn't have higher-kinded types or higher-rank polymorphism (except for lifetimes).
>>
>>59529261
Pre-ANSI C didn't have a void * pointer type so you'd have to cast every malloc call which returned char * every time.
supports implicit conversions from void * without warning you.
C++ doesn't, so you still have to cast the return value of malloc.
>>
>>59529254
Yeah? I can write a program in Rust in an hour and it will run 10-100x faster, be 10x less lines of code, and also have zero-cost abstractions, move semantics, guaranteed memory safety, threads without data races, trait-based generics, pattern matching, type inference, minimal runtime, and efficient C bindings
>>
>>59529297
*C supports
>>
>>59529245
Sorry, I just looked at the documentation of malloc() and noticed that it returns a void * type pointer. I needed char * type pointer, so I converted it. Is that wrong?

void *malloc(size_t size)
>>
>>59529201
I don't think you need memset(p_field, '\0', field_length); since you do p_field[i] = '\0';
>>
>>59529317
In C you are not required to cast that void * to whatever it's you have.
>>
int a; 

This is an int.
int* a;

This is a pointer to an int.
&a
This is a pointer to a.
*a
This dereferences a.

What were they thinking?
>>
>>59529370
Sounds pretty concise to me.
You're just stupid.
>>
>>59529370
a pointer to which a? the int or the int pointer?
>>
>>59522458
that's literally an array you mongoloid
>>
>>59529383
But completely unnecessary. Everything should be a pointer.
>>
>>59529383
Why does * promote a type to a pointer during declarations but demote a pointer to a value otherwise? It makes no sense.
>>
>>59529403
you're thinking about it wrong. int *p; means that *p is an int.
>>
>>59529403
What's the alternative fagtron3000?
>>
>>59529309
You mad?
>>
>>59529403
because type declarations and pointer indirection are different things

i notice this a lot when people think an int * is a separate type.
IT'S NOT A TYPE
It's a pointer to an int type.
Pointers have different semantics.
>>
File: 1472300988435.gif (2MB, 450x250px) Image search: [Google]
1472300988435.gif
2MB, 450x250px
>>59529430
beautiful
>>
>>59529449
Of course. It's C.
>>
File: 1449196291577.jpg (189KB, 760x1016px) Image search: [Google]
1449196291577.jpg
189KB, 760x1016px
>>59529309
Wait a minute... did you just copy the bullet list of Rust's web site?
>>
File: 1461096820139.png (275KB, 894x484px) Image search: [Google]
1461096820139.png
275KB, 894x484px
>>59529430
>>
>>59529468
Twice even.

>>59528219
>>59529309
>>
>>59529309
>zero-cost abstractions
2017 and still thinking that naive GC is a good GC.
So cute.
>>
File: confusedkot.png (325KB, 382x417px) Image search: [Google]
confusedkot.png
325KB, 382x417px
>>59529494
>Rust
>GC
>>
>>59529430
Interesting, now I know what they were thinking.
>>59529434
The alternative would be to have *p create a pointer to p and have &p dereference p.
>>
>>59529507
You're a noob anon. Sorry for you.
>>
>>59529525
No, I mean, Rust doesn't have a garbage collector. What do mean? Rc<T> doesn't count.
>>
>>59524733
Chicken scheme compiles to C using what I think is a pretty interesting strategy.

> do cps transformation on scheme code
> generate straightforward C with each continuation being it's own C function (with the arguments being the closure's bound variables and parameters)
> each continuation function never returns but just tail-calls the next continuation. (there are gcc annotations that should make sure this will be a jump rather than a call)
> all objects are just allocated on the C stack, which acts as a generational gc nursery
> whenever you get close to reaching a pre-determined soft stack limit, create a continuation object with the current function's local variables and arguments (which are the stack roots), copy them and whatever they point to to the heap, and jump back up the stack via longjmp

this gets you the following things
- amortized proper tail calls (theoretically faster than munging stack frames to get the same result)
- fast continuation capture (the drawback is overhead of all the continuation functions, but most of them can be optimized out)
- generational garbage collection with fast object allocation (C stack allocation is just bump pointer allocation)
- easy interop with C

I implemented this myself in a toy 'scheme' compiler and it was surprisingly simple for what you get out of it.
There's more information here : http://www.more-magic.net/posts/internals-gc.html
>>
>get home
>quickly browse through news
>happening
Fuck, another evening wasted on /pol/ posting.
>>
>>59529537
*What do you mean?
>>
>>59529549
meant to quote >>59524528 as well


>>59529507
>>59529537
reference counting is GC, but I'm pretty sure it's only very rarely needed in rust
>>
>>59529537
Please stop. You didn't understand my post. Maybe in ten years you'll understand. You lack experience and knowledge.
>>
File: laterhomo.jpg (27KB, 500x499px) Image search: [Google]
laterhomo.jpg
27KB, 500x499px
>>59529590
K, then
>>
>>59526656
Use python 3.6
>>
New thread:

>>59529672
>>59529672
>>59529672
>>
File: 1474006695249.png (32KB, 940x422px) Image search: [Google]
1474006695249.png
32KB, 940x422px
>>59524629
Set your useragent to something real when dealing with google or cloudflare and use the class in the image to deal with the web. The others seem to be being depreciated, and in some cases I had to code all of this because they would randomly stop working
>>
>>59529468
>>59529493
Yes. It was merely an act.

>>59529494
You're just mad that in addition to an amazing language and package manager, Rust gives its users zero-cost abstractions, move semantics, guaranteed memory safety, threads without data races, trait-based generics, pattern matching, type inference, minimal runtime, and efficient C bindings.
>>
>>59522581
>Tying THIS hard for mixins
kek
Thread posts: 316
Thread images: 39


[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.