Comments: |
From: | (Anonymous) |
Date: | November 28th, 2014 - 03:15 am |
---|
| | | (Link) |
|
Нахуя хранить текст в виде дерева? Ебанутым нет покоя.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 28th, 2014 - 04:16 am |
---|
| | | (Link) |
|
подрастёшь — узнаешь.
а если вместо потока давать массив указателей, типа как в writev ?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 29th, 2014 - 01:30 am |
---|
| | | (Link) |
|
зачем? кто вообще сказал, что я обязан глифы хранить как utf-8, или utf-16, или ucs-4? кто сказал, что у меня рядом с глифами какие-то мои интимные атрибуты не должны лежать? не дохуя на себя берут, нет?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 29th, 2014 - 01:32 am |
---|
| | | (Link) |
|
ну, и дурацкое дублирование данных, конечно. если у меня есть поток текста, где я искать хочу — то с вероятностью почти единица у меня уже есть код, который умеет по этому потоку перемещаться. зачем мне создавать массивы указателей? с таким же успехом я могу тогда уже выделить кусок памяти и высрать туда очищеный utf-8, например. именно этого я и хотел бы избежать.
Если вы редактируете текст где-то в середине, то очевидно есть деление на строки или что-то подобное, чтобы при добавлении одного символа изменилась лишь одна "строка". То есть эти указатели уже есть под рукой.
Но если вдруг текст хранится не как текст а требует специальной очистки, то перед поиском нужна спец обработка, и без потока тогда совсем некрасиво.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 29th, 2014 - 02:32 am |
---|
| | | (Link) |
|
«текст» — это совершенно не обязательно «текст» вообще во внутреннем представлении же. я к тому и веду, что именно для таких случаев — опаньки.
соответственно, делать ещё один костыль (набор указателей и длин) вместо универсального stream API никакого смысла нет: stream API попросту перекрывает фичи набора.
не знаю, как в D, а в C++ есть интерфейс регекса, принимающий итератор. а сделать итератор из потока (а тем более из дерева) - как нехуй делать. правда, итератор нужен bidirectional, но можешь на -- exception бросать, если backtracking не используешь, заодно посмотришь, дурак C++ или нет
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:10 am |
---|
| | | (Link) |
|
вот уж на чём я точно ничего писать не буду — это на крестах. пусть там даже мегасупербиблиотеки есть.
в крестах ниасилили стандартизировать mangling и строение объектов, поэтому кресты дружно идут нахуй: я ещё помню байтораздирающие радости пересборки всех крестовых библиотек с переходом gcc2->gcc3 и gcc3->gcc4. спасибо. уносите нахуй, пожалуйста.
а что, из D2 можно D1-библиотеку дергать ?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:16 am |
---|
| | | (Link) |
|
D1 и D2 — это не разные версии компилятора, это два разных языка вообще. от разных языков я не требую взаимодействия.
так и C++98, C++03, C++11 и C++14 - четыре разных языка
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:20 am |
---|
| | | (Link) |
|
если gcc4 собирает мой крестовый код, который раньше точно так же собирал gcc3 — это один и тот же язык.
D2 не собирает код от D1, и D1 не собирает код от D2.
просто ты пишешь на маленьком общем подмножестве, оно наверняка и у D1 с D2 тоже есть. у всех нормальных людей не собирает, конечно, потому что там новые ключевые слова появляются
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:33 am |
---|
| | | (Link) |
|
>просто ты пишешь на маленьком общем подмножестве и что? стандарты си/крестов задуманы так, чтобы прошлый код кое-как собирался. это фича. поэтому язык — один и тот же. всё. точка.
D2 даже не задумывался как superset D1. это разные языки.
и да, даже «приветмир» от D1 — и тот не соберётся. пичалечка.
ты хочешь сказать, что не существует приветмира, который собирается D1 и D2 ? несколько сомневаюсь, ибо существует приветмир, который соберётся free pascal и g++. хотя это, конечно, казуистика.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:37 am |
---|
| | | (Link) |
|
если долго выёбываться, то написать можно всё. но мы же не об этом.
а что, привинтить к D С++-библиотеку никак нельзя ? можно же инстанциировать шаблон с твоим аргументом, типа typedef regexp<хуй_type, пизда_type, ебать_type> ёбаный_regexp и указатели на функции ?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:49 am |
---|
| | | (Link) |
|
это уебанство. можно, конечно, но уебанство. не хотет уебанства.
да уж. спасибо, папанечка, что зашил меня навек. это и к следующему каменту тоже
кстати, js вот для чего хороший: он позволяет, например, вообще не делать ссылки на разные странички, а шуровать UI прямо аяксом на одной. веб же не только из текста состоит, там ещё всякие калькуляторы, онлайн попробовать новые языки, чятик чтобы спросить про ноутбук, который хочешь купить, у продавца, и всякое хуё-моё. уебдваноль, блеать !
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 01:01 am |
---|
| | | (Link) |
|
>он позволяет, например, вообще не делать ссылки на разные странички, а шуровать >UI прямо аяксом на одной убивать. сразу. без дальнейших разбирательств.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:35 am |
---|
| | | (Link) |
|
p.s. и вообще, разговор был про разные версии gcc. ок, я делаю так:
-std=c++98. в gcc3 и в gcc4. всё, язык один и тот же, я явно указал, какой. а библиотеки вот не совмещаются. или все gcc3 собирать, или все gcc4. вот после таких финтов — неинтересно.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:36 am |
---|
| | | (Link) |
|
p.p.s. а вот сишные библиотеки, собраные gcc2, отлично подключаются и работают в gcc4. без перекомпиляции. поэтому си — ок, кресты — говно.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:11 am |
---|
| | | (Link) |
|
ах, да. после слова «boost» программа отправляется в помойку без дальнейших разбирательств.
это ты тоже себе буратино, но вроде бы тут слово "буст" ты сам сказал, как больное - тащем-та это стандартная библиотека
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:17 am |
---|
| | | (Link) |
|
неюзабельная больше нигде, потому что вся на шаблонах. толку мне с неё.
так и стандартные коллекции на шаблонах. ещё раз: это не буст, это C++ stdlib
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:20 am |
---|
| | | (Link) |
|
шота я никак не вижу в c++ stdlib регулярок. никаких вообще.
en.cppreference.com/w/cpp/regex
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:38 am |
---|
| | | (Link) |
|
хм. я был уверен, что в stl этого нет. ок, обосрался.
хинт: ты с 11 года в C++ не заглядывал :)
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 1st, 2014 - 12:50 am |
---|
| | | (Link) |
|
да, стараюсь. демоны берегут, не приходится. | |