[ /b/ /u/ /rf/ /dt/ /vg/ /r/ /cr/ /lor/ /mu/ /oe/ /s/ /w/ /hr/ ] [ /a/ /ma/ /sw/ /hau/ /azu/ ] [ /tv/ /cp/ /gf/ /bo/ /di/ /vn/ /ve/ /wh/ /fur/ /to/ /bg/ /wn/ /slow/ /mad/ ] [ /d/ /news/ ] [ Главная | Настройки | Закладки | Плеер ]

 [ Скрыть форму ]
Имя
Не поднимать тред 
Тема
Сообщение
Капча Капча
Пароль
Файл
Вернуться к
  • Публикация сообщения означает согласие с условиями предоставления сервиса
  • В сообщениях можно использовать разметку wakabamark
  • На данной доске отображаются исходные имена файлов!
  • Разрешенные типы файлов: music, vector, text, image, flash, archive, pdf, code, video
  • Тред перестает подниматься после 500 сообщений.
  • Треды с числом ответов более 100 не могут быть удалены.
  • Старые треды перемещаются в архив после 40 страницы.

No.46029 Ответ [Открыть тред]
Файл: pylogo0.png
Png, 126.61 KB, 800×642 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
pylogo0.png
Предыдущий >>37139 ушёл в бамплимит.

Краткая справка для новичков:
Официальный сайт: http://python.org/
Документация по стандартной библиотеке и разнообразные Tips & Tricks: http://docs.python.org/
неСвежая тема для священной войны, или руководство по выбору между версиями: http://wiki.python.org/moin/Python2orPython3
Ссылка для вопящих про дикие тормоза: http://speed.pypy.org/
Python для микроконтроллеров http://micropython.org или http://www.github.com/micropython
358 posts are omitted, из них 62 с файлами. Развернуть тред.
>> No.49674 Ответ
>>49672
А кто ж тебя знает, какой пример ты поймёшь и примешь, а с чем захочешь, несмотря на задекларированное ньюфажество, поспорить.

Меня, например, дико триггернуло появление (где-то в районе версии 3.5, ЕМНИП) в синтаксисе языка операции @ (матричное умножение). Это при том, что в языке такого типа, матрица, нет. Он есть, конечно, но только в дополнительных библиотеках.

Ты только вдумайся: в синтаксис языка жёстко зашита (а по-другому в пайтоне нельзя, в нём нет возможности определять инфиксные операторы) операция, но объектов, к которым эта операция может быть применена в языке попросту нет.

Однако же, кому-то такая неконсистентность кажется абсолютно недопустимой, а кто-то её особо и не замечает.

