LINUX.ORG.RU

Ответ на: комментарий от arsi

[c++] Сопрограммы в продакшене

Применение сопрограмм являлось методикой ещё ассемблера, практиковалось лишь в некоторых высокоуровневых языках (Simula, Modula-2).

fail

shty ★★★★★ ()

А что за задача такакя, что хочется их использовать?

Сам не использую и не планирую. Стремновато - может оно и безопасно, но потом это же надо еще и сопровождать.

п.с. В boost есть пример и сопрограммами:

http://www.boost.org/doc/libs/1_47_0/doc/html/boost_asio/examples.html «A single-threaded HTTP server implemented using stackless coroutines.»

ratatosk ()
Ответ на: комментарий от pathfinder

>Почему ей активно не пользуются, вот это загадка.

потому как код нужно писать код очень специфическим образом (стек надо как-то чистить, а либы на это не рассчитаны). либо пользоваться оффтопиком (fibers). И то и то не особо популярно как общая методика :D

sleepy ()
Ответ на: комментарий от pathfinder

>а нафига она нужна в С++?

Как нафига, разве есть полноценная замена?

так я и спрашиваю: нафига оно там вообще, что за задачи такие, которые нельзя комфортно и удобно решить в С++ традиционными инструментами? :)

shty ★★★★★ ()
Ответ на: комментарий от shty

так я и спрашиваю: нафига оно там вообще, что за задачи такие, которые нельзя комфортно и удобно решить в С++ традиционными инструментами? :)

В однопотоковых приложениях вместо использования конечных автоматов можно писать в императивном стиле, что намного приятнее.

pathfinder ★★★★ ()
Ответ на: комментарий от pathfinder

В однопотоковых приложениях вместо использования конечных автоматов можно писать в императивном стиле, что намного приятнее.

во-первых ФП - это не «программирование с использованием функций»

во-вторых трахаться с диким костылём через паровозную трубу - это может и намного приятнее, но это смотря с чем сравнивать

shty ★★★★★ ()
Ответ на: комментарий от pathfinder

ну как же, вот:

[..] можно писать в императивном стиле [..]

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

может имелось в виду что-то другое?

shty ★★★★★ ()

Используется в очень крупных системах.

Даже руки особо выпрямлять не надо — 300-500 строк кода и готов код класса, который всё спрячет.

anonymous ()

> Интересует сабж. Насколько безопасно? Какими библиотеками лучше пользоваться? Есть ли грабли?

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

Не ну то, что этой штуке сто лет в обед, это я знаю. Почему ей активно не пользуются, вот это загадка.


школота и быдлокодеры не пользуются, они не соображают как это вообще работает.
а для понимания как минумум нужен МОЗГ. который у них отсутствует.

п.с. В boost есть пример и сопрограммами:


я бы сказал самый ужасный пример в мире, не даром бустеры именуются в просто народе - быдлокодерами.

а нафига она нужна в С++?


еще один баран. иди учи все тоже самое что я ТС написал.

так я и спрашиваю: нафига оно там вообще, что за задачи такие, которые нельзя комфортно и удобно решить в С++ традиционными инструментами? :)


баран, теория конечных автоматов, сходи что ли wiki почитай а?

anonymous ()
Ответ на: комментарий от anonymous

> так я и спрашиваю: нафига оно там вообще, что за задачи такие, которые нельзя комфортно и удобно решить в С++ традиционными инструментами? :)

баран,

хорошо хоть представился, а то бы я удивился

теория конечных автоматов, сходи что ли wiki почитай а?

<off>ах, как люблю я пафосных упорышей</off>

я не пойму в чём проблема, проблема граф реализовать в С++, или чего? ты уж поясни, снизойди до неучей

shty ★★★★★ ()
Ответ на: комментарий от anonymous

Используется в очень крупных системах.

[..] 300-500 строк кода и готов код класса

я даже знаю почему эти системы «очень крупные» :)

shty ★★★★★ ()
Ответ на: комментарий от shty

> <off>ах, как люблю я пафосных упорышей</off>

Да какой же это пафос... обычные понты %)

tailgunner ★★★★★ ()
Ответ на: комментарий от shty

> хорошо хоть представился, а то бы я удивился

ты баран, а фиксить будешь свой мозг, от тупизны

я не пойму в чём проблема, проблема граф реализовать в С++, или чего? ты уж поясни, снизойди до неучей

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

anonymous ()
Ответ на: комментарий от anonymous

> я не пойму в чём проблема, проблема граф реализовать в С++, или чего? ты уж поясни, снизойди до неучей

проблема в том что ты не знаешь теорию конечных автоматов не в теории, не на практике [..]

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

но у меня другой вопрос: а вот откуда ты это всё знаешь? я, к примеру, могу сказать что ты русского языка не знаешь и путаешь, например, когда надо применять «не»/«ни», а также у тебя есть проблема слитного и раздельного написания слов с предлогами, но это я вижу по твоим собственным словам, а по каким приметам ты вывод свой сделал?

shty ★★★★★ ()
Ответ на: комментарий от anonymous

ты баран

Да! Баран, как есть баран! Но я не один, знаю ещё несколько (всех, конечно не упомнишь, но самых-самых не забудешь), давай перечисю сразу, ты нам групповое «дзен-обучение» сделаешь, итак - встречайте баранов:

  • Alfred Vaino Aho
  • Jeffrey David Ullman
  • Donald Ervin Knuth
  • Robert Sedgewick

Рассчитываем на твою мудрость сенсей.

shty ★★★★★ ()
Ответ на: комментарий от shty

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

повторяю: работают. можно даже несколько «паттернов» прикинуть.

anonymous ()
Ответ на: комментарий от anonymous

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

и ты даже готов предоставить пруф, что вот я именно так сказал?

повторяю: работают. можно даже несколько «паттернов» прикинуть.

да всё можно, можно даже на брейнфаке CAD-систему написать, вопрос: напоркуа куа?

shty ★★★★★ ()
Ответ на: комментарий от shty

на пару порядков (по сравнению с потоками) быстрее переключение контекстов.

anonymous ()
Ответ на: комментарий от thrall

>какой жЫрный анонимус

«так что сходи под учи» (с)

Угу. Взывает к авторитету Кнута, а русский «ниасилил». Видать стоя на томах «Искусства программирования», уложенных стопкой, гораздо выше ростом себе кажется ;)

slackwarrior ★★★★★ ()
Ответ на: комментарий от shty

> я, к примеру, могу сказать что ты русского языка не знаешь

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

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

ps
ты еще там сообщениям ниже авторов приводил, так ты еще александреску приведи, который после своего метапрограммирования сошел сума, и после психушки начал нести ересь что с++ не нужен и он изобрел язык D

anonymous ()
Ответ на: комментарий от anonymous

> я, к примеру, могу сказать что ты русского языка не знаешь

ты его знаешь?

да уж получше некоторых :)

//пропущена слезливая исповедь истерички

ты еще александреску приведи,

и приведу

который после своего метапрограммирования

а кто это у нас тут - черепашка? нет, не то... неваляшка? тоже не то... а, это у нас неосиляшка! :)

сошел с ума, и после психушки начал нести ересь что с++ не нужен и он изобрел язык D

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

shty ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.