Pull to refresh
40
0.3
Dmitry @domix32

Жопа котика

Send message

Освещение бы сделать не красным и более разнообразным. У вас там магия есть, а освещение только от факелов идёт.

Квантовой гонке уже лет 10, в том числе и с Россией. Наши там какие-то кристальные состояния пытаются утилизировать, например. Проблемы у всех примерно те же самые - быстрая декогеренция и получение шума вместо вычислений. MZM теоретически решают часть проблем, но ни у кого нет пруфов их существования. Ну а уж про то что ими как-то надо манипулировать, чтобы получать какие-то осмысленные вычисления, а не просто шум я вообще не говорю.

Сами авторы заявляют, что измеряют что-то, но не факт, что это именно майорановские моды. Пару прошлых статей по теме MZM за авторством одной из майковской команды отозвали.

В свежей статье также есть несостыковки - графики имеют очень странную форму и наличие тех самых модов пока никак не подтверждено. Сейчас дополнительно анализируются 90 гб каких-то сопутствующих данных.

Так что пока все эти статьи про прекрасное квантовое будущее - всего лишь wishful thinking.

В среднем выглядит неплохо, если оно работает. А так

 COORD *nSnake = (COORD *)realloc(Snake, snakeSize * sizeof(COORD));

учитывая, что действо происходит в терминале кажется достаточно выделить один буфер размером в терминал и больше не реаллоцировать змея. Заодно можно обойтись циклическим буфером - на одной итерации без еды и исчезает один хвост: держим массив с индексом координаты головы. На рендере змеи просто от координаты головы отсчитываем длину змея в обратную сторону.

[a b c _ _ _ _ _ _ _ _ _] len 3 head 2 # змейка на три клетки
[a b c d _ _ _ _ _ _ _ _] len 3 head 3 # змейка двинулась на клетку d
[a b c d e _ _ _ _ _ _ _] len 4 head 4 # змейка съела яблоко в клетке e
...
[a b c d e f g h a _ _ _] len 4 head 8 # голова в точке где когда-то был хвост
... 
[l b c d e f g h a i j k] len 4 head 0 # змейка в координатах lkji

В реальности буффер будет наверное размером в терминал, то бишь что-нибудь в районе 30х140 ~ 4k+ элементов, так что до края голова доберётся не скоро.

if (true) var = true это все же антипаттерн, мешающий читать код.

if (Snake[0].X == W || Snake[0].X == 0)
{
  isGameEnd = TRUE; // укусила боковые границы
}
if (Snake[0].Y == H || Snake[0].Y == 0) 
{
  isGameEnd = TRUE; // укусила нижнюю или верхнюю границы
}

У вас есть возможность сложить это в меньшее количество строк, просто переназначив значение через оператор |= . Ну и копипастить каждый раз тоже снижает читаемость: т.к. у вас в этом месте код не меняется обращение по индексу можно вынести в одну переменную.

const COORD* head = &Snake[0]; // чтобы не копипастить индекс каждый раз
isGameEnd |= head->X == W || head->X == 0; // укусила боковые границы
isGameEnd |= head->Y == H || head->Y == 0; // укусила нижнюю или верхнюю границы
for (int i = 1; i < snakeSize; i++) 
{
  // укусила себя
  isGameEnd |= head->X == Snake[i].X 
            && head->Y == Snake[i].Y;
}

там ещё есть нч/кц и при желании вообще заменить на оператор цепочки то и писать почти как на хаскеле, просто записывая выражения в цепочку.

вкл прелюдия;

про главная() то
    для число := 1..100 то
        если число ост 15 = 0 то печать(«ФиззБазз\н»);
        иначе то если число ост 3 = 0 то печать(«Физз\н»);
        иначе то если число ост 5 = 0 то печать(«Базз\н»);
        иначе то печать(число, «\н»);

Но вообще очень рекомендую посмотреть стрим. Он на русском, если что.

На антиящерском не знаю, но как минимум видел форки, которые переводили язык целиком на французский и кажется ещё были испанский и иврит.

Так на расте уже давно пишут. Сам хуя не требует переключения раскладки с русского.

У меня таким макаром появился "плейлист" с мемами в гитхабе - там нынче можно настраивать списки звездочек.

Хороший Учебный Язык (ХУЯ) - полноценный компилятор к 1 апреля. репа. стрим.

alloc_geiger - заставляет динамики трещать, когда происходит аллокация памяти.

dreambird - лучший язык 21 века. репо. вводная [en]

YoptaScript - многие наверняка слышали о нём ещё до того как он попал в браузер.

cbt - Ceph Benchmarking Tool. Назначение оправдывает название. репо.

ripmors - blzaingly fast morse encoder/decoder.

pygyat - зумерский синтаксис для питона

В†† - Великий язык древних русов ве крест крест. репо. история.

А, ну то бишь аналог шланговских матчеров скрешеный с плотной интеграцией непосредственно в API IDE. Ну и языки соответствующие - java, node js/ts, kotlin etc.

Некоторое время назад я попробовал найти формальное доказательство безопасной работы с памятью, которое реализовано в Rust, но так и не смог его найти

Мне интересно, что же в итоге автор нашёл приближенное по теме? Попадались ли такие имена как Хоар, Мацакис, Юнг, Гроссман?

Ну, по сути-то оно все равно языковой сервер, может конечно без поддержки того самого языкового протокола, но принцип работы тот же самый. А что за PSI?

Вот, да, самая удивительная фраза во всей статье. Чтобы отломить уже написанные LSP надо нехило так постараться.

 Атака: мошенничество

м-да, ну и уровень экспертности, конечно, у вашей Елизаветы.

Если перед вами стоит задача, требующая глубокого анализа, работы с научными статьями или построения сложных гипотез, ваш выбор — рассуждающие модели: o1 или o1-pro, а также o3-mini‑high

Мне интересно у кого-нибудь вообще это хоть раз работало? Сколько трогал всякие модели, оно после пары-тройки запросов легко начинает выдумывать всякую фигню, которую в статье потом не найти. Аналогичная ситуация, когда начинаешь спрашивать какие-то выжимки из статей - обычно они морозятся, мол читайте сами, расскажите мне, а я потом вам расскажу. Буквально, как в укрощении строптивого.

Да ну хоть что-то. Скриншоты таблички в экселе - такая себе статья. Не говоря уже, что остальные с этим работать не могут - сиди все ссылки ручками вбивай.

На самом деле и это тоже не самая точная цифра, ибо там тесты местами интрузивные типа:

public static final Field TEST = make("test",Type.NIL,-2,false);
public static final Field TEST2= make("test",Type.NIL,-2,true);

Плюс всякие утилиты типа IR Printer, JSViewer и тд. Именно очищенный компилятор там наверняка ещё меньше. Плюс в каждой главе я так понимаю там по своему дубликату кода компилятора лежит. Хотя с вашим логом консоли непонятно откуда конкретно вы замеряете, ибо на бранче main там src появляется с уровня глав, а у вас он от корня репы появляется как-то.

То есть, они и так пытались экономить как могли, но всё равно получился огромный код.

Собсна, поэтому и писал изначальный комментарий - Java довольно вербозная сама по себе. А вот про однопроходность не понял в чем минус - линейный проход с тривиальными оптимизациями быстрее и проще в SoN, нежели беготня по AST. Конечно, и там и там есть свои плюсы и минусы.

Дык джава же, плюс это миллион всяких примеров небось

Information

Rating
2,413-th
Date of birth
Registered
Activity