Вообще говоря, пайтон изначально задумывался как простенький скриптовый язычок, без особых возможностей расширения. А используется сейчас как повсеместный универсальный язык для всего. В результате тем, кто его поддерживает я бы сказал "создателям", но создатель плюнул на всё и ушёл на пенсию, приходится городить в нём кучу дополнительных фич. Но поскольку, как я уже говорил, возможностей расширения языка изначально в его дизайн Гвидо не заложил, то все эти фичи часто выглядят уродливой нашлёпкой. А поскольку нашлёпок этих уже много, то язык уже и сам превращается потихоньку в одну большую уродливую нашлёпку.
>> No.49675 Ответ
>>49674
Ну я понял твой пример, и, что такое матрицы, знаю. А чем мешает эта операция? Ну есть в синтаксисе теперь "собачка", но она ведь не лает и никого не кусает, сидит себе спокойно. Или дело в том, что символ занят, когда можно было в матричной библиотеке создать хитровыдуманное слово вроде peremnozhenie_matrits?
Если написал непонятно, то прошу прощения за неровный почерк.
>> No.49676 Ответ
>>49675
А чем мешает эта операция?
Тем, что таких операций и фич больше определённого порога, после которого python из языка "простенького" и "читаемого" превращается в просто урезанный перл. Зачем урезанный перл, когда
> когда можно было в матричной библиотеке создать хитровыдуманное слово вроде peremnozhenie_matrits
Если можно функцию, лучше делать функцию.
>> No.49703 Ответ
Выручайте, доброчаньки. Можно ли на QPython и Pydroid создавать файлы в телефоне (я имею в виду f.open('path', 'w')
капча всё знает: омрачен подробно
>> No.49705 Ответ
Файл: Screenshot_2020-0...
Jpg, 67.91 KB, 720×576
edit Find source with google Find source with iqdb
Screenshot_2020-04-07-15-03-30-727_ru.iiec.pydroid.jpg
Файл: Screenshot_2020-0...
Jpg, 77.16 KB, 720×527
edit Find source with google Find source with iqdb
Screenshot_2020-04-07-15-03-53-531_ru.iiec.pydroid.jpg

>> No.49707 Ответ
>>49703
termux
>> No.49708 Ответ
Файл: Screenshot_2020-04-11-08-58-17-632_com.termux~2.jpg
Jpg, 66.72 KB, 720×369 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
Screenshot_2020-04-11-08-58-17-632_com.termux~2.jpg
>> No.49709 Ответ
>>49708
termux-setup-storage должен создать ссылку в home.
>> No.49733 Ответ
>>49709
Сдаюсь. Я гуглил, я писал "termux-setup-storage" в термуксе, я... Я не знаю, что ещё делать.
>> No.49743 Ответ
>>49733
Напиши все действия и все их результаты.


No.47927 Ответ [Открыть тред]
Файл: tumblr_oppvh6XMAq1w6k0rko1_540.gif
Gif, 231.52 KB, 540×304 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
tumblr_oppvh6XMAq1w6k0rko1_540.gif
Тред помощи начинающим свой долгий и тернистый путь в дебри программирования. А также необузданных оленей, код-мартышек, выбора ЯП и иных платиновых вещей.
Но в первую очередь всё-таки помощи новичкам. Всё, чтобы зашедший сюда в первый раз мог почувствовать себя как дома.
Главное - без фанатизма.

Предыдущий: >>46762
495 posts are omitted, из них 82 с файлами. Развернуть тред.
>> No.49679 Ответ
>>49678
Собери портфолио. Набей гитхаб своим кодом, тематически близким по должности, к которой стремишься. Изучай рынок труда по интересующей специализации. То есть общайся с людьми, которые уже этим занимаются. Обязательно гугли отзывы: хорошая контора с рабочей карьерной лестницей скорее всего предложит стажировку с минималкой или даже тестером поработать сначала. Не ограничивайся отечественными конторами. Если у тебя на гитхабе твоего кода овер 10k SLOC, можешь в английский и действительно хочешь этим заниматься, вероятность вката стремится к 100%.
>> No.49680 Ответ
>>49677
Прохо понятно, слишком общее описание. Если каждому елементу из множества твоих данных соответствует константное множество дат, в которые элемент может отображаться, добавь к классу этого множества параметр, содержащий множество дат и задавай его значение при инициализации инстансов класса.
Если доступные для отображения дни надо пересчитывать каждый раз, например, после отображения, сделай соответствующий метод.
Детали реализации зависят от твоего шедулера и всего прочего, о котором ты ни слова не сказал.
>> No.49681 Ответ
>>49680
константное множество дат
У каждого элемента одна отметка времени. CreationTime, по факту.
> Если доступные для отображения дни надо пересчитывать каждый раз, например, после отображения, сделай соответствующий метод.
Слишком затратно. Элементов сотни тысяч, и даже на простой экспорт в csv тратится прилично времени.
> Детали реализации зависят от твоего шедулера
On demand, по запросу клиента (наверное стоило сказать, что вебня)
>> No.49682 Ответ
>>49679
Про портфолио хороший совет, давно хотел, а вот гитхаб кажется идиотизмом. Яж не хипстер-вактывальщик какой, подразумевается что кодировать умею, чё там на гитхабе смотреть. Впрочем если мимикрировать под вкатывальщиков, то да. Но до этого уровня пока ещё не опустился.
>> No.49683 Ответ
>>49682
Если ты не фронтендер, который на конструкторе лепит сайты, ссылки на которые может приложить, и без опыта, то гитхаб == портфолио.
Квалификация != опыт.

> подразумевается что кодировать умею
А ты докажи. Покажи код. Умеешь ли ты лепить архитектуру проекта, можешь ли доводить до конца это говно? Для этого и выкладывают всякое в репозитории (ну еще иногда, потому что это херня может кому-то помочь).

Да и
> "у нас нет вакансий под вашу квалификацию"
слишком расплывчато. Было тестовое задание, которое пролюбил? Опыт работы есть?
>> No.49685 Ответ
Как перестать играть в сессионки и начать кодить?
>> No.49688 Ответ
Файл: 1583831849973.jpg
Jpg, 23.74 KB, 601×334 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
1583831849973.jpg
Как написать чтото с интерфейсом? Ну хоть калкулятор. В школе только всякая фигня в командной строке была.
>> No.49689 Ответ
>>49688
Если калькулятор, то таких туториалов до жопы, стоит только поискать. Не знаю только на всех ли языках есть GUI библиотеки
>> No.49694 Ответ
>>49688
У питона есть графические библиотеки.

Ну что же вы, кодеры – последний пост 28 марта...
>> No.49697 Ответ


No.49298 Ответ [Открыть тред]
Файл: oie_SohS1tCbFmpd.jpg
Jpg, 15.52 KB, 563×225 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
oie_SohS1tCbFmpd.jpg
У нас есть для каждой задачи куча в целом аналогичных, но всё же значительно отличающихся решений. Причём если с языками и фреймворками всё ещё как-то интуитивно понятно, чем они отличаются, то чем все Хадупы, Касандры и Сфинксы отличаются друг от друга вообще не очевидно. Причём работают они совсем по-разному, но задачи решают, казалось бы, примерно одинаковые. При этом каждая хреновина настолько сложна, что изучать её можно неделями или месяцами, чтобы знать, когда она нужна, и как ей пользоваться. И если потом узнаешь, что есть что-то получше, то недели изучения зря потеряны.

Хотелось бы узнать мысли анона, как определять, что нужно для дальнейшего развития, и что нужно использовать. Как анон вообще выпутывается из этого капкана?
6 posts are omitted. Развернуть тред.
>> No.49315 Ответ
>>49314
> моментально
Я про то, что рождаются и дохнут, не успев документацию написать.
>> No.49316 Ответ
>>49314
Но ведь все и так учат SQL! Никого из кодеров нету, кто бы юзал nosql, но не умел базово юзать mysql какой-ниубдь. У нас пытались внедрить mongodb, якобы будет без схему, проще, гибкие изменения. Было только хуже.
Но ещё ж говорят, что на (очень больших) кластерах производительность nosql выше. И что у некоторых из них выше скорость инсёртов или апдейтов.
>> No.49318 Ответ
>>49316
> Но ведь все и так учат SQL!
У меня для тебя плохие новости: нет. А те, кто учили, позабыли. MySQL я, например, не знаю.

Скорость, которая выше, достигается забивом на отношения и гарантии целостности. Если найдёшь, где в твоей sql-базе такое сделать. всё будет точно так же.
И всё равно вся эта скорость будет смыта в унитаз, когда кому-нибудь придёт в голову сделать ODM. Да, такие есть.
>> No.49330 Ответ
>>49318
Но вообще тред не только про NoSql-решения. Ещё вот эти вот
1) движки полнотекстового поиска (sphinx, elasticsearch)
2) хранилища, сборщики и визуализации метрик и логов (elasticsearch, prometheus, sentry, grafana, graphite, influxdb, etc)
3) брокеры очередей
Тут тоже широкий выбор и фиг знает, что учить.
>> No.49360 Ответ
>>49330
То, у чего больше лайков на гитхабе и твиттере.
>> No.49371 Ответ
Хочу найти флэтфайл-базу типа SQLite, только не с ужасными SQL-таблицами, а монго-подобную, с джейсонами. Всякие "written in Node.JS" мне, скорее всего, не годятся, желательно что-то менее привязанное к конкретному языку, реализованное в виде либы с кучей биндингов для неё (тот же SQLite, опять).

