Как стать автором
Обновить

Моя лента

Тип публикации
Порог рейтинга
Уровень сложности
Предупреждение
Войдите или зарегистрируйтесь, чтобы настроить фильтры
Пост

Система автоматической унификации назначений данных (САУНД) разрабатывается для повышения внятности программирования. Идея обсуждалась ранее. Приведем эксперименты по созданию спецификации языка программирования.

def c = add(a, b, carry=0):
  not a and not b =>
    carry => c = [carry]  else => c = []
  else =>
    not a => @a = [0]
    not b => @b = [0]
    a = [a' x]
    b = [b' y]
    last = (x + y + carry) % base
    new_carry = (x + y + carry) // base
    c = [add(a', b', new_carry), last]


def m = findmin(a):
  m = nil
  a =>
    run enumerate(i=a.begin):
      i < a.end =>
        *i < *m => m = i
        enumerate(i.next)
      

def sort(@a):
  a =>
    a = [x a']
    i = findmin(a')
    swap(@x, *i)
    sort(@a')


def s = sum(a):
  a =>
    a = [x a']
    s = x + sum(a')
  else =>
    s = 0


def pythagorean_table(n):
  run rows(i=1):  i <= n  =>
    run cols(j=1):  j <= n  =>
      print(i * j)
      cols(j + 1)
    print("\n")
    rows(i + 1)    

Условные конструкции обозначаются символом =>, вместо циклов - рекурсивный вызов функции-блока.

Квадратные скобки обозначают операцию создания списка либо добавления элемента к списку, аналогично MATLAB.

Символ @ используется при вызове функций, чтобы указать на возможность модификации переменной.

Символ * перед переменной обозначает операцию разыменования итератора.

Ключевое слово run используется для запуска функции-блока.

В языке отсутствуют операторы, прерывающие ход выполнения программы, такие как return, break, continue.

Теги:
0
Комментарии0

Новости

Статья

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

Время на прочтение4 мин
Количество просмотров47

Что могут сделать 4 школьника за 3 дня?

Первая олимпиада по промышленной разработке PROD. О том, как это было.

PRODолжить
Рейтинг0
Комментарии0
Статья

Сделано в СССР. Советский истребитель спутников — первым в мире перехватил космический аппарат-мишень

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров842
Как только 4 октября 1957 года Советский Союз запустил в космос первый искусственный спутник, в США задумались о методах космической безопасности и войны.

Ученые и инженеры США и СССР вели разработки в разных направлениях, включая военные. Речь пойдёт о 60-х годах XX века, о временах ещё до высадки американцев на Луну.



Читать дальше →
Всего голосов 15: ↑12 и ↓3+9
Комментарии4
Статья

Понимаем полностью useMemo и useCallback

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров322

Понимаем полностью useMemo и useCallback

Экскурсия по двум самым известным хукам в React

Если вы изо всех сил пытались разобраться в useMemo и useCallback, вы не одиноки! Я разговаривал со многими разработчиками React, которые cломали голову над этими двумя хуками.

Моя цель в этом здесь — прояснить всю эту путаницу. Мы узнаем, что они делают, почему они полезны и как получить от них максимальную пользу.

Погнали!

Читать далее >
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Истории

Новость

Пользователь Reddit запустил игры с Game Boy Advance на Apple Watch Ultra под управлением Android

Время на прочтение1 мин
Количество просмотров567

Пользователь Reddit под ником R3V3RB_7 соединил умные часы с контроллером и создал импровизированную консоль. На получившемся устройстве он запустил игру Castlevania: Aria of Sorrow. Основой для необычной системы стали Apple Watch Ultra, контроллер Dual Sense и эмулятор GBA My Boy!

Читать далее
Рейтинг0
Комментарии1
Статья

Теорвер не нужен в играх, но это не точно

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров549

Теория вероятностей – одна из важных частей не только игрового дизайна, строго заскриптованые события без вариантов быстро вызовут скуку у игроков. У меня за спиной был всего один год этой дисциплины в универе, и не сказать, чтобы нужно было применять это каждый день, но когда надо объяснить базовые знания дизайнерам, то приходится сталкиваться с тем, что каждый дизайнер понимает теорию вероятности по-своему. Эти мои размышления появились после обсуждения с одним из коллег замечательной статьи Яна Шрайбера о неслучайных случайностях и сломанных ГСЧ в играх. Игры - это огромные недетерминированные системы, независимо от того, закладывали это в проект или нет. И понимание природы случайности для контролирование таких систем, которые влияют на опыт игрока, помогает создавать их так, чтобы они не казались прибитыми сбоку гвоздями. Если в системе есть случайность, нужно понимать как её изменить, приблизив её к бытовому пониманию игроков. И даже если все механики игры строго детерминированные - их взаимодействие дает случайный результат, в чём вы можете убедиться, посмотрев многочисленные видео по различным взломам игровых систем.

Читать далее
Рейтинг0
Комментарии0
Статья

Теорема о перестановке коэффициентов многочлена, принадлежащих идеалу кольца

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров209

В этой статье будет рассмотрена теорема, о существовании которой не получилось узнать из Интернета, а также будет очень кратко описана возможность применения данной теореме на практике для увеличения криптостойкости системы McEliece.

Читать далее
Рейтинг0
Комментарии0
Новость

Microsoft начинает показывать полноэкранное уведомление об окончании поддержки Windows 10

Время на прочтение2 мин
Количество просмотров2.9K

Microsoft начала показывать полноэкранные сообщения о том, что срок поддержки Windows 10 подходит к концу в октябре 2025 года. Компания благодарит пользователей предлагает узнать больше о преимуществах Windows 11. 

Читать далее
Всего голосов 4: ↑5 и ↓-1+6
Комментарии13
Статья

Istio Ambient Mesh для начинающих

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров479

Представляю вашему вниманию перевод статьи "Demystifying Istio Ambient Mesh for Total Beginners" автора Antonio Berben. В этом посте мы рассмотрим проблемы, возникающие в режиме sidecar, и то, как Istio Ambient Mesh изобретательно решает их, минимизируя использование прокси-серверов, упрощая масштабируемость и поддерживая безопасность. Давайте разберемся.

Читать далее
Рейтинг0
Комментарии0
Статья

Переживание за факт переживания и переживание за отсутствие переживания

Время на прочтение13 мин
Количество просмотров839

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

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

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

Как глубока кроличья норма
Всего голосов 8: ↑8 и ↓0+8
Комментарии3
Статья

Задача о сумме подмножеств

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров1.1K

Задача о сумме подмножеств в общей формулировке звучит так:

Существует множество S чисел, вопрос состоит в том, будет ли сумма некоторого подмножества от S равна заданному числу Т.

Известно, что данная задача NP-полная.

Мы будем решать эквивалентную задачу, где все числа являются натуральными.

Частным случаем задачи о сумме подмножеств является задача разбиения множества чисел:

Множество чисел S необходимо разбить на два подмножества S1 и S2, где сумма S1 равна сумме S2.

(От задачи о сумме подмножеств текущая отличается только тем, что T = SUM(S1) / 2 = SUM(S2) / 2)

Хочу предложить вам простой и элегантный способ относительно быстрого решения обеих задач методом целочисленного линейного программирования (ЦЛП). Мы получим не только точный ответ на вопрос, но и найдём искомое подмножество.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии0
Новость

Instagram** начал обнаруживать и размывать обнажённые фото, пересылаемые подросткам

Время на прочтение2 мин
Количество просмотров2.3K

Meta* начала тестировать новую функцию защиты подростков в Instagram**. В сообщении компании говорится, что теперь соцсеть будет обнаруживать и размывать потенциально вредные фотографии, которые пересылаются молодым людям в личные сообщения.

Читать далее
Всего голосов 1: ↑2 и ↓-1+3
Комментарии18
Пост

Студентом я мечтал скрестить Doom II, Fallout II и, не смейтесь, Minecraft — но, поскольку его ещё даже в проектах не было, за него отдувался не менее квадратный Rise of the Triad, к которому я додумал более гибкую геометрию блоков (получился по сути Minecraft).

Открытый мир (сгенерированный) с квестовыми городами (созданными умелыми руками всяких Петерсенов), и шастать вслепую не хватит никакой жизни — чтобы найти новую локацию, надо искать зацепки. Зачистить старую от «футболов» с «козлами» и посмотреть документы. Найти не до конца разбитую железную или автомобильную дорогу, которая куда-то да ведёт. Логически допереть, что тут с точки зрения логистики и инфраструктуры что-то обязано быть. И бои, бои, бои — в локациях открытого мира, в путешествиях, в (разумеется) квестовых городах! В основе всего всё-таки Doom :)

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

И только ручной какодемон Сильвестр всё ещё пытается сожрать последнюю канарейку на Земле — до чего же упрямая скотина…

Ну, крафт оружия на тот момент уже напрашивался, тут я не был оригинален. Ещё не был мейнстримом, но уже напрашивался. А вот движок тогдашнее железо едва ли бы потянуло. Даже упрощённый. Хотя вот когда оно дотянуло — блажь попробовать хотя бы движок мне в голову всё-таки ударила, уже без связи со несбывшимися мечтами, конечно.

А сейчас все такое пишут, лол :) Но в сеттинге Doom II, увы, в это вряд ли получится поиграть. Порты такое не потянут.

Теги:
+2
Комментарии0

Ближайшие события

PG Bootcamp 2024
Дата16 апреля
Время09:30 – 21:00
Место
МинскОнлайн
EvaConf 2024
Дата16 апреля
Время11:00 – 16:00
Место
МоскваОнлайн
Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн
Новость

Британские власти рассматривают возможность запрета на продажу телефонов детям моложе 16 лет

Время на прочтение1 мин
Количество просмотров1.7K

Власти Великобритании обдумывают введение запрета на продажу смартфонов детям в возрасте до 16 лет. Ранее опросы показали, что 58% родителей в Англии поддерживают подобные ограничения. 

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии26
Новость

Apple разрешит использовать для ремонта iPhone 15 и новее б/у запчасти

Время на прочтение1 мин
Количество просмотров687

Компания Apple сообщила, что разрешит владельцам своих устройств и неавторизованным сервисным центрам использовать б/у запчасти для ремонта iPhone 15 и новее в конце 2024 года.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии0
Пост

«Роскосмос» отчитался о выполнении основной задачи пуска «Ангары-А5»

«Роскосмос» сообщил, что основная задача первого пуска ракеты «Ангара-А5» полностью выполнена: разгонный блок «Орион» доставил испытательную полезную нагрузку на орбиту.

Отделение испытательной полезной нагрузки от разгонного блока не предусматривалось. Далее разгонный блок «Орион» с испытательной полезной нагрузкой будет уведен на орбиту хранения, чтобы не создавать помехи действующим космическим аппаратам, работающим на геостационарной орбите, уточнили в госкорпорации.

11 апреля ракета-носитель «Ангара-А5» с третьей попытки успешно стартовала с космодрома Восточный после отмены двух предыдущих запусков из-за технических проблем. Позже было объявлено, что разгонный блок «Орион» доставил маленький спутник «Гагаринец» на низкую околоземную орбиту. Этот спутник был разработан компанией Avant Space.

Теги:
+10
Комментарии1
Статья

Как спланировать разработку без хаоса?

Время на прочтение4 мин
Количество просмотров590

Привет, Хабр! Меня зовут Александр, я уже около 15 лет в IT. Долгие годы занимался разработкой, но в последнее время перешел в менеджмент.

Сейчас я работаю в крупной компании, которая занимается юридическими услугами. За несколько лет компания выросла, и сейчас IT-отдел насчитывает уже 70 человек. Помимо разработчиков у нас появились аналитики, тестировщики, саппорт. При этом для бизнеса оставались непонятны сроки, стоимость и прибыль от разработки фич.

Мне предложили заняться менеджментом разработки, так как помимо написания самого кода я еще был глубоко погружен в бизнес-процессы. Предложение мне показалось интересным, и я с энтузиазмом взялся за непочатый объем работы, возглавив разработку нескольких сервисов.

В этой статье читателям Хабра и вАЙТИ — нового DIY-медиа для айтишников я расскажу о принципах, которые помогли наладить процессы в разработке и сделать их прозрачнее.

Читать далее
Всего голосов 13: ↑8.5 и ↓4.5+4
Комментарии1
Статья

ОбАСУчиваем дачу. Начало

Время на прочтение6 мин
Количество просмотров1.3K

«В автоматизацию идут самые большие лентяи – они хотят сделать так, чтобы лежать на диване, а без них само бы всё работало»
Преподаватель кафедры АПП Волгоградского Политеха.

Добрый день, уважаемые хабровчане!

Хочу предложить вашему вниманию историю моего скромного «хобби-проекта».

Как известно, бывают умные вещи и умные дома, а мне захотелось сделать «умную дачу»! Ну, такую, чтобы сама себя поливала в периоды долгого отсутствия хозяев, а в холодное время включала отопление к их приезду. Причём, сделать всё это «на минималках» и в смысле затрат финансовых, и в смысле затрат умственной и физической энергии. И чтобы было просто «прикольно». По специальности я инженер АСУ ТП, вот и захотелось создать некоторую вариацию такой системы на своём дачном участке. Идея эта зрела во мне долго, но должны были сложиться как объективные так и субъективные обстоятельства.

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

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

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии5
Новость

ГК InfoWatch представила отчёт об утечках персональных данных в 2023 году

Время на прочтение2 мин
Количество просмотров338

Группа компаний InfoWatch представила результаты исследования под названием «Утечки информации в мире, 2022–2023 годы». По этому исследованию, количество утечек информации в мире в 2023 году составило 11 549 инцидентов, а всего в сеть утекли 47,24 млрд записей персональных данных.

В рамках исследование, доля России в общемировом количестве утечек снизилась с 10,8% в 2022 году до 5,7% в 2023 году. При этом Россия стала одной из немногих стран, в которой выросла доля внешних атак. За 2023 году количество утечек конфиденциальной информации в мире увеличилось на 61,5%, чем в 2022 году.

Читать далее
Всего голосов 2: ↑1 и ↓10
Комментарии0
Пост

Бояре, после запуска игры прошла уже неделя.

Мы получили много отзывов от игроков, в том числе с конструктивной критикой. Хотим сообщить, что команда продолжает работу над игрой и не собирается останавливаться на достигнутом, приняв во внимание и поступившие отзывы.

За эти дни наша команда уже выпустила два патча и продолжает вести разработку игровых обновлений.

За 6 дней мы получили:

Хотим сообщить, что в большинстве случаев смогли помочь нашим игрокам с возникающими проблемами.

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

Также хотим сообщить, что в скором времени планируется выпуск ещё одного патча, исправляющего ряд внутриигровых проблем, а чуть позже – большое обновление, которое должно улучшить производительность игры и избавить от некоторых других технических проблем.

Релиз игры версии 0001 состоялся 4 апреля.

5 апреля в VK Play вышла вторая версия 0002 игры «Смута» (версия 0002).

Пользователь рассказал, что сумел запустить игру «Смута» в Linux.

Перед покупкой и установкой игры лучше почитать форум «Дискуссии Смута» на VK Play.

7 апреля в VK Play вышла третья доработанная версия игры «Смута» (версия 0003) от студии Cyberia Nova.

Теги:
+2
Комментарии1
1
23 ...
Изменить настройки темы