- 1
- 2
- 3
- 4
- 5
void SimplexIteration::ReWidth()
{ w[-2]=w[0]=Width; w[-1]=5; for(size_t j=1;j<A.size_j();j++) w[j]=Width;
if (var) for(size_t j=1; j<A.size_j(); j++)
if(strlen(var[j])>w[j]) w[j]=strlen(var[j]);
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−63.5
void SimplexIteration::ReWidth()
{ w[-2]=w[0]=Width; w[-1]=5; for(size_t j=1;j<A.size_j();j++) w[j]=Width;
if (var) for(size_t j=1; j<A.size_j(); j++)
if(strlen(var[j])>w[j]) w[j]=strlen(var[j]);
}
Особенно порадовало w[-2]. Знаю, что так можно, но все равно говнисто.
0
@dataclass(slots=True)
class Govno:
govno_index: int
def patch(self, indices_dict: Dict[int, int]) -> None:
new_index = indices_dict[self.govno_index]
self.govno_index = new_index
@dataclass(slots=True)
class Mocha:
mocha_index: int
def patch(self, indices_dict: Dict[int, int]) -> None:
new_index = indices_dict[self.govno_index]
self.govno_index = new_index
Метод «patch» был скопипащен из класса «Govno» в класс «Mocha». Тайпчекер никаких ошибок не показывал; все типы были выведены корректно.
А в рантайме всё упало, что и неудивительно!
−1
(define A (list 1 2 3 4 5))
(define (reverse L)
(let ((C (cdr L)))
(if (not (null? C))
(cons (reverse C) (car L))
(car L))))
(newline)
(display (reverse A))
(newline)
Почему у меня получается х****й лист после реверсинга? :-(
−3
Меня больше не торкает C++
В попытках не потерять ясность ума и рассудка я вернулся к своему любимому делу, но какого же было моё удивление, когда я обнаружил что более не наслаждаюсь процессом.
Ни страсти, ни истощения. Ничего. Процесс ничем не отличается от простого втыкания в красиво подсвеченные буквы IDE и блокнотов.
Возможно я слишком долго не принимался за код, возможно пока я боролся со своими зависимостями я убил и эту,
возможно дело в том что я более не на Linux, возможно мои эмоции выгорели и осталась лишь одна материальная сущность,
не движимая ни в какой мере иррациональной мотивацией, или настолько сильно предаюсь эмоциям в других сферах, что не хватает на C++, теряюсь в догадках.
Меня это волнует. Я который день не могу собраться с мыслями, наслаждаться жизнью. Я практически потерял наслаждение от
огромной части себя, от той части, что определяла меня таким какой я есть, что сделала меня воистину свободной, позволявшей уходить от реальности и глупостей.
Я изменился, я потерял контроль, люди более не могут меня выносить из-за того что я выкладываю им сотни слов с тысячами смыслов за минимальное время практически скороговоркой.
0
auto&& rv = elements | std::ranges::views::values | std::ranges::views::transform([](auto&& a) -> auto
{
StatisticsElementMultiple n = std::move(a);
n.nanosec /= n.count;
return n;
});
std::vector<StatisticsElementMultiple> el(std::begin(rv), std::end(rv));
std::ranges::sort(el, [](auto&& a, auto&& b) -> bool {return a.nanosec > b.nanosec; });
for(auto&& [nanosec, name, prefixes, count] : el)
{
printf("%-10d %04X %12s %6d\n", count, prefixes, name.c_str(), nanosec);
}
+2
class S
{
print()
{
print("Hello World");
}
}
interface IPrn
{
print();
}
function run(iface:IPrn)
{
iface.print();
}
function main() {
const s = new S();
let iface = <IPrn>s;
iface.print();
run(s);
}
короче новый говнокод подоспел. Т.к. вы все тут самые умные я не раскажу в чем фича. Сами догадаетесь
+1
import std.stdio;
template GenMix()
{
const char[] GenMix =
"template GenMix2()" ~
"{" ~
" const char[] GenMix2 = \"writeln(\\\"Hello, Wandbox!\\\");\";" ~
"};";
}
template MixMix(string Name)
{
const char[] MixMix = "mixin(" ~ Name ~ "!());";
}
mixin(GenMix!());
void main()
{
mixin(GenMix2!());
mixin(MixMix!("GenMix2"));
}
https://wandbox.org/permlink/1HpjfgrgVLyBSrXG
ГОМОИКОННОСТЬ в D
+1
public function isBooted()
{
return true === $this->booted;
}
Дичь
+1
// https://docs.docker.com/engine/api/v1.24/#create-a-container
POST /v1.24/containers/create HTTP/1.1
Content-Type: application/json
Content-Length: 12345
{
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": true,
"AttachStderr": true,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"FOO=bar",
"BAZ=quux"
],
...
}
Ядро предоставляет сисколл execve. Execve принимает переменные окружения в виде массива строк A=B -
не знаю конкретных причин, почему так сделано, но скорее всего просто потому что писать хэшмапу под
это дело, которая еще и будет выкинута из памяти через относительно небольшое время - дело дорогое и
ненужное, плюс наверняка какой-нибудь лишний пердолинг со стеком.
https://man7.org/linux/man-pages/man2/execve.2.html
Го, "человеческий язык" с поддержкой обычных мап из коробки, ничтоже сумляшеся не замечает никакой
проблемы и заставляет пользователя передавать переменные окружения в том же формате, потому что у
языка не только синтаксис должен быть таким же тупым, как программист на нём и вообще мы же тут
делаем вид, что мы C, только лучше.
https://golang.org/pkg/os/exec/#example_Command_environment
Докер, "человеческий сервис" с HTTP API, использующим формат JSON с поддержкой обычных мап из коробки,
ничтоже сумляшеся не замечает никакой проблемы и заставляет пользователя передавать переменные
окружения в том же формате, потому что на программист на языке должен быть тупым, как этот язык.
https://docs.docker.com/engine/api/v1.24/#create-a-container
В результате мы имеем пачку долбоебов, из-за которых оперирующие (мапами / объектами / словарями / как угодно назовите)
нормальные люди должны вести себя как типичные гошники.
+6
Функция РазрешеноМенятьЗаявкуПоПравилу9Утра()
_Год = Год ( Объект.Дата);
_Месяц = Месяц( Объект.Дата);
_День = День ( Объект.Дата) + 1;
Если _День = 29 Тогда
Если _Месяц = 2 Тогда
Если (_Год - 2016)%4 <> 0 Тогда
_Месяц = 3; _День = 1;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Если _День = 30 Тогда
Если (_Месяц = 4) ИЛИ (_Месяц = 6) ИЛИ (_Месяц = 9) ИЛИ (_Месяц = 11) Тогда
_Месяц = _Месяц + 1;
_День = 1;
КонецЕсли;
КонецЕсли;
Если _День = 31 Тогда
Если (_Месяц = 1) ИЛИ (_Месяц = 3) ИЛИ (_Месяц = 5) ИЛИ (_Месяц = 7) ИЛИ
(_Месяц = 8) Тогда
_Месяц = _Месяц + 1;
_День = 1;
ИначеЕсли _Месяц = 12 Тогда
_Месяц = 1;
_День = 1;
КонецЕсли;
КонецЕсли;
_9УтраСледующегоДня = Дата( _Год , _Месяц, _День,9,0,0);
Если ТекущаяДата() < _9УтраСледующегоДня Тогда
Возврат Истина;
Иначе
Возврат Ложь;
КонецЕсли;
КонецФункции
По-моему, достойно Вашего внимания ;)