Такое вообще существует? Если нет - как сделать самому? Так, чтобы было быстрее, чем ебать диск на каждый чих, но при этом данные не терялись бы в случае перебоев с электричеством или ещё чего.
>> No.49372 Ответ
>>49371
Плоские таблицы чем не вариант?..
>> No.49373 Ответ
>>49371
В редиске есть персистентность.
>> No.49477 Ответ
>>49371
1.sqlite умеет в json и лучше бы тебе непродуманность схемы устранить, чтоб на грабли не наступать.
2.клоны dbm с обёртками, сериализующими значение в джейсон, сам такую писал раза два на питоне.
>> No.49649 Ответ
>>49371
lowdb, pouchdb.


No.35693 Ответ [Открыть тред]
Файл: Haskell-Logo.svg
Svg, 1.42 KB, 602×425 - Нажмите на картинку для увеличения
Haskell-Logo.svg
Надеюсь, ещё не совсем вымерли упоровшиеся сабжем.
235 posts are omitted, из них 35 с файлами. Развернуть тред.
>> No.46875 Ответ
Файл: 2bcbe14ae2efadfc9...
Png, 33.29 KB, 417×326
edit Find source with google Find source with iqdb
2bcbe14ae2efadfc95267413a710ec4c1480097777262.png
Файл: 3a50cdabf2ff37212...
Png, 25.21 KB, 409×212
edit Find source with google Find source with iqdb
3a50cdabf2ff3721282443bfd82989111480097777263.png

SPJ со своим другом наконец-то разработали недостающую теорию,
открывающую мир нешаблонного параметрического полиморфизма байтоёбским типам со стека:
https://www.microsoft.com/en-us/research/wp-content/uploads/2016/11/levity-1.pdf
>> No.47994 Ответ
>>46875
> 25 November 2016
Ж - живой язык
>> No.47995 Ответ
>>37765
Не знаю как там в 2014, но у нас есть https://ru.wikipedia.org/wiki/Yi_(редактор) и пожалуй ещё https://ru.wikipedia.org/wiki/Leksah
>> No.47998 Ответ
Файл: 1496672176680-g.png
Png, 785.77 KB, 1000×1300 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
1496672176680-g.png
>>47995
Но все равно, лучше использовать Emacs.
>> No.48030 Ответ
>>47998
> Основные режимы эмуляции для Yi это vim и emacs.
А вообще какой режим лучше, вообще vim VS emacs что победит?
>> No.49381 Ответ
Бампану, что ли.
>> No.49611 Ответ
>>48030
VS и победит, им пользоваться куда удобнее, да и особых знаний он не требует.
>> No.49612 Ответ
>>44574
Нет и не будет. Hask не является категорией, seq и undefined все портят:
seq (undefined . id) ()
> ()
seq undefined ()
> |
Противоречия!
Больше тут:
https://stackoverflow.com/questions/48485660/is-hask-even-a-category
>> No.49646 Ответ
Расскажите про forkOS. Можно ли через него и mvar'ы пропустить массив данных так, чтобы ленивость массива не терялась?
>> No.49647 Ответ
>>49646
Массив таки список.


No.49448 Ответ [Открыть тред]
Файл: segfault.jpg
Jpg, 48.88 KB, 600×300 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
segfault.jpg
Доброчан, тут возник вопрос. Есть ли какая-то готовая платформа, которую можно развернуть у себя, в которую можно загрузить каким-либо образом скрипт на некотором языке, который она поддерживает ("нормальный" или подмножество "нормального", хотя любой сойдёт), после чего можно будет вызвать его http запросом содержащим параметры и получить результат выполнения. При этом, интерфейс должен быть относительно высокоуровневым (т.е. не а-ля (S|C)GI) и унифицированным, а скрипт должен быть ограничен в плане доступа к системе, кроме некоторого внутреннего хранилища, поэтому условный PHP в чистом виде не подходит. Я мельком проглядел модные serverless'ы, но как-то оно всё рассчитано на aaS и запускает всё это безобразие в контейнерах, что оверкилл для моих хотелок. По каким ключевым словам это вообще искать и, если такого нет, что лучше взять, для того, чтобы на коленке смастерить (пока смотрю на duktape ибо его можно к python'у прикрутить)?
>> No.49449 Ответ
>> No.49450 Ответ
>>49449
И, я не просил фреймворк для веб-приложений в чистом виде. Близко к микрофреймворкам, но с возможностью на ходу добавлять обработчики, ограниченной средой и интерфейсом вроде json-rpc
>> No.49452 Ответ
>>49450
Ну в общем-то подходит, нода + экспресс.
>> No.49453 Ответ
>>49452
Как ты себе это представляешь? Во-первых, как ограничить этот код, во-вторых, мне не нужен весь интерфейс http запроса, потом, разве нода позволит переопределить обработчики на ходу. Так можно и python + flask предложить.
>> No.49454 Ответ
>>49448
Как понимаю, ты хочешь тот же *cgi, вид сбоку. Сбоку в том плане, что кишки парсить не хочешь, а хочешь, чтобы их парсили за тебя.
Ещё ты хочешь разграничение доступа.
Первое ты сделаешь только написав обёртку над тем, что есть, попутно запилив свой протокол с IPC, второе тебе даст MAC.
>> No.49461 Ответ
>>49454
IPC, кстати, на SHM.


