Hacker News Digest

Тег: #context

Постов: 3

Go Concurrency Distilled (antonz.org) 🔥 Горячее 💬 Длинная дискуссия

Go предоставляет лёгкие горутины, запускаемые ключевым словом go, которые планируются рантаймом на системные потоки. Для синхронизации используются sync.WaitGroup, увеличивающий счётчик при Add и уменьшающий при Done, а Wait блокирует до нуля. Каналы обеспечивают синхронный обмен данными: отправка блокирует до получения, а select позволяет ждать нескольких каналов одновременно, включая time.After для таймаутов. Контекст (context.Context) передаёт сигналы отмены и таймауты через WithCancel и WithTimeout, проверяемые через Done(). Для защиты共享 данных применяются мьютексы (sync.Mutex), а атомарные операции (sync/atomic) работают без блокировок. Семафоры ограничивают доступ к ресурсам через буферизованные каналы, а sync.Once гарантирует однократную инициализацию. Профилирование выполняется через net/http/pprof или вручную: pprof.StartCPUProfile для CPU, runtime.MemStats для памяти, trace.Start для трассировки, включая flight recording с ограничением по размеру и времени. Все инструменты направлены на безопасную и эффективную конкурентность без гонок данных.

by chmaynard • 26 сентября 2026 г. в 14:34 • 382 points

Оригинал • HN

#atomic#channel#concurrency#context#go#mutex#pprof#profiling#runtime#sync

Комментарии (180)

Go-конкурентность проста для старта, но сложна для безопасной эксплуатации в проде: утечки горутин, отсутствие встроенной отмены и трудности с отладкой — частые проблемы. Опытные разработчики обходят их через context, WaitGroup и избегают каналов там, где они не нужны. Не используйте каналы повсеместно — многие профессионалы Go редко применяют их, предпочитая последовательный код и вводя конкуренцию только при превышении SLO. Перед запуском горутины обязательно определите, как она будет остановлена — утечки горутин в проде трудно отлаживать и требуют перезапуска процесса. Используйте context для отмены, но помните: отмена требует сотрудничества горутины — Go не поддерживает прерывание, так как не имеет исключений. Простые шаблоны go+chan из учебников часто небезопасны — реальные приложения требуют хаков для управления жизненным циклом горутин. Избегайте сложных графов операций в Go — без generics и completable futures это сложно; альтернативы вроде goyek помогают, но не решают фундаментальные ограничения. Go-каналы не эквивалентны Haskell's STM — отсутствие транзакционной памяти снижает абстрактную мощность, а поведение при закрытии канала дважды — произвольное и непредсказуемое. Java с виртуальными потоками и структурированной конкурентностью предлагает более надёжный и безопасный подход, чем Go, особенно с учётом отсутствия memory safety в Go. Erlang/BEAM и Elixir имеют более зрелую модель акторов с распределённой обработкой, устойчивостью к сбоям и поддержкой межмашинной коммуникации, чего Go не имеет. Kotlin coroutines и структурированная конкурентность решают проблему отмены и управления жизненным циклом более элегантно, чем Go-контекст. Haskell позволяет писать асинхронный код как синхронный — без прыжков между сообщениями, что делает логику проще для понимания, чем в Go-каналах. Julia предлагает более продвинутую систему потоков: M:N, структурированная конкурентность, распределённые вычисления и безопасные атомарные операции в стандартной библиотеке. Опытные разработчики Go часто избегают mutex и каналов в PR — любое использование этих механизмов воспринимается как признак ошибки. Для сложных задач с очередями и диспетчеризацией лучше выносить конкурентность в отдельные менеджеры — логика остаётся линейной, что упрощает аудит и отладку. Go-конкурентность — это магия для старта, но требует глубокого понимания для продакшена: утечки, отмена и отладка — главные боли, которые не решаются синтаксисом. Каналы в Go — это просто буферизованные очереди; небуферизованные каналы создают rendezvous-синхронизацию, что отличает их от mvar и требует осознанного применения.

