| |
| |
| 3.13, j4niwzis (ok), 13:06, 23/09/2026 [^] [^^] [^^^] [ответить]
| +5 +/– |
Почему аналог? Регулярные выражения и есть, просто с поддержкой типов C++. Но и это необязательно, можно использовать тот же интерфейс, что в том же ctre.
| | |
| |
| 4.65, Аноним (65), 11:29, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Это недорегулярные выражения, ибо сразу светят методом "scan::starts_with"
| | |
| |
| 5.67, j4niwzis (ok), 11:33, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
> Это недорегулярные выражения, ибо сразу светят методом "scan::starts_with"
Там принцип работы несколько отличается, да. Но ведь есть не только это. В scan и match обычные регулярные выражения и есть.
| | |
|
|
| 3.26, Норм (?), 14:53, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Люди не получившие высшего образовантя обречены переизобретать лисп.
| | |
|
|
| 1.2, Аноним (2), 12:09, 23/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Очередной стандарт C++ принят. Настало время самого интересного - придумать зачем он на практике.
| | |
| |
| 2.8, Аноним (8), 12:39, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Уже принят стандарт C++26. Там это и не только можно с интроспекцией.
| | |
| |
| |
| 4.87, Аноним (2), 23:49, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
claude участвовавало в разработке или только в подготовке статьи?
| | |
|
|
| 2.86, Аноним (65), 22:41, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> Очередной ...
Несколько раз пытался прочитать примеры в статье, но ничего кроме смайликов не понятно.
| | |
|
| 1.3, Аноним (3), 12:13, 23/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +4 +/– |
Подача материала, конечно, препаршивая, видимо, это показатель. А чего сравнения с flex нет?
| | |
| |
| 2.20, Аноним (20), 13:16, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Могу сравнить за них:
При использовании flex нужно писать .l файл, вызывать сам flex из системы сборки, компилять и линковать.
Если брать scan, то достаточно подключить #include <s>(а потом подождать пока компилятор разберет эту шаблонную лапшу, и молиться что по пути не возникнет ошибка)</s>
| | |
| 2.21, j4niwzis (ok), 13:17, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Так re2c обычно быстрее flex. Но сравнение всё равно можно было бы добавить
| | |
|
| 1.5, Аноним1234 (?), 12:24, 23/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– | |
>Код проекта написан на C++23 и распространяется под лицензией GPLv3.
Поясните, это значит что это нельзя использовать в коммерческих проектах?
| | |
| |
| 2.16, Аноним (16), 13:12, 23/09/2026 [^] [^^] [^^^] [ответить]
| –3 +/– |
Для коммерческих целей пиши сам с нуля, а GPL это чтоб исходниками делиться.
| | |
| |
| 3.18, j4niwzis (ok), 13:15, 23/09/2026 [^] [^^] [^^^] [ответить]
| +2 +/– |
Коммерция вполне возможна и когда исходниками делятся. Закрыть код и распространять бинари только вот нельзя
| | |
| |
| 4.63, Аноним (62), 09:51, 24/09/2026 [^] [^^] [^^^] [ответить]
| –1 +/– |
Вы и вам подобные себя вообще слышите?? Коммерция на условиях GPL конечно возможна де-юре, но за очень редким исключением она мертва де-факто!! Только не надо вспоминать про отдельные проекты, все это исключения. Конкурировать на таких условиях с коммерческим кодом невозможно. Это просто какой-то мегаинфантилизм
| | |
| |
| 5.79, Аноним (78), 15:52, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Чувак тебя обуревают страх и жадность. Просто доверься Столлману и открой свой код под GPL. И деньги сами потекут к тебе рекой.
| | |
| |
| 6.85, Аноним (62), 19:09, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– | |
Чувак, тебя обуревают фантазии или тяга выдать желаемое за действительное. Успешных GPL-проектов — единицы (вроде Linux или Qt), и те порой живут за счет двойного лицензирования. Хотим мы или нет, но весь мир сегодня сидит на проприетарном закрытом софте. И одна из причин этого низкий спрос со стороны бизнеса на коммерцию под GPL.
А что касается Столлмана, то считаю его выдающейся исторической фигурой самого высокого масштаба. Он почти в одиночку засадил такую занозу туда куда надо, что корпорации уже много десятилетий подряд не знают как ее обнулить
| | |
|
|
|
|
| 2.23, Sm0ke85 (ok), 14:14, 23/09/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
>Поясните, это значит что это нельзя использовать в коммерческих проектах?
Идите лесом и пишите себе свое, а это Общественное...
| | |
| 2.27, Xasd1 (?), 15:22, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– | |
дауж…
использовать GPT для библиотеки — это сразу выброшенное время.
(наверно в угоду создателям SAAS только хорошо. они на сервер выложат сервис, и бинарники будто бы ни кому и не давали)
ну LGPL же специально для библиотек есть… ну ёмаё!
надло, расходимся
| | |
| |
| |
| 4.29, Xasd1 (?), 15:48, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– | |
ага. потому что приложения ТОЖЕ хорошо (зачастую) выпускать под LGPL
а не только библиотеки :-)
однако если по глуупочти засунуть в своё приложение какую-то библиотеку на GPL… то уже НЕ ВЫЙДЕТ всё приложение выпустить под LGPL 🙈🙈🙈
| | |
| |
| 5.30, j4niwzis (ok), 16:08, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Не могу придумать ни единой причины выпускать приложение под LGPL. Библиотеки же имеет смысл выпускать под LGPL лишь иногда. Тут лучше подходит GPL, т.к. достаточный уровень оригинальности, а преимущества свободному ПО давать нужно.
| | |
| |
| 6.42, limafresh (ok), 17:28, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Тоже не понимаю смысл использования LGPL для не-библиотек (например приложений). Смысл LGPL - позволить линковку с проприетарным кодом, а у приложений линковки как таковой нет - они не библиотеки. Выходит та же самая GPL без возможности пользоваться преимуществами послаблений LGPL. Зачем тогда так запутывать, можно было выбрать обычную GPL.
| | |
| |
| 7.68, Xasd1 (?), 12:29, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> а у приложений линковки как таковой нет - они не библиотеки
это кто тебе такое сказал? это лишь зависит от того как ты написал скрипты сборки.
например именно ты НЕ предусмотрел такое в ТВОИХ скриптах сборки (этой <какой-то-там> LGPT программы)…
а я предположим сделаю её fork (этой LGPL программы) и залинкую уже там с ней то что мне нужно.
// P.S.: MIT конечно ещё более целесообразно, как ниже уже написали… но я просто пояснил почему LGPL лучше чем GPL.
| | |
|
| 6.58, Аноним (58), 00:09, 24/09/2026 [^] [^^] [^^^] [ответить]
| +2 +/– | |
> Тут лучше подходит GPL, т.к. достаточный уровень оригинальности, а преимущества свободному ПО давать нужно.
Идею того что библиотеки под GPL позволят перетащить в копилефт больше кода даже сами гнушники со своей богомерзкой libiberty забросили. Собственно она никогда и не работала - ни один пермиссивный проект лицензию менять не будет ради какой-то библиотеки.
А сейчас все еще лучше - если библиотека является воплощением какой-то действительно полезной идеи, просто берется идея и реализуется нейронкой за вечер.
Так что задумайтесь - либо вы пишете проект "в стол" либо пермиссивная дицензия.
| | |
| |
| 7.81, Аноним (-), 15:59, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– | |
да конечно. структуру перетусовал/разделил, на свой язык перевёл, раскидал в левые репы - а через месяц как под копирку на своём языке выкладываешь, с благодарностью этим левакам и иишечкам
если уж если начинаешь свой проект, то надо быть уверенным - либо изначально прятать исходники, либо топить так, что народ будет тебя поддерживать, а не в проприетарь уйдёт
в этом плане вайн/кросы молодцы мне кажется - и коммиты заходят, и продать есть что
| | |
|
|
|
|
| 3.41, limafresh (ok), 17:21, 23/09/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
> использовать GPT для библиотеки — это сразу выброшенное время.
Естественно. Если кто-то сделал востребованную библиотеку под GPL, то это скорее всего означает, что вскоре появится альтернатива, созданная с нуля, но под MIT, а оригинал загнётся. Т.е переписывание не ради технического превосходства, а только ради юридических нюансов, которые без воли государства - ничто. Распыление сил. Велосипединг.
| | |
|
| |
| 3.73, Xasd1 (?), 15:23, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– | |
этого не достаточно.
на заказчика ещё требуется тоже наложить ограничения (обязанности в рамках соблюдения ограничений).
| | |
|
| 2.36, Аноним (36), 16:40, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Именно это и значит. GPLv3 специально сделана токсичной для коммерции чтобы не дай бог успех не случился.
| | |
| 2.38, limafresh (ok), 17:05, 23/09/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
Это распространённое заблуждение из-за манипуляции терминами, мол коммерческий = закрытый. Можно использовать в любых проектах, при соблюдении условий GPL (например открытие кода). Ведь есть коммерческие, но открытые проекты, так само, как есть и некоммерческие, но закрытые проекты.
| | |
| |
| 3.43, Аноним (-), 18:28, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Только вот открытое довольно сложно коммерциализировать. Это шапка себе позволить может, а мелкий разработчик — нет.
| | |
| |
| 4.49, limafresh (ok), 20:06, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
В чём сложно? Просто это не всем подходит. Одна из самых распространенных бизнес-моделей - бесплатная версия под (A)GPL, а платная - под коммерческой лицензией. Если кто-то не хочет раскрывать код - будет вынужден заплатить за коммерческую лицензию. Также есть такое (касается только сервисов), что приложение сервиса открыто, но услуги платные, либо частично платные. Яркий пример - Telegram и его Telegram Premium.
| | |
| 4.50, limafresh (ok), 20:22, 23/09/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
Если этот "мелкий разработчик" разработчик сервиса, где у пользователей есть аккаунты, то монетизация может идти через платные функции или подписки (например ускоренная загрузка файлов за деньги или подписка на платные реакции на комментарии). Софт может быть хоть под WTFPL, ведь ценность не в софте, а в сервисе; софт это лишь оболочка для доступа к сервису.
| | |
|
|
|
| 1.6, Аноним (6), 12:31, 23/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Любого студента учат сначала, как минимум, описать суть проблемы, потом способы решения, затем свой способ решения и чем он лучше остальных. Тут сразу "на ешь решение"
| | |
| 1.10, Аноним (10), 12:57, 23/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– | |
Угу. Как обычно, на тестах показывает "быстрее всех", но потом в процессе применения "неожиданно" выясняется, что из-за шаблонов экзешник растёт по экспоненте, а из-за большого объема кода и производительность начинает неожиданно лагать.
А ещё это будет безумно сложно отлаживать, если что-то пошло не так.
А, ну и ещё компилироваться это будет вечность.
В общем и целом, если вам нужен быстрый разбор текста - лучше и полезнее всего использовать классику, типа flex или его аналогов.
| | |
| |
| 2.12, j4niwzis (ok), 13:04, 23/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Так сама детерминизация в DFA и TDFA экспоненциальная, а она в генераторах лексеров есть. Тут алгоритм, которым пользуются некоторые генераторы лексеров, а шаблонами кодген не генерирует сильно больше нужного. Проблема с ростом кода была, но была исправлена с переходом на модель с computed goto. Теперь оно нормально генерируется.
Компилируется и правда достаточно долго, этого не избежать с шаблонами и рабором через constexpr (JIT или хотя бы более быстрый constexpr то в компиляторы не завезли).
Подход с кодогенерацией я не уважаю, если можно сделать без нее. Тут вот можно.
| | |
| |
| 3.33, черпало (?), 16:26, 23/09/2026 [^] [^^] [^^^] [ответить]
| +3 +/– | |
> Подход с кодогенерацией я не уважаю, если можно сделать без нее.
А зачем нагенерил нейронкой код-то, если так?
| | |
|
|
| |
| |
| 3.66, Аноним (65), 11:32, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> по шаблону, известному на этапе компиляции
Недорегулярки какие-то.
| | |
|
|
| |
| |
| |
| 4.89, Аноним (88), 00:29, 25/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
nom разве на макросах? тут похоже в compile time какая-то табличка создается и дальше уже работает. интересно есть какой-то такой FSM-чик на макросах
| | |
|
|
|
| 1.32, Аноним (32), 16:17, 23/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
c++ стандарты это эстафета по переписыванию, особенно это прослеживается по докладам всяких с++раша
| | |
| 1.53, Аноним (52), 22:47, 23/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Вы же не рассчитываете с таким выбором лицензии что кто-то будет этим пользоваться?
| | |
| |
| 2.57, Аноним (56), 00:02, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Мир свободного ПО будет пользоваться. Не обязательно же на проприетарщиков ориентироваться.
| | |
| |
| 3.74, Xasd1 (?), 15:32, 24/09/2026 [^] [^^] [^^^] [ответить]
| +1 +/– | |
врядли.
какой смысл завязываться на библиотеку которую потом всё равно есть риск что придётся менять?
тоже самое и про патчи — какой дуурак будет реквесты присылать если этот труд в итоге пойдет коту под хвост? (при замене библиотеки на её аналог уже под нормальной лицензией — опять писать патчи?)…
это тоже самое как ZFS — если с лицензией не угадали то проект ну считай сразу мертвый, хоть ты как ни старайся :-)
потому в Линуксах и используют BTRFS заместо ZFS.. независимо от того что там малочисленные (но крикливые) фанаты ZFS не орали бы
| | |
|
|
| 1.61, Аноним (61), 01:26, 24/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Мда библиотека под GPL, это прикормка для хомячков уверовавших в халяву, чтобы библиотека хайпанула, а потом замутить двойное лицензирование GPL/EULA, кстати даже в FSF эту приколюху поняли и для либ выпустили LGPL, с которой в полной мере такой трюк не пройдет(там открывать нужно патчи самой либы, вместо кода всего софта использующего её), а GPL уместнее для готового софта
| | |
| |
| 2.64, j4niwzis (ok), 10:10, 24/09/2026 [^] [^^] [^^^] [ответить]
| +/– |
Двойное лицензирование не планируются, PR принимаются в либу без необходимости давать права на смену лицензии. Больше контрибьюторов => сложнее поменять лицензию. Так что контрибьютьте.
| | |
|
| 1.72, ы (?), 13:27, 24/09/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– | |
иидиллия: ии и в новости, и в комментариях.
сплошное иивидение.
| | |
|