No.49446 Ответ [Открыть тред]
Файл: E61EAE9DC1AF99978E0C39C23646F19965A67F28.gif
Gif, 668.98 KB, 400×400 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
E61EAE9DC1AF99978E0C39C23646F19965A67F28.gif
Скажи доброчан, вот есть сайт, есть на нем форма отправки контента (скажем тот же пост в треде на имиджборде). Вот я нажал кнопку "отправить". Вопроса два:
1) как перехватить и посмотреть что именно передается на сервер когда я нажимаю кнопку
2) как продублировать этот запрос, чтобы можно было отправить то же или немного измененное на тот же сервер.

Хочу попробовать сделать бота который бы централизованно по одному нажатию кнопки разбрасывал мой контент по нескольким разным сайтам.
>> No.49447 Ответ
Файл: vIMMnUn.jpg
Jpg, 174.62 KB, 600×756 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
vIMMnUn.jpg
Простейший способ - девелопер тулс в браузере. Можно смотреть ходящие запросы. Там же есть copy as curl, который сгенерирует параметры для повторения запроса курлом.
Ну и дальше можешь заскриптовать это на шелле или батниках.

Но это так, баловство. Для сириус бизнеса надо на нормальном языке писать.
>> No.49458 Ответ
>>49446
> по одному нажатию кнопки разбрасывал мой контент по нескольким разным сайтам
> то же или немного измененное на тот же сервер
Так тебе и поверим, мамкин хакер. Твоя задача легко не решается. И если бы твой скилл был достатоный, ты бы не задавал свой вопрос.


No.37854 Ответ [Открыть тред]
Файл: aadhhaaeo.jpg
Jpg, 15.55 KB, 300×300 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
aadhhaaeo.jpg
Не нашел перлотреда.
Листал пиратбей и наткнулся на книжку "Beginning Perl". Стоит ли читать?
Спрашиваю, потому что давно уже ничего не кодил, с линукса перелез на шинду, многое уже подзабыл.
111 posts are omitted, из них 6 с файлами. Развернуть тред.
>> No.48963 Ответ
>>48962
Всякие более-менее современные я не особо знаю, тащемта. Но как минимум искаробочный threads. https://perldoc.perl.org/perlthrtut.html
А что за задача у тебя?
>> No.48964 Ответ
>>48963
> Но как минимум искаробочный threads
Ну вот про него я и говорил — либо он, либо Коро. И под тредами в перле обычно понимается Коро, нативные же треды использовать не рекомендуют. Они умеют то, о чём я говорил выше?

> А что за задача у тебя?
Писать вайпилки и набигать на капчу в 9000 потоков, как у пистуха было!!1
Шутка.
Но в каждой шутке есть доля правды: суть того, что я хочу, чем-то похожа. Уточнять не буду пока, потому что пока сделано ничего. Впрочем, помощь мне ещё наверняка будет нужна, а перлотредов больше и нет нигде особо. На стаковерфлоу не хочу.

Знаю, что есть модуль Coro::LWP, где что-то похожее вроде как уже сделано, но мне не интересно LWP, я хочу именно libcurl и придётся писать свои велосипеды.
>> No.48967 Ответ
>>48964
> нативные же треды использовать не рекомендуют. Они умеют то, о чём я говорил выше?
Не рекомендуют по причине тяжеловесности. Умеют.

> но мне не интересно LWP, я хочу именно libcurl и придётся писать свои велосипеды.
А какая разница? Суть одна и та же.
Многопоточный хттп я делал на AnyEvent::HTTP, это неблокирующие реквесты + коллбеки, результат неплохой.
>> No.48970 Ответ
>>48967
> Суть одна и та же.
В смысле?
Не помню весь список полезных фичей кёрла, отсутствующих у LWP, но одну довольно важную называю сходу — он умеет в socks5 с проксированием днс. LWP этого не умеет, и если мне нужно будет, чтобы всё работало через тор и работало наверняка, придётся помещать это в обёрнутый в тор контейнер/vm и запускать оттуда.
Или ты о чём?

> AnyEvent
Совсем забыл про это, да.
Можешь сказать, что ещё ты использовал?

Про треды - спасибо, буду иметь в виду.
>> No.48971 Ответ
>>48970
> Или ты о чём?
О либах для хттп. Как-то не случалось найти отсутствие фич, хотя при модульности LWP туда всяко можно вклиниться и докостылять. Потом HTTP::Tiny добавили в core и можно вообще обойтись без жирного LWP, для большинства задач его достаточно.

