- 1
- 2
- 3
Подписывайтесь на канал Говнокода в телеграме:
https://t.me/GovnokodChannel
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−6
Подписывайтесь на канал Говнокода в телеграме:
https://t.me/GovnokodChannel
−2
a G a G C G C
Deszcze niespokojne potargaly sad
a G F G a
А my na tej wojnie ladnych pare lat
a b a b
Do domu wrocimy, w piecu napalimy, nakarmimy psa
a B7 e B7 e a E7 a
Przed noca zdazymy, tylko zwyciezymy, a to wazna gra
a G a G C G C
Na niebie obloki, po wsiach pelno bzu,
a G F G a
Gdziez ten swiat daleki, pelen dobrych snow
a b a b
Powrocimy wierni my czterej pancerni, "Rudy" i nasz pies
a B7 e B7 e
My czterej pancerni powrocimy wierni po wiosenny bez.
−2
#include <iostream>
#include <cmath>
#include <signal.h>
#define lovu struct
#define cpp ptrdiff_t
struct forever{};
lovu forever hactehbka(void) {return {};}
int love(void) {return 0;}
void bacbka(void) {}
auto bormand = (cpp(hactehbka) + cpp(bacbka)) != cpp(love);
int main(void)
{
if(bormand)
kill(bormand, SIGINT);
auto sad = cpp(bacbka) - cpp(love),
chance = cpp(love) - cpp(hactehbka),
never = cpp(bacbka) - cpp(hactehbka);
auto usocute = [chance, never, sad](void) -> void
{
putchar(sad * (chance - never / chance / 2) - sad / chance);
putchar(sad * (chance - never / chance / 2) + sad / chance);
};
auto mydear = [chance, sad, never](void) -> void
{
putchar(sad * chance / (never / chance) + never / chance / 2 + (never + cpp(love) / (never / chance) - cpp(hactehbka) / (never / chance)) + never - (never / chance * 1.5));
putchar(9 * chance + never / chance);
putchar(std::abs(cpp(signal) - cpp(hactehbka) + chance * 2 + never * 3 + sad - 9) / std::pow(never / chance, 3));
};
putchar(sad * (chance - never / chance / 2));
usocute();
putchar(never * (chance - never / chance) + sad - (sad / (cpp(love) - cpp(hactehbka))) * (never / chance * 1.5));
mydear();
putchar(chance * 10 + never / chance);
usocute();
putchar((chance + never / chance / 2) * 10 + (never / chance) * 2);
auto ohyes = 69.8886;
putchar(ohyes);
putchar(chance * 10 + never / chance);
putchar(chance + never / chance / 2);
putchar(never * (chance - never / chance) + sad - (sad / (cpp(love) - cpp(hactehbka))) * (never / chance * 1.5));
mydear();
for(auto&& c : {1.5f, 3.f, 6.5f})
putchar(ohyes + M_PI + never / chance * c);
putchar(ohyes);
putchar(chance + never / chance * 1.5);
return 0;
}
0
interface Surface {
n: number;
}
let shiny: Surface = {
n: 10.0
}
function main() {
print(shiny.n);
}
шах и мат С/C++ девелоперам :) (постов не будет - сайт все блокирует)
+2
// a.h
inline struct $q1 {unsigned a;} $q1i;
// main.cpp
#include "a.h"
int main(int argc, char** args)
{
$q1i.a = argc;
return $q1i.a;
};
у некоторых линукс-юзеров может упасть на этапе линковки
0
Не сочтите за ханжество, но когда же прекратится этот содом?
забаньте пидора!
0
"Эффективный C. Профессиональное программирование" Роберт Сикорд.
Фуфел или новая "белая книга" ?
0
-module(pqueue).
-export([ in/3
, out/1
, new/0
, close/1
]).
-type prio() :: non_neg_integer().
-record(priority_queue,
{ tab :: ets:tid()
}).
-define(size, {size, size}).
-define(seqno(PRIO), {seqno, PRIO}).
-opaque t() :: #priority_queue{}.
-export_type([ prio/0
, t/0
]).
-spec new() -> t().
new() ->
Tab = ets:new(pqueue_tab, [ordered_set]),
ets:insert(Tab, {?size, 0}),
#priority_queue{tab = Tab}.
-spec close(t()) -> ok.
close(#priority_queue{tab = Tab}) ->
true = ets:delete(Tab),
ok.
-spec in(term(), prio(), t()) -> ok.
in(Val, Prio, #priority_queue{tab = Tab}) when Prio >= 0 ->
Key = {get_next_seqno(Tab, Prio), Prio},
true = ets:insert_new(Tab, {Key, Val}),
ets:update_counter(Tab, ?size, {2, 1}, {?size, 0}),
ok.
-spec out(t()) -> {value, term()} | empty.
out(#priority_queue{tab = Tab}) ->
case ets:first(Tab) of
Key = {SeqNo, _Prio} when is_integer(SeqNo) ->
Val = ets:lookup_element(Tab, Key, 2),
ets:update_counter(Tab, ?size, {2, -1}),
ets:delete(Tab, Key),
{value, Val};
_ ->
empty
end.
%% This function generates keys that go in sequence for each
%% individual priority level, but interleave for different priority
%% levels. Keys with lower priority are more sparse, so they are
%% consumed less often in the total sequence
get_next_seqno(Tab, Prio) ->
Delta = Prio + 1,
Key = ?seqno(Prio),
ets:update_counter(Tab, Key, {2, Delta}, {Key, 0}).
Творение безумца или гения.
0
for (auto& key : interruptController.hardwareInterrupts | std::views::keys)
{
memory[key * 2 ] = 0xFF;
memory[key * 2 + 1] = 0xFF;
}
охуенно.
+1
%% This function is needed as a hack to guide dialyzer into inferring
%% the correct types.
-spec id(A) -> A.
id(A) ->
A.
%% Где-то в header'е....
-define(deftarget(RECIPE), {RECIPE, fun my_module:id/1}).
%% A horrible, horrible hack to make Dialyzer infer right type of the promise return value
-define(want(TARGET),
(fun() ->
case TARGET of
{_, ___IAmSorryYouHaveToSeeThisWorkaroundForDialyzer} ->
___IAmSorryYouHaveToSeeThisWorkaroundForDialyzer(my_module:want(TARGET))
end
end)()).
Пути статический типизации в Erlang неисповедимы.