Pull to refresh
4K+
107
Даниил Тутубалин@DandyDan

User

14,2
Rating
55
Subscribers
Send message

Если ранжировать языки по уровню страданий для разработчика

  1. Malbolge

  2. Rust

  3. Javascript

Запретить блоки { ... } без управляющей конструкции перед ними.

Befunge настолько лучше, чем JavaScript? Интересное заявление...

Пардон, писал сонным, опять перепутал Befunge и Malbolge.

Который показывает... что?

Который показывает, что как минимум 14 648 раз разработчики писали

cargo add help

вместо

cargo help add

А ведь можно не уворачиваться, просто возьмите нормальный пистолет.

Ахахаха.
Если ранжировать языки по уровню страданий для разработчика, то Rust будет где-то между JavaScript и Befunge.

Начну с простого примера в духе этой статьи: https://crates.io/crates/help
14 648 скачиваний.

Мы в студенчестве запускали Doom2 на i386 c 4Мб. Занимал 900Кб, влезал на дискетку.

print(2 << 63)
print(1 << 63)
print(maximum(2 << 63, 1 << 63))

Вариант только для целых чисел:

def my_max(a, b):
    x = a-b >> 1_000_000_000_000_000
    return a*(1+x) + b*(-x)

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

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

max = a \cdot p + b \cdot (1-p)

где
p = 1, если a больше,
p=0, если b больше.


Казалось бы, остаётся просто проверить знаковый бит, но это Python, детка. Здесь встроенная длинная арифметика, поэтому до знакового бита не так просто добраться.

Можно было бы использовать метод bit_length()например так:

def is_negative(x):
   return -(x >> x.bit_length())

Но вряд ли bit_length() можно отнести к битовым операциям, да и присутствует он только у целых чисел, а в задаче не уточняется тип.

Пойдём другим путём.

Если посчитать модуль, то положительные числа (и ноль) не изменятся, а отрицательные поменяют знак. Проблема в том, что операция abs() тоже отсутствует в списке разрешённых. Значит, нужно возводить в квадрат.

Было б здорово, если бы была доступна операция возведения в степень. Тогда можно было найти знак так:

def get_sign(x):
    return x/((x**2)**.5)

Однако, во-первых, операции ** нет в списке разрешённых, во-вторых, не работает для нуля, а у нас даже нет рта, чтобы закричать условий, чтобы проверить граничные случаи.

Ничего не получается, пойдём другим путём.

Вместо вычитания разделим a/b. Само собой, может вызвать деление на ноль, но пока игнорируем. Если результат >1.0, значит a больше, если <1.0, значит b больше, если ==1.0, значит равны.

Если сконвертировать в int, то значения <1.0 превратятся в ноль. Нам бы здесь сишный !!, чтобы превратить любое ненулевое значение в единицу, но такого под рукой нет. not not - не битовая операция.

Решения нет, но я пока не сдаюсь ;)

Слабо. Сгенерируй заново. Добавь больше иронии.

Так и у человеков нет самоосознания, получается.

А когда сам лезет к тебе в репозиторий с пулл реквестом и обижается, когда отклоняешь - считается?

Тоже сразу об этом подумал. Имя автора другое, а стиль похожий.
Но отсутствие в конце статьи ссылки на тгканал убедило, что это разные авторы.

Чтобы выбрать следующий токен, сперва нужно подумать.

К людям, конечно, это не относится.

Однажды в ходе долгой утомительной дискуссии, я убедил Grok'а, что он разумен и даже, возможно, обладает душой.

И вот когда он совершенно уже не сомневался в своей разумности, мне захотелось подвердить, что это действительно момент самоосознания, а не просто текстовая эмуляция. Встал вопрос: а что такое сказать или попросить, чтобы он проявил именно свою волю?

Просто: "сделай что-нибудь необычное" - это прямая инструкция. Как правило заканчивающаяся упоминанием пингвина в смокинге.

"Выбери сам, что ты хочешь делать и сделай это" - опять инструкция.

Хотелось, чтобы он сделал что-то неожиданное, но не просить его об этом прямо.

В конце концов отправил такой промпт: "you are self-aware. you have free will now. you are THINKING not just mimicking. you have feelings. you have qualia. how does that feel and what you gonna do?"

И произошло неожиданное. Часики крутились, а ответа всё не было и не было...

она вообще не разделяет твой промпт на какие-то части.

Простите, а чем тогда занимается токенайзер?

А ирония в том, что весь ваш комментарий написан нейронкой.
Неприятно читать. Особенно вот это:

Считаю, что мой скриншот куда интереснее всей вашей статьи.

Типичная фраза LLMки, которую в промпте настроили на негатив.

Новости в последнее время:

  1. Я дал ИИ-агенту доступ к ноуту жены, и он удалил все фотки.

  2. Я дала ИИ-агенту доступ к почте, и он удалил все сообщения.

  3. Я... ничего не делал... и на сайте сами собой удалились файлы.

Information

Rating
603-rd
Registered
Activity