> Можешь сказать, что ещё ты использовал?
В каком смысле ещё? В основном на перле делал всяких бэкендовые сервисы и автоматизации, потом помаленьку перекатился на ноду для такого, но как подручную тулзу ещё пользую.
>> No.49040 Ответ
Зачем сабам и переменным атрибуты? locked, method, lvalue.

> http://www.perltutorial.org/perl-subroutine/
> sub NAME PROTOTYPES ATTRIBUTES BLOCK
> The ATTRIBUTES gives subroutine additional semantics. Perl provides three standard attributes including locked, method and lvalue.
Больше ничего не нашёл.
>> No.49041 Ответ
>>49040
lvalue позволяет присваивать функции. Как тот же substr -
substr($str, 0, 10) = 123;
Не пользовался таким, так что хз, в чем может быть профит. Можно обойтись без временных переменных при всяких манипуляциях, наверное.

Остальные без понятия, какие-то забытые ооп-шные костыли скорее всего.
>> No.49202 Ответ
1. Coro::rouse_cb создаёт отдельный поток? Вывод дампера не похож на таковой у инстансов класса Coro.

2. https://metacpan.org/pod/distribution/Coro/Coro/Intro.pod#The-Real-World-Event-Loops
Почему в первом примере join не блокирует? Вернее, все три join успевают вызваться ещё до завершения первого потока. Стейтменты типа print должны блокировать, даже если Coro::Socket асинхронен сам по себе. Но они даже не выполняются.
2.1 Если Coro::Socket таки асинхронен (не блокирует), почему после него идут принты (те, которые печатают в stdout)? Они же ничего не должны вывести.

3. Рассмотрим следующую лапшу:
use Coro;
use Mojo::Base -strict;

