-
-
Save mwotton/6148426 to your computer and use it in GitHub Desktop.
typedef struct { | |
int girlfriend; | |
} holder; | |
typedef struct { | |
holder a; | |
} toplevel; | |
typedef struct { | |
int this; | |
} yoda; | |
int main() { | |
holder holder = { 2 }; | |
yoda understand = { 2 }; | |
toplevel get = {holder}; | |
int you = 2; | |
/* whee, i made this stupid code work! */ | |
if (you == understand.this) { | |
get.a.girlfriend; | |
} | |
return 0; | |
} |
ghost
commented
Aug 5, 2013
orf's python doesn't reach the if block, thus my version:
class a: __cmp__ = lambda *a: 0
class b(object): __getattribute__ = lambda *a: b()
you = a()
understand = get = b()
if you == understand.this:
get.a.girlfriend
Didn't actually read his before I wrote mine. That feeling when someone already had your idea... head → wall
And because I didn't like the mass definition of structs, here's my C version (for which I had to modify the syntax slightly):
int main() {
union bar {
void* this;
union bar* a;
void* girlfriend;
} get;
void* you = get.a = &get;
union bar understand;
understand.a = get.a;
if (you == understand.this) {
get.a->girlfriend;
}
return 0;
}
Only 8th grade boys like the smell of Axe. The irony is that 8th grade girls think the boys who like it are idiots. So if you want a girlfriend, you;re better off with Old Spice.
#!/usr/bin/perl
=head1 NAME
douchebag.pl - douchebaggery implemented in Perl
=head1 SYNOPSIS
$ perl douchebag.pl
=head1 DESCRIPTION
douchebag.pl is precisely what it says on the tin.
=head1 COPYRIGHT
Copyright (C) 2013 Apreten Tiousass Wipe
douchebag.pl may be used and/or redistributed under the same terms as Perl itself.
=cut
sub get_a {
my ($object_to_get, @args) = @_;
if ($object_to_get eq "girlfriend") {
return 0;
} else {
return 1;
}
}
sub you_understand {
my $subject = shift;
return 1;
}
my $this = "perl";
if (you_understand($this)) {
get_a("girlfriend");
}
re: first ruby example, I believe idea was to make parse/compile, not to output obscenities for some ad agency. :)
My point was that it didn't compile. 😉
jplitza: ooh, i like that one, but changing the Axe code to be less stupid is a definite no-no.
It compiled and ran successfully, both on my machine and in the REPL output you posted.
Common Lisp
* (let* ((you 1) (understand.this 1) (get.a.girlfriend "HODOR!"))
(progn
(defmacro custom-if (func if-form block-start result block-end)
(list `,func `(,(cadr if-form) ,(car if-form) ,(caddr if-form)) result))
(setf (symbol-function '==) (function =)))
(custom-if
if (you == understand.this) {
get.a.girlfriend;
}
))
"HODOR!"
@pranavrc All the props.
yes, I think @pranavrc wins this thread with that one, macro-to-the-max!
Instead of trying to defend original code I'll propose how it should actually look to make sense:
if (you.understand(this)){
you.get_a_girlfriend();
}