AI Isn't Outthinking Mathematicians. It's Out-Remembering Them (davidepiffer.com) 🔥 Горячее 💬 Длинная дискуссия

Искусственный интеллект не «умнее» математика — он просто помнит в разы больше. В отличие от человека, чья рабочая память удерживает лишь несколько абстрактных элементов одновременно, нейросети могут удерживать в контексте тысячи формул, промежуточных выводов, определений и даже отброшенных подходов. Это позволяет решать сложные задачи, не перегружая биологические ограничения.

Ключевой факт: человеку трудно умножить в уме два трёхзначных числа — не из-за сложности операций, а из-за необходимости одновременно хранить промежуточный результат и текущую цель. Бумага или цифровой контекст устраняют эту «узкую горлышко» интеллекта. Математики используют нотацию, схемы и «чанкинг» (группировку знакомых конструкций), чтобы компенсировать лимит памяти, но не преодолевают его. AI же работает с внешним «бесконечным блокнотом», где каждый шаг фиксируется. Это делает его похожим на машину-умножитель Вон Неймана: не гениальный в философском смысле, но способный обрабатывать масштабы, недоступные мозгу.

Запомните: рабочая память — главный барьер для человеческого математического мышления. Её объём напрямую коррелирует с успехом в математике, независимо от общего ИК. Но у AI нет «глубины» Вон Неймана — он лишь использует его скорость и объём памяти как инструмент. Следующий прорыв наступит, когда ИИ поймёт, что задача сформулирована неверно, и переосмыслит её фундаментально.

Пример: Чтобы доказать теорему о сходимости ряда, математик может одновременно удерживать в голове 5 определений, 3 предыдущих леммы и текущую цель. AI же хранит все эти элементы в контексте и перебирает варианты, не уставая.

by rzk • 15 августа 2026 г. в 18:13 • 291 points

Оригинал • HN

#chunking#context#external-memory#llm#mathematics#memory-limitations#von-neumann-architecture#working-memory

Комментарии (249)

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

Claude Memory (anthropic.com) 🔥 Горячее 💬 Длинная дискуссия

Anthropic представила функцию памяти для Claude, которая позволяет ИИ запоминать контекст проектов, предпочтения команды и рабочие паттерны. Функцией уже пользуются Team и Enterprise-планы, а теперь она доступна и для Pro и Max. Память полностью опциональна с детальным контролем пользователя, а для конфиденциальных разговоров добавлен режим "Инкогнито", который не сохраняется в истории.

Каждый проект имеет отдельную память, что предотвращает смешивание информации между разными инициативами. Пользователи могут просматривать и редактировать то, что запомнил Claude, через сводку памяти. Функция прошла тщательное тестирование безопасности, включая проверку на возможность воспроизведения вредных паттернов. Как отмечено в статье: "Memory helps you and your teams manage complex, concurrent initiatives without mixing unrelated details, serving as a safety guardrail that keeps sensitive conversations contained".

by doppp • 23 октября 2025 г. в 16:56 • 537 points

Оригинал • HN

#anthropic#claud#context#data-management#llm#memory#privacy#security

Комментарии (302)

  • Пользователи обсуждают, что новая функция памяти в Claude не работает как RAG-система, а скорее как «контекст-окно плюс» — она не запоминает документы, а лишь «контекст» внутри одной сессии.
  • Участники отмечают, что Anthropic не раскрывает, как именно реализована память: нет никакого доступа к «памяти» или возможности её редактировать, что вызывает вопросы о контроле и прозрачности.
  • Ряд участников подчеркивает, что модель не может отличить, какие именно воспоминания будут использованы в будущем, и это вызывает опасения по поводу приватности и безопасности.
  • Некоторые участники высказывают, что не ясно, как именно память влияет на стоимость и токены, и нет ли у неё каких-то ограничений по объёму.
  • Также обсуждается, что Anthropic не предоставляет никакого способа переноса памяти между различными проектами или даже между Claude и ChatGPT.