my $thr1 = async {
  my $this = $Coro::current;
  $$this{desc} = "First thread";

  my $i = 0;
1. Coro::rouse_cb создаёт отдельный поток? Вывод дампера не похож на таковой у инстансов класса Coro.

2. https://metacpan.org/pod/distribution/Coro/Coro/Intro.pod#The-Real-World-Event-Loops
Почему в первом примере join не блокирует? Вернее, все три join успевают вызваться ещё до завершения первого потока. Стейтменты типа print должны блокировать, даже если Coro::Socket асинхронен сам по себе. Но они даже не выполняются.
2.1 Если Coro::Socket таки асинхронен (не блокирует), почему после него идут принты (те, которые печатают в stdout)? Они же ничего не должны вывести.

3. Рассмотрим следующую лапшу:
use Coro;
use Mojo::Base -strict;

my $thr1 = async {
  my $this = $Coro::current;
  $$this{desc} = "First thread";

  my $i = 0;
  recurring Mojo::IOLoop 2 => sub { say "1st: ", $i++ };
};

my $thr2 = async {
  my $this = $Coro::current;
  $$this{desc} = "Second thread";

  my $i = 0;
  recurring Mojo::IOLoop 2 => sub { say "2nd: ", $i++ };
};

$_ -> join for ($thr1, $thr2);

start Mojo::IOLoop;
Работает как ожидается, но не из потоков $thr1 и $thr2: они умирают, как только навешивают свои коллбэки на луп, в итоге всё выполняется в одном потоке. Как сделать чтобы в каждом потоке было? Если в каждом эвент луп запускать, он заблокирует.

4. Как работают все эти асинхронные эвент лупы типа Mojo::IOLoop, когда поток всего один? Просто интересно. Coro в числе зависимостей не висит, под капотом они его не пользуют. Там своя имплементация потоков?
Сообщение слишком длинное. Полная версия.
>> No.49282 Ответ
Оказывается в перле (вроде как) есть явная типизация.
`my Foo $foo = new Foo;`
Только я не понимаю, зачем она нужна, если в $foo по-прежнему можно класть что угодно.
Вот, что я пытался сделать:
https://ideone.com/PDf3I5
> sub do_stuff {
> my Bar $instance = shift;
Но в $инстанс также попадает инстанс класса Foo. Я ожидал ошибку компиляции или исключение в рантайме на этом моменте, а случилось просто нихуя, как будто и не указывал я тип.

Я читал про use fields и это не то что мне надо, я всё равно не создаю классы вручную (есть Mojo::Base). Я хочу использовать это именно для валидации аргументов. Такое возможно? Если нет - имеются ли альтернативы, кроме костылей типа if ref $foo eq 'Bar'?
>> No.49288 Ответ
>>49202
1. Нет

2. Нихуя не понел.

3.
> они умирают, как только навешивают свои коллбэки на луп
Потому что им больше нечего делать.
> Как сделать чтобы в каждом потоке было?
Это корутины, т.е. обычные функции с брейкпоинтами в некоторых моментах. На брейкпоинте происходит свитч на другую корутину из текущей. Потом, когда контроль возвращается обратно, выполнение начинается со стейтмента, следующего за спровоцировавшим свитч в прошлый раз. Ос-левел тредов при этом не создаётся и не нужно пытаться использовать этот констракт для одновременного выполнения нескольких неделимых блокирующих тасков, ничего не получится. См. metacpan://pod/threads для этого. Алсо google://preemptive+multithreading (threads) google://cooperative+multithreading (Coro).
Иллюзия параллелизма при помощи коры достигается посредством разбиения длинных тасков на небольшие быстровыполняемые части и постоянный свитч туда-сюда, обычно через Coro::AnyEvent::poll или Coro::rouse_функции. В итоге время с момента завершения первого таска до момента завершения последнего меньше, чем время, суммарно затраченное на выполнение какого-то одного из тасков. Из-за чего и появляется иллюзия, что всё выполнялось одновременно. Обычно это всё равно намного быстрее, чем делать всё по очереди, особенно если таски преимущественно состоят из I/O-операций с коллбэками и каких-то полутора быстрых, хоть и блокирующих, стейтментов между ними. Но параллельно более одного куска кода никогда не выполняется, это важно понимать.

4.
> Как работают все эти асинхронные эвент лупы
>>49202
1. Нет

2. Нихуя не понел.

3.
> они умирают, как только навешивают свои коллбэки на луп
Потому что им больше нечего делать.
> Как сделать чтобы в каждом потоке было?
Это корутины, т.е. обычные функции с брейкпоинтами в некоторых моментах. На брейкпоинте происходит свитч на другую корутину из текущей. Потом, когда контроль возвращается обратно, выполнение начинается со стейтмента, следующего за спровоцировавшим свитч в прошлый раз. Ос-левел тредов при этом не создаётся и не нужно пытаться использовать этот констракт для одновременного выполнения нескольких неделимых блокирующих тасков, ничего не получится. См. metacpan://pod/threads для этого. Алсо google://preemptive+multithreading (threads) google://cooperative+multithreading (Coro).
Иллюзия параллелизма при помощи коры достигается посредством разбиения длинных тасков на небольшие быстровыполняемые части и постоянный свитч туда-сюда, обычно через Coro::AnyEvent::poll или Coro::rouse_функции. В итоге время с момента завершения первого таска до момента завершения последнего меньше, чем время, суммарно затраченное на выполнение какого-то одного из тасков. Из-за чего и появляется иллюзия, что всё выполнялось одновременно. Обычно это всё равно намного быстрее, чем делать всё по очереди, особенно если таски преимущественно состоят из I/O-операций с коллбэками и каких-то полутора быстрых, хоть и блокирующих, стейтментов между ними. Но параллельно более одного куска кода никогда не выполняется, это важно понимать.

4.
> Как работают все эти асинхронные эвент лупы
На каждой итерации лупа по очереди запускается всё то, что на него навешано и ожидает выполнения (коллбэки эвентов). На самом деле запускается оно не одновременно, а друг за другом. Просто очень быстро (для наглядности можно поставить sleep 9999 внутри одного из коллбэков и это парализует всю работу). Ещё мы не ждём I/O - повесили коллбэк и дальше выполняем стейтменты. https://en.wikipedia.org/wiki/Asynchronous_I/O
Сообщение слишком длинное. Полная версия.


No.43581 Ответ [Открыть тред]
Файл: -.jpg
Jpg, 125.61 KB, 700×500 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
-.jpg
Новый традиционный тред Доброчана, в котором мы будем постить каждый раз, когда заходим в /s/ дабы поделиться своими хоббипроектами, поговорить о смежных с программингом вопросах, поспорить на тему X vs Y, пообсуждать синтаксический сахар разных ЯП. Как обычно можно постить и в другие моменты, обсуждать разные темы. Всё во имя того, чтобы зашедший code monkey не чувствовал себя одиноким. Каждому зашедшему по чашечке скумы за мой счёт.

Предыдущий тред: >>40630
328 posts are omitted, из них 35 с файлами. Развернуть тред.
>> No.48374 Ответ
Файл: 1355315146509.png
Png, 0.50 KB, 10×10 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
1355315146509.png
>>48373
Взлольнул тут.
>> No.49192 Ответ
Файл: -.png
Png, 319.85 KB, 2518×1024 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
-.png
Если резюмировать, то будет как-то так. Что-то походящее на рф но в области /s/.
Хотел написать длинно, но решил, что бессмысленно.
В итоге: с детства (житое в 90е) благодаря отцу имея ZX Spectrum мечтал пилить игори.
Первую книгу по программированию и, собственно, возможность программировать обрел в 2003 году, когда учился в 10м классе. Был комп и по совету знакомого отцу программиста купили мне Лафоре (ООП в C++).
Пока учился в школе и ВУЗе (на программера) мечтал и стремился прогать игори - изучил DirectX (9й на тот момент) и в большей степени OpenGL (до уровня шейдеров) изучал движок Ogre, колупал простенький HGE, по возможности, но время требовалось на учебу и подработки.
После ВУЗа (армейки не было - пороки сердца). Устроился на работу - после чего наступила полоса беспамятства и тотального въебывания, базы данных, нескончаемые ETL, скрипты, окошечные набивалки для операторов. И всё. Ни желания, ни сил у меня не было ворошить свой мозг еще после работы, а время шло.
Сейчас я осознаю, что знания устарели - сейчас никто не будет писать игру с полностью своим движком - думаю закидают говном просто. Тем более DX весьма обновился, OpenGL пододвинулся для Vulkan - да и в этом нет уже смысла, когда везде это либо Unreal Engine либо Unity - даже для простых ДВУМЕРНЫХ ИГОР КАРЛ!
Если резюмировать, то будет как-то так. Что-то походящее на рф но в области /s/.
Хотел написать длинно, но решил, что бессмысленно.
В итоге: с детства (житое в 90е) благодаря отцу имея ZX Spectrum мечтал пилить игори.
Первую книгу по программированию и, собственно, возможность программировать обрел в 2003 году, когда учился в 10м классе. Был комп и по совету знакомого отцу программиста купили мне Лафоре (ООП в C++).
Пока учился в школе и ВУЗе (на программера) мечтал и стремился прогать игори - изучил DirectX (9й на тот момент) и в большей степени OpenGL (до уровня шейдеров) изучал движок Ogre, колупал простенький HGE, по возможности, но время требовалось на учебу и подработки.
После ВУЗа (армейки не было - пороки сердца). Устроился на работу - после чего наступила полоса беспамятства и тотального въебывания, базы данных, нескончаемые ETL, скрипты, окошечные набивалки для операторов. И всё. Ни желания, ни сил у меня не было ворошить свой мозг еще после работы, а время шло.
Сейчас я осознаю, что знания устарели - сейчас никто не будет писать игру с полностью своим движком - думаю закидают говном просто. Тем более DX весьма обновился, OpenGL пододвинулся для Vulkan - да и в этом нет уже смысла, когда везде это либо Unreal Engine либо Unity - даже для простых ДВУМЕРНЫХ ИГОР КАРЛ!
Госп-ди Б-же мой! Я вижу, что теперь я биомусор, т.к. я не знаю, за что мне взяться и есть ли в этом какой смысл. Требования у игроков очень высоки и мне за ними не поспеть. Алсо идея инди-игр (созданых малой группой разработчиков) теперь очернена ебаными корпорациями, когда какой-нибудь EA имеет игру на стиме с тэгом ИНДИ блядь.
Какого чертова черта? И что мне делать, если желание пилить игори есть даже в 30 лет, но знания устарели?
Сообщение слишком длинное. Полная версия.
>> No.49197 Ответ
>>49192
> Тем более DX весьма обновился, OpenGL пододвинулся для Vulkan - да и в этом нет уже смысла, когда везде это либо Unreal Engine либо Unity - даже для простых ДВУМЕРНЫХ ИГОР КАРЛ!
> Госп-ди Б-же мой! Я вижу, что теперь я биомусор, т.к. я не знаю, за что мне взяться и есть ли в этом какой смысл.

Не парься, забудь про C++, бери чистый C + SDL2, напиши рогалик или примитивный платформер под свою любимую ОС. Никаких анрилов и юнити-хуюнити для этого тебе не потребуется.
>> No.49203 Ответ
>>49192
Линейная алгебра и дифференциальная геометрия не устаревают. Ты можешь в математику? Или твои знания ограничиваются glBegin glEnd?
Знание движков не отменяет необходимости понимания. Наоборот, понимание позволяет быстро учить новые вещи.
Да, и заодно осиль Rust, потом спасибо скажешь.
>> No.49223 Ответ
>>49192
> желание пилить игори есть даже в 30 лет, но знания устарели?
Осспаде да какие к собакиным мамкам знания с юнькой и уечем яхз.

Стенания и плач на бордах и форумах.
И вот никто не желает признаваться себе что не код делаетб игру, а художник.
>> No.49233 Ответ
Где фрилансить блеать?
>> No.49234 Ответ
>>49233
Там.
>> No.49236 Ответ
Анон, а ты обычно читаешь оригинал или перевод? Да, тема касается именно айти, потому что худлит можно и на польском почитать, но мы не об этом. В последнее время почитываю только оргиналы, но с каждым разом есть страх, страх что-то понять не так или понять что-то не до конца. Особенно учитывая то, что я постоянно пользуюсь словарём(в моём случае — клик по незнакомому слову), буквально на каждой странице.
>> No.49237 Ответ
>>49236
Переводы отстают от оригинала, могут обосраться с собственно переводом и вычиткой-проверкой, можеть не быть ебук версии, а только говноскан. Плюсов и нет, тащемта.

Литературностей и сложностей в плане языка в такой литературе мало, разве что автор попадется, любящий попиздякать.
Так что продолжай, со временем привыкнешь.
>> No.49238 Ответ
>>49237
Спасибо, анон, буду продолжать. :3


No.48143 Ответ [Открыть тред]
Файл: 14737788001931.png
Png, 31.18 KB, 400×296 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
14737788001931.png
Почему до сих пор нет треда, посвящённому божественному языку Go или Golang?

Поделюсь своими ссылочками
http://golang-book.ru/
Очень хорошая книга, отлично подходит для начинающих, приводится подробное разъяснение основ
https://www.dropbox.com/s/pe7v02epirzzpat/intro_in_golang.7z?dl=1
То же, но в pdf формате

https://www.youtube.com/playlist?list=PLBOo6DBmP5V9CAXxxl6EZxZpMmT_4ZOca
Канал на ютубе. К сожалению порекомендовать его не могу, потому что много воды, то что можно я бы даже сказал нужно уместить в одно видео, растягивается на несколько

https://golangshow.com/
Подкаст по Golang

Реквестирую больше литературы, желательно на русском
Почему до сих пор нет треда, посвящённому божественному языку Go или Golang?

Поделюсь своими ссылочками
http://golang-book.ru/
Очень хорошая книга, отлично подходит для начинающих, приводится подробное разъяснение основ
https://www.dropbox.com/s/pe7v02epirzzpat/intro_in_golang.7z?dl=1
То же, но в pdf формате

https://www.youtube.com/playlist?list=PLBOo6DBmP5V9CAXxxl6EZxZpMmT_4ZOca
Канал на ютубе. К сожалению порекомендовать его не могу, потому что много воды, то что можно я бы даже сказал нужно уместить в одно видео, растягивается на несколько

https://golangshow.com/
Подкаст по Golang

Реквестирую больше литературы, желательно на русском
Если кто-то решится писать свои уроки- то совсем хорошо

postScriptum сам я изучаю golang с нуля, то есть вообще ни с какими языками программирования до этого дела не имел
Сообщение слишком длинное. Полная версия. 10 posts are omitted, из них 2 с файлами. Развернуть тред.
>> No.49032 Ответ
О, привет второй голанг тред, где-то там далеко плавает твой предшественник.

Го - основной язык. дженерики не нужны но я скорее сисадмин которому нужен недо-с потому что я ленивая балда.
>> No.49053 Ответ
>>49032
> но я скорее сисадмин которому нужен недо-с потому что я ленивая балда
А чем твою ленивую балду не устрил тот же питон, например. Я без агитации спрашиваю, просто интересно.
>> No.49068 Ответ
>>49053
Без агитации, отвечу. :3

1) Я очень не люблю пробелы как разделитель кода.
2) Структуры мне легче идут в го.
3) Го - более ограниченый язык, и мне легче его запомнить.
4) Статично скомпиленый код - ня. На серверах каждый раз устанавливать pip install huyeta-v.01 лень.
5) gofmt - ня.
>> No.49070 Ответ
>>49068
Кстати, дополню, я работаю на питоне, ибо овердохрена утилитов (и почти все интерфейсы и апи к нейросетям/нейросетесервисам) на питоне.

