NEO
-
Публикации
1 436 -
Зарегистрирован
-
Посещение
-
Победитель дней
78
Сообщения, опубликованные пользователем NEO
-
-
Зачем же писать свой компилятор, когда есть замечательная функция load?
Похоже плана по написанию отладчика у тебя нету, функция load вообще тут роли не играет. Тупо лоадить код - это и школьник умеет, а вот сделать полную отладку без отладочных средств самого луа можно сделать только со своим компилятором. Вот пример, каким образом функция load контролирует while true do? Никаким. Нужно перед лоадом пропустить код через свой компилятор что бы он изменил его таким образом, на работу не влиял но можно было получать отладочную информацию, что бы можно было остановить бесконечные петли и тд.P.S Стало даже смешно, прямо два года копания в луа и я не знаю про load. Мда.
-
После прочтения данной темы возникло желание написать под ОС отладчик, похожий на тот, о котором писал Боб. Как думаете, будет ли пользоваться спросом?
Скорее всего нет, ибо он будет неудобен из за однозадачности, контроль точек остановки, контроль бесконечных петель, можно конечно сделать свой компилятор который будет вставлять специальные участки кода(например в контрольные точки), ограничивать бесконечные петли.
-
install запустить.
-
Ну раз ты так просишь и не знаешь, есть ли ограничения, то:
...
Тем более read возращает чанк, а не целый ответ, нужно вызывать read пока nil не выпадет.
-
Ну раз ты так просишь и не знаешь, есть ли ограничения, то:
....
Используй библиотеку internet.
-
Условие в Lua работает так же как и в других языках.

Это С++, но смысл один и тот же. Вместо фигурных скобок в Lua then end.
-
Подскажите, пожалуйста:
1) Что прописать в if чтобы он просто пропустил ход? Пример: if x==1 then "сделай то-то" elseif x==2 then "ничего не делай" / "закончи работу оператора"
2) Что прописать чтобы (например при выполнении какого-либо условия) программа преждевременно заканчивала работу?
1 https://goo.gl/TGZSfl
2 os.exit() -
Нужна навигационная самостоятельная программа для мода SGCraft для обеспечения сюжетной телепортации на новом сервее (пример на видео).
Анимация и графика, как на видео, совершенно не обязательна, скорее даже напротив, абсолютно не нужна.
Важен только понятный интерфейс и реализация функционала самих Звездных Врат, обеспечивающая выполнение удобной телепортации в любые доступные врата.
ПК(монитор) - один блок.
Конкурс имеет только одну задачу - вовлечение в процесс участников проекта.
-
...Я вот что подумал, а если сделать не просто манифест, а сборочный скрипт, в манифесте пишется код с помощью предоставленной hpm API, а потом уже в пакет записывается результат работы скрипта, как тебе идея?
-
Осталась какая-то мелочь.
Написать абстракцию полноценных потоков над корутинами, потом над ней абстракцию real-life сокетов, и будет готова сетевая библиотека нашей мечты!
Наконец-то мы сможем сократить эту громоздкую конструкцию:
modem.send(message)
Ура, товарищи!

Ну да, только эта строчка ограничивает тебя в радиусе 400 блоков.
-
думаю что сокеты лучше добавить в более высоком уровне адстракции, хотя можно и сшить аккуратно)В каком смысле?
-
У меня вопрос собственно. Что это за хрень и почему мне надо 400 строчек кода, чтобы послать сообщение по сети? :P
Я пытался реализовать сокеты.
-
1
-
-
Сделал первые наброски, тебе такой вопрос, нужна - ли проверка состояния канала?
https://gist.github.com/Avaja/95fffca7d0c9ed8ea5d1e1d0512d5c6d
native.lua нужно положить по пути /bin/net.
-
Ну вот, меня эта фразочка немного расстроила..

Почему?
-
По сути, ты собираешься воскресить и документировать OpenNet, а потом написать над ним обёртку. =)
Не только для OpenNet.
-
Моё первое мнение - большие полотна текста, где код идёт вперемешку с пояснениями и ссылками, и всё разделено только запятыми, а-ля "поток сознания" - меня пугают.