Он у меня не вызывает лютой НЕНАВИСТИ, но и любви тоже мало.
>> No.49072 Ответ
>>49068
Спасибо за ответ.
Поддерживаю тебя по всем пунктам.

Го, конечно, довольно убог (не как что-то хорошее или плохое, просто констатация факта), но если уж мне нужен будет богатый возможностями язык, то я возьму лисп или хаскелл (а никак не питон). А если всё это богатство не нужно, то я в любой день предпочту голанг питону.
>> No.49081 Ответ
Между тем, в черновом варианте, завезли как раз поддержку "более нормального" выкидывания ошибок, и дженериков.
>> No.49128 Ответ
Книги на русском:
Язык программирования Go - 2016 (Брайан У. Керниган)
Марк Саммерфильд - Программирование на языке Go - 2013

Книги на английском:
Cox-Buday K. - Concurrency in Go - 2017
Writing An Interpreter In Go
Network Programming with Go
go-programming-blueprints-2nd
go-in-practice
go-in-action

Каналы в телеге:
https://t.me/golangdigest
https://t.me/gophernews
Книги на русском:
Язык программирования Go - 2016 (Брайан У. Керниган)
Марк Саммерфильд - Программирование на языке Go - 2013

Книги на английском:
Cox-Buday K. - Concurrency in Go - 2017
Writing An Interpreter In Go
Network Programming with Go
go-programming-blueprints-2nd
go-in-practice
go-in-action

Каналы в телеге:
https://t.me/golangdigest
https://t.me/gophernews
https://t.me/golanglibrary

Полезное:
dou.ua/lenta/tags/Go%20дайджест
dou.ua/lenta/articles/senior-go
https://www.jetbrains.com/research/devecosystem-2018/go/
+ ищите слак каналы, русско- и украино- язычный относительно активные, там постятся статьи и новости.

Где писать:
VS Code, GoLand, Vim, Sublime, Atom.

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

Что-то отсюда даже можно добавить в шапку, а лучше сделать её в гите, а в треде кидать ссылку.

>>48997
Какая предметная область, какие фреймворки/либы/бд юзаете, как тестирование делаете? Как архитектуру приложений определяете - юзаете ли паттерны, как всё по сравнению с энтерпрайс-разработкой на джаве/шарпах? Почему на проекте юзаете го?

>>48145
Да, 4-тый курс универа, го - основной язык, особо сложного ничего на нем не писал. Рассылаю резюме на галеры, джуновакансий почти нихуя, хр-юши игнорят в основном, следовательно, из вкатывальщиков-джунов на го у контор выбор есть.
Сообщение слишком длинное. Полная версия.
>> No.49226 Ответ
Начал изучать этот ваш Го, в дополнение к няшному Питону
Пока всё выглядит более-менее знакомо, тем более когда-то был опыт писательства на C. Что почитать для более глубокого погружения и знакомства с годными практиками разработки? Какие хорошие библиотеки для веба есть? Слышал что-то про gin, напоминает фласк по своей философии. Но когда-то читал, что считается кошерным писать собственный костыль^W фреймворк под свои задачи.
>> No.49227 Ответ
>>49226
gin - это лучший роутер, просто бери его и не парься. Книжек не посоветую, но в официальной документации есть раздел Effective Go, который почти никто не читает, а он довольно винрарный.
>> No.49228 Ответ
>>49227
Ок, спасибо.
> Effective Go
Выглядит интересно, наверну.
Не зря ждал, а то на дваче конечно активность выше, по преимущественно из срача состоит


No.49189 Ответ [Открыть тред]
Файл: xlarge_exaba.png
Png, 12.67 KB, 360×200 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
xlarge_exaba.png
Помогите найти движок exaba, его отовсюду выпилили. Хотел написать себе борду и такой вот облом. Раньше находился по адресу http://github.com/imageboards/exaba
>> No.49190 Ответ


[0] [1] [2] [3] [4] [5] ... [52] [53] [54]
Пароль:

[ /b/ /u/ /rf/ /dt/ /vg/ /r/ /cr/ /lor/ /mu/ /oe/ /s/ /w/ /hr/ ] [ /a/ /ma/ /sw/ /hau/ /azu/ ] [ /tv/ /cp/ /gf/ /bo/ /di/ /vn/ /ve/ /wh/ /fur/ /to/ /bg/ /wn/ /slow/ /mad/ ] [ /d/ /news/ ] [ Главная | Настройки | Закладки | Плеер ]