А вообще, что ты имеешь ввиду под "разными протоколами"?
Сначала наверное надо стардартизировать способы передачи данных. Тогда и появится возможность объединить их в какой-то библиотеке.
Я уже как - то начинал что - то подобное писать.
Что - то похожее на сокеты, но только там можно определить протокол. А ядро само создаст сокет и будет соответственно его для каждого протокола по своего обрабатывать. А конечная программа будет только send и receive вызывать.
-
Привет всем! Вчера произошёл интересный момент, Дмитрий Бачило https://www.youtube.com/channel/UC5dgoavpIertLkNDDITDoBQ выпустил перевод фильма Revolution OS (Всем рекомендую смотреть), фильм об GNU, в начале был момент интервью с создателем ядра Линукса Линусом, так вот он сказал, операционная система должна упрощать разработку ПО, сегодня зашёл товарищ Программист135 выпустил тему ДНС, я естественно полез читать код и меня натолкнуло на мысль увидев строку кода - modem.send(dns_server, 19178, "dns_request", dns_address) , все мы понимает что она делает, я увидел очень узкое место всей библиотеки, а именно работа только с один способом передачи данных, самое просто и нативное, такую библиотеку нельзя использовать в OpenNet или других сетях без переделки, а лучше иметь программу сразу под несколько сред передачи данных, но поддерживать много версий тоже не хочется, а тем более мы программисты и должны всё автоматизировать и упрощать, тут возникла мысль связанная с словами Линуса, так как я знаком с разработкой сетевых приложений под реальные ОС я знаю что ОС очень, очень упрощает работу с ней, скрывая протоколы и всю нативность у себя в ядре, почему бы не сделать более простую но тем не менее эффективную доработку OpenOS которая будет управлять разными протоколами. Мне интересно выслушать чужие мнения.
-

Мне видится всё так.

-
А можно не обфусцированный код?
-
Добавил фичу в виде не прерывной линии при рисовании кистью.
-
1
-
-
...
У тебя не последний релиз.
Пропуск пикселей
Если выбрать цвет, зажать клавишу и начать быстро водить мышкой по экрану, то кисть будет рисовать прерывистую линию.
Ответ: Не надо быстро водить мышку, тем более кисть не рисует линию, а заполняет пиксель, тобишь пропуск пикселей не баг, а просто медленный опрос мышь на её местоположение.
Пропадание кнопки с текстом 'custom colors'
После создания нового цвета, пропадает кнопка для создания ещё одного цвета. Для того чтобы использовать её снова приходится делать довольно-таки хитрое действие.
Ответ: В той версии такое было, но между ней и текущей я перерабатывал логику ресайза элементов и сейчас не замечаю такого.
Не правильное отображение закрашенных квадратов и символов на них
Если начать рисовать разноцветные символы поверх пиксельной картинки представленной на изображениях выше, то получится вот такая хурма:
Ответ: Есть такое, уже исправляется.
Не правльное отображение новых цветов
Во-первых в палитре цвета с альфаканалом следует отображать на фоне 'шахматной клетки'
Во-вторых при создании большого количества цветов новые цвета начинают залезать под таблицу с символами.
Ответ: Я использую палитру по умолчанию, она сама отображает как ей задано.
Расположение холста
Намного удобнее будет если холст можно будет размещать в любом месте рабочего поля, и если будет добавлена функция изменения масштаба изображения.
Ответ: Отдельное окно что - ли? Тоторо меня убеждал что изменения масштаба не требуется, а теперь лайкает, определитесь уже. Я с ним советовался перед написанием, таким образом в архитектуру не было заложено такой фичи, но я посмотрю что можно сделать.
Работа с файлами
Приложение при сохранении изображения создаёт 'битые' файлы. То есть я могу создать файл без расширения или с расширением .jpeg, хотя приложение не умеет работать с файлами такого типа. И эти фалы невозоможно открыть и с помощью стандарных средств по работе с изображениями.
Ответ: Понятно что битые, скриптов нету, а что другие программы запрещают сохранять в других формата?
-
Короче сохранение я вроде сделал, но проверить работоспособность не могу т.к. не могу разобраться как компилить
Загрузку я еще не начинал делать, вот код zzyJX5Xb
У тебя jdk не установлен.
-
Точно, нужно будет выпилить require и впилить colorlib в код, совсем забыл про них, но что делать с unicode???
Тут я буду промежуточные скомпилированный проект держать которые на гитхаб не попадут в релизы.
https://www.dropbox.com/sh/rpjioshlrdc5i7h/AAB5jkhhqVxOsJZiBbEXFtpKa?dl=0
-
Где хранится длина и ширина картинки?(Довольно важные параметры), и еще у меня не компилится исходник (Could not find or load main class org.gradle.wrapper.GradleWrapperMain), и еще лучше, чтобы скрипты можно было добавлять/изменять после этапа компиляции(Разделится на 2 типа впиленные и внешние)
Добавил wrapper, длина и ширина определяет в таблице ключами width и height

Возможен ли отладчик?
в Разные (отсортировать)
Опубликовано:
Тогда нужно писать полный текст, а не есть load зачем компилятор.