Home
Objective Caml
ocaml@conference.jabber.ru
Среда, 12 октября 2011< ^ >
f[x] установил(а) тему: Камль -- http://caml.inria.fr | http://camlunity.ru/ (теперь с git доступом!) | Верблюды грязи не боятся! | release crap, enjoy NIH | репортьте баги официальным дилерам | ocaml мёртв и тормозит, move on | stdlib only? - ССЗБ
Конфигурация комнаты
Участники комнаты

GMT+4
[00:06:02] Kakadu вышел(а) из комнаты
[00:14:43] <Typhon> кто сказал C++ ? %)
[00:18:36] <bobry> kickban!
[00:25:06] <komar> Кабал однопоточный?
[00:25:56] <komar> Т.е. он что, файлы в проекте в один поток собирает?
[00:51:53] <ygrek> мопед не мой, я только лулзы сообщил
[01:11:58] Typhon вышел(а) из комнаты: Replaced by new connection
[01:12:00] Typhon вошёл(а) в комнату
[01:58:17] shaggie вышел(а) из комнаты
[02:19:55] Typhon вышел(а) из комнаты: Replaced by new connection
[02:19:58] Typhon вошёл(а) в комнату
[02:21:55] ygrek вышел(а) из комнаты
[02:55:30] Typhon вышел(а) из комнаты: Replaced by new connection
[02:55:34] Typhon вошёл(а) в комнату
[03:18:08] Typhon вышел(а) из комнаты
[04:32:36] letrec вошёл(а) в комнату
[05:19:11] komar вышел(а) из комнаты: Replaced by new connection
[05:19:12] komar вошёл(а) в комнату
[06:34:31] letrec вышел(а) из комнаты
[07:33:24] zert вошёл(а) в комнату
[07:36:56] ermine вошёл(а) в комнату
[08:36:32] bobry вышел(а) из комнаты
[08:38:05] <ermine> скомпилила core
[08:38:20] <ermine> теперь core_extend не компилитсся
[08:38:47] bobry вошёл(а) в комнату
[08:45:43] <ermine> так, надо править мейкфейлы в lablqt
[08:45:58] ermine озирается в поисках спящего попугайчика
[10:13:15] komar вышел(а) из комнаты: Replaced by new connection
[10:13:15] komar вошёл(а) в комнату
[10:14:20] ygrek вошёл(а) в комнату
[10:25:25] Typhon вошёл(а) в комнату
[10:55:57] letrec вошёл(а) в комнату
[12:01:39] gds вошёл(а) в комнату
[12:05:12] ygrek вышел(а) из комнаты
[12:53:26] Kakadu вошёл(а) в комнату
[12:54:01] <Kakadu> ermine: я в это время ехал на пару в город
[13:16:23] shaggie вошёл(а) в комнату
[13:21:51] <ermine> Kakadu: а что, уже пора жаловаться на новую проблему в lablqt?
[13:31:34] <Kakadu> ermine: так что там с мэйкфайлами?
[13:34:03] <ermine> Kakadu: с мейкфейлами ничо, а вот build.sh вставляет, потому что там везде make вместо правильного gmake
[13:34:47] <ermine> Kakadu: хотфикс: брать из переменной окружения имя команды наподобие $(MAKE) в мейкфейле
[13:35:13] <ermine> Kakadu: впрочем, мне точно не судьба собирать core_extend, поэтому не к спеху
[13:35:25] <Kakadu> из какой переменной окружения?
[13:36:46] <ermine> ну придумай сам
[13:36:57] <ermine> хоть MAKE
[13:37:23] <ermine> если ее нет, то ставь везде make иначе то что там
[13:38:46] <ermine> Kakadu: тебя f[x] давно должен был просветить о том, как сосут шелловые скрипты и прочие наколенники :)
[13:39:20] <ermine> Kakadu: а избавиться от core_ext сможешь?
[13:39:30] <f[x]> есть простой рецепт - не поддерживать bsd - тогда скрипты становятся мягкие и шелковистые
[13:40:45] <gds> конкретно с make -- проще всё нужное запускать через make/gmake target, то $(MAKE) будет выставлен.
[13:41:23] <Kakadu> ermine: попробуй собрать его вначале
[13:41:40] <Kakadu> если будут проблемы -- - я подумаю что могу сделать
[13:42:12] <ermine> Kakadu: не соберется, там с кроссплатформностью еще хуже чем в core
[13:42:26] <ermine> вот например у меня сломалось на функции SYS_gettit
[13:42:37] <ermine> вы можете мне рассказать, что это за функция?
[13:42:44] <f[x]> gettits?
[13:42:51] <ermine> у вас в люликсе ман на него есть?
[13:43:03] <ermine> SYS_gettit
[13:43:06] <f[x]> gettid есть
[13:43:22] <ermine> SYS_gettid, да
[13:43:29] <f[x]> получить id потока
[13:43:51] <ermine> да я посмотрела ман на ближайшем линуксе - нету там мана такого
[13:43:54] <f[x]> причём в glibc обёртки для неё нет, приходится напрямую сисколл дёргать
[13:44:07] <ermine> функцию без SYS не проверяла, не интересно
[13:44:23] <f[x]> там как раз man и есть :)
[13:44:29] <ermine> да и видимо не позиксное это
[13:44:39] <f[x]> ессно
[13:44:48] <f[x]> на позиксе далеко не уедешь
[13:45:37] <ermine> нету мана SYS_gettid
[13:45:56] <ermine> и поэтому ее можно считать недокументированной
[13:46:47] <f[x]> man gettid
[13:46:53] <f[x]> SYS_gettid это константа
[13:47:28] <ermine> чему равна?
[13:48:08] <f[x]> это знать не нужно
[13:48:27] <ermine> а в мане gettid про SYS_gettid тоже нету, apropos тоже не знает
[13:48:49] <ermine> вот именно, что знать не положено
[13:49:36] <f[x]> угу
[14:31:52] letrec вышел(а) из комнаты
[15:06:29] <ermine> (почитав почту) поздравляю всех с годовщиной!
[15:07:02] <Kakadu> ermine: это  у тебя почты на год накопилось?
[15:07:43] <ermine> Kakadu: нет, там сообщили, что начался новый год
[15:09:28] <Kakadu> я тут переписал инстанциирование классов так вчера велел gds, (без set_caml_object). Вроде работает, но неприятно, что Obj.magic появился.
https://github.com/Kakadu/lablqt/blob/master/inher/classes.ml
[15:11:11] <ermine> переписал бы кору на чонить теперь, ых-ыххх
[15:13:31] <Kakadu> ermine: твой укус меня не достал
[15:14:00] ermine выдергивает перо из Kakadu
[15:15:31] Kakadu выдергивает второе, и втыкает в хвост ermine. пускай полетает)
[15:16:00] <gds> Kakadu: зачем Obj.magic 1 -- чисто для инициализации?  А можешь как-нибудь создать левый объект с типом [`qobject] obj?  Как бы красивше, и за Obj.magic ссыкотно.
[15:16:48] <ermine> это наверное списали из lablgtk
[15:17:42] <ermine> там вовсю `gtk, `widget, `textview, `notepad Gtk.widget в этом роде
[15:18:08] <gds> ну какой-нибудь левый 'a obj можно же как-нибудь создать -- по идее, прилично будет.
[15:18:10] <Kakadu> да, думаю оттуда списали
[15:18:29] ermine второй день не программит горгону - болеет новой порцией парсинга
[15:19:00] <gds> ermine: на каждый символ дёргать Stream.next или подобное, небось?
[15:19:48] <ermine> gds: с учетом яда итератов
[15:20:39] <ermine> gds: декодинг сделала, щас доделаю валидацию стрима, потом собственно парсинг - но такой, который я еще никогда не делала, я до этого знала только рекурсивный спуск
[15:21:11] <ermine> а итераты и рекурсивный спуск как раз скучают друг на друге и унывают от тоски
[15:22:42] ermine прислушалась, как у gds моговые извилины вертятся вокруг слов "рекурсивный спуск"
[15:25:15] <ermine> а yaml кстати, похоже годная штука, можно попробовать вместо ast.1, наверняка спецы из мейллиста SML в этом шарили как следует
[15:31:52] <Kakadu> ermine: я вроде выпилил core_extended
[15:32:34] bobry вошёл(а) в комнату
[15:32:40] <ermine> Kakadu: ща посмотрим
[15:32:47] <ermine> Kakadu: закоммитил?
[15:32:49] <bobry> товарищи — а как бы мне попрофилировать потребление памяти в небольшой камло программе?
[15:32:57] <Kakadu> да
[15:33:02] <bobry> нормального time увы в макосях нету :(
[15:38:10] bobry вышел(а) из комнаты
[15:38:49] bobry вошёл(а) в комнату
[15:39:11] <ermine> да пока разбираюсь с ошибками
[15:40:16] <Typhon> bobry: так тебе time или память? %) есть objsize
[15:40:28] <ermine> ./4test5?
[15:40:42] <Kakadu> можно  и не вызывать
[15:41:04] <Kakadu> если for_test5.xml есть
[15:41:12] <bobry> Typhon: мне память надо, gnu time такое умеет
[15:41:12] <ermine> не, это кто-то опечатался
[15:41:22] <Kakadu> в смысле?
[15:41:38] <ermine> а такое есть?
[15:41:45] <ermine> у меня завершилось not found
[15:41:55] <Kakadu> ocaml build.ml?
[15:42:08] <ermine> да
[15:42:13] <ermine> по-другому и не умею
[15:42:20] <Kakadu> вообще оно есть в xmltool/4test5
[15:42:30] <ermine> впрочем я же утром хачила build.ml чтобы было gmake вместо make
[15:43:15] <f[x]> bobry: а при чём тут камль? while : ; do ps --no-headers -o rss,vsz -p PID ; sleep 1; done
[15:45:44] <gds> ermine: нифига не понял про парсинг.  будешь уточнять -- уточни.
[15:46:47] <ermine> Kakadu: есть
[15:47:19] <ermine> Kakadu: там \n
[15:47:24] <ermine> кто-то поставил
[15:47:26] <ermine> может я?
[15:47:30] <Kakadu> где там?
[15:47:45] <ermine> а сбросить изменения в build.sh жалко :)
[15:48:06] ygrek вошёл(а) в комнату
[15:48:11] <Kakadu> я поколдую с make
[15:49:47] <ermine> щас седом пройдусь
[15:54:59] <gds> оффтопик: ищется перлокодер для простого, но срочного дела за деньгу.  сам подзабыл перл, так бы вписался.
[15:59:44] bobry вышел(а) из комнаты
[16:03:47] <Kakadu> а что надо сделать?
[16:04:34] komar вышел(а) из комнаты: Replaced by new connection
[16:04:36] komar вошёл(а) в комнату
[16:05:12] <Kakadu> gds: это мои знакомые из универа спрашивают
[16:05:25] <gds> переписать 4kb/136lines вменяемого похапэ-кода на перл.  денег -- порядка 50$.  но надо срочно, в пределах пары часов.
[16:07:45] <Kakadu> знакомые из универа слились
[16:08:33] <f[x]> gds: т.е. тебе нужен либо перл-ренегат, либо пхп-олдфаг?
[16:09:18] <gds> просто человек, понимающий тупой похапэ код и умеющий писать тупой перловый код.
[16:18:47] <ermine> Kakadu: я догнала пчу not found
[16:18:52] <ermine> очередной линюхизм
[16:20:48] <ermine> Kakadu: убери две буквы "ba" из первой строчки 4test5
[16:21:02] <ermine> а щас какая-то очередняя шняга
[16:21:58] <ermine> наверное чего-то не поставила для qt
[16:25:44] <ermine> а
[16:26:18] ygrek вышел(а) из комнаты
[16:26:22] <Kakadu> во фряхе нету баша?
[16:28:25] <gds> во фряхе странные люди, которые считают, что баша может не быть.  баш везде есть.
[16:28:44] <ermine> Kakadu: он не входит в операционку и ставится из портов, но он уж точно никак не /bin/bash и даже не иднтичен /bin/sh, хотя последний входит в операционку
[16:33:10] <gds> #! /usr/bin/env bash
!111111
[16:36:33] ermine думает, пчу C_INCLUDE_PATH не помогает
[16:37:52] <ermine> то ли зверский шелл со сброшенным окружением, то ли что еще
[16:41:08] <Kakadu> насколько же долго в натив компилится :-(
[16:41:29] <ermine> Kakadu: куда там можно добавить дополнительный инклюд?
[16:42:09] <Kakadu> https://github.com/Kakadu/lablqt/blob/master/build.ml#L58
[16:42:18] <Kakadu> он его воткнет в автосгенеренные файлы кути
[16:42:31] <Kakadu> к тому же я поменял в билд-скрипте как вызывается make
[16:42:43] <Kakadu> ermine: теперь тебе надо будет исправлять только в 1 месте
[16:43:05] <ermine> let includes?
[16:43:09] <Kakadu> надо подумать как автоматически определеять что мы под фряхой
[16:43:12] <Kakadu> ermine: да
[16:43:12] <ermine> для gcc
[16:43:22] <Kakadu> а для gcc хз как
[16:44:15] <ermine> ccopt тогда
[16:44:27] <Kakadu> https://github.com/Kakadu/lablqt/blob/master/xml/cppGenerator.ml#L131
если ты про сгенеренные авто файлы байндингов
[16:44:35] Kakadu afk на полчаса
[16:45:34] <ermine> да, там тоже можно похачить gcc
[16:45:53] <ermine> щас я просто в let includes вписала, чота там компиляет уже
[16:46:23] <ermine> тут GL/gl.h оказалcя не в путях
[16:46:52] <ermine> у gcc есть директива C_INCLUDE_PATH, чота оно тут не сработало
[16:48:28] <ermine> Kakadu: кто этот зверь, что посадил тебя на build.ml?
[16:49:05] <ermine> с удовольствием бы выдрала из него клок шерсти
[16:50:09] <ermine> почти докомпилялось, сломавшись на линковке
[16:51:43] <ermine> а нет
[16:51:47] <ermine> еще раньше
[17:00:41] <ermine> classes.ml долго компилится, ужос
[17:11:26] <ermine> Kakadu: как тебе удается такое девелопит, если для его компиляции нужен ддвадцатипроцессорный комп?
[17:11:51] <ermine> не, сто процессоров будет лучше
[17:13:47] f[x] вышел(а) из комнаты
[17:15:40] <Kakadu> я вернулся
[17:16:37] <Kakadu> ermine: а оазис достаточно адекватен чтобы поддержать мой проект?
[17:19:10] ermine задумалась над следующей ошибкой
[17:19:39] <ermine> mocml наверное тоже с башем?
[17:20:17] <ermine> не
[17:20:34] <Kakadu> /me: фуух
[17:20:43] <Kakadu> нет, так не работает
[17:20:49] <ermine> Exception: Failure "can't gmake test test4".
[17:21:06] <Kakadu> дай хвост
[17:31:22] <Kakadu> я тут думаю, перед началом переписывания lablqt со значительными изменениями отбранчить или так ложить?
[17:35:26] <ermine> real    5m56.399s
user    6m54.236s
sys     0m26.097s
[17:35:49] <ermine> на макбуке оно в  три раза дольше собирается
[17:36:23] <ermine> проинсталлила
[17:36:43] <ermine> ну теперь можно на два гуя развлекаться
[17:37:10] komar вышел(а) из комнаты: Replaced by new connection
[17:37:10] komar вошёл(а) в комнату
[17:55:12] <Kakadu> скорее всего только на 1
[17:55:18] <Kakadu> ибо то lablqt что есть --- УГ
[18:29:56] komar вышел(а) из комнаты: Replaced by new connection
[18:29:58] komar вошёл(а) в комнату
[18:42:14] <Kakadu> мысли в слух по поводу lablqt.
https://github.com/Kakadu/lablqt/blob/master/inher/classes.ml#L8
Тут я предположил, что кутишный класс имеет один конструктор без параметров, и  создаю объект однозначно. А если конструкторов несколько, то какой выбирать нифига не понятно.
[19:05:13] <gds> Kakadu: про сборку -- как я понял из чатлогов, тебе не очень нравится доводить до кошерности сборку?
про конструкторы -- покажи, какие разные случаи вызовов конструктора бывают в реальных кутэ.
[19:10:41] <Kakadu> gds: положим конструкторов два всего для начала:
QPushButton ( QWidget * parent = 0 )
QPushButton ( const QString & text, QWidget * parent = 0 )
[19:11:28] <gds> Kakadu: покажи самый жопный случай.
[19:20:05] <Kakadu> я только что зашел в #qt и спросил "у какого класса больше всего конструкторов?". Они в шоке
[19:21:03] letrec вошёл(а) в комнату
[19:21:10] letrec вышел(а) из комнаты
[19:21:26] letrec вошёл(а) в комнату
[19:26:59] <Kakadu> gds:  короче я не знаю жопного случая
[19:27:31] <Kakadu> как бы такой вначале разрулить
[19:27:56] <Kakadu> в любом случае я могу выпилить получавтоматически из xmlины с API то что плохое
[19:28:07] <ermine> а в чем проблема с конструкторами? вешаешь опциональные аргументы и всё
[19:28:12] <gds> сходу: "parent = 0" == " ?parent" и подсовывание "0", если ?parent = None.
[19:28:44] <Kakadu> ermine: в этом  случае да
[19:28:46] <gds> кстати, text тоже опциональный аргумент вполне.
[19:29:07] <gds> вот потому, что тут можно разрулить, я и попросил по-жопнее что-то.
[19:29:53] <Kakadu> gds: ты считаешь что тут можно _автоматически_ разрулить?
[19:30:03] ermine погрязла в типизацию, вот где жпа так жпа
[19:30:58] <Kakadu> я бы мог привести пример
QRectF ()
QRectF ( const QPointF & topLeft, const QSizeF & size )
QRectF ( const QPointF & topLeft, const QPointF & bottomRight )
QRectF ( qreal x, qreal y, qreal width, qreal height )
но беда в том что 2й и 3й конструкторы бой байндинг-генератор выбросит
[19:31:12] <ermine> Kakadu: ты еще не наколдовал с make?
[19:31:46] <gds> Kakadu: если есть два варианта аргументов, где в одном из них есть аргумент без дефолта, а в другом нет, но остальное совпадает -- значит это опциональный аргумент, оба конструктора сливаются в один окамловский.
Если есть просто опциональный аргумент -- явно можно сделать опциональным.
[19:31:57] <gds> почему выбросит?
[19:32:46] <Kakadu> gds: потому что передача по значению
[19:39:17] <Kakadu> такое ощущение что в кути всё ОК с конструкторами и делали они их не как попало а согласно определенным правилам
[19:42:03] <gds> Kakadu: но QPushButton(constr QString & text , ...) -- тоже по значению же.
[19:43:00] <gds> в общем, на мой взгляд, пока хитрые случаи не нужны.  Надо оставить простор для творчества контрибуторам.
[19:43:03] <Kakadu> ну стринги я отображаю в камлевые стринги
[19:43:11] <gds> догадывался, но решил точно узнать.
[19:43:51] <Kakadu> gds: а ты в контрибутство веришь?
[19:43:57] <gds> а если правила (или их подобие) есть -- значит всё замечательно.  Даже если будут исключения, их можно будет сложить отдельно и тупо захардкодить.
[19:44:33] <gds> в контрибутство -- конечно.  я сам контрибутор.  только для тех проектов, которые распеарены хорошо либо реально нужны.
[19:46:59] <gds> только обязательно распеарить "flexible moc->ocaml code generator that allows you to add some corner cases".  ну не будем уточнять тут конкретику :]
[19:47:04] <Kakadu> gds: ты ещё спрашивал меня что-то про пиление билд-скрипта. я не совсем понял
[19:50:00] <gds> про билд-скрипты -- не понимаю твою политику по ним.  Сейчас вот вижу
g++ -c -g -O0 -fno-inline -I ../simple_signals -I `ocamlc -where` -I . -fpic A.cpp
в сборке в lablqt/inher/, и странно это.  Зачем -I `ocamlc -where` (которое может содержать пробелы, например!), когда есть
ocaml{c,opt} -cc g++ ...
, которое обязано будет подставить нужную опцию, обойдясь без `ocamlc -where`.
[19:51:54] <gds> впрочем, пока я отойду от комментов про пиление lablqt, ибо есть дела поинтереснее.  У меня _всё_ получается в кадастре!  Готова база для literate programming tool, к которой у меня свои требования.  Может кому тоже понравится.
[19:52:16] <gds> Kakadu: если чо, скидывай в чятик, может кто асилит.  Либо я, но потом.
[19:52:28] <Kakadu> gds: > ocaml{c,opt} -cc g++
ничкогда такого не видел\
[19:53:33] <gds> когда ocamlc компилирует .c, он подсовывает нужные -I компилятору.  А тут -- вдобавок надо сменить компилятор.  Я помнил, что вроде как-то делается, ocamlc -help рассказал.
[20:01:32] <Kakadu> ааааа
[20:01:55] <Kakadu> ocamlopt -c -g -cc g++ 1.c
работает, а
ocamlopt -c -g -cc g++ 1.cрр
ничерта
[20:18:06] <Kakadu> вроде как ocamlopt не умеет понимать C++ файлы
[20:19:53] letrec вышел(а) из комнаты: Replaced by new connection
[20:19:54] letrec вошёл(а) в комнату
[20:30:06] <gds> Kakadu: попробуй переименовать в 1.cc
[20:32:15] <Kakadu> gds: одна фигня
[20:33:49] <ermine> и не умеет
[20:34:31] ermine опять потерпела фиаско со своей очередной гениальной идеей про парсинг
[20:34:49] <ermine> надо попробовать в следующий раз, когда осенит очередной глупой мыслью
[20:35:48] <ermine> видимо итераты - это не то!
[20:41:43] <ermine> Kakadu: шо ты сделал с make? как указать альтернативу?
[20:41:51] <gds> Kakadu: бывает.  Если есть желание нормально передавать -I ``, то погляди в проекты, где окамл и плюсы есть.  Сходу -- какие-то новые биндинги к ораклу, вроде.
[20:42:12] <ermine> let make_cmd = "make"
[20:42:56] <ermine> нет бы чоб сразу try getenv "MAKE" with Not_found -> "make"
[20:44:19] <Kakadu> ermine: тебе права на коммит дать? )
[20:45:09] <ermine> Kakadu: а кого я тогда буду пинать?!
[20:46:02] <ermine> и переписать на оазис с миражем и песком
[20:46:31] Typhon вышел(а) из комнаты
[20:46:34] <ermine> Kakadu: впрочем, давай, я все равно думаю, что и тебе права на горгону придется давать
[20:48:34] <Kakadu> на гитхабе опять интерфейс поменяли? уроды
[20:49:47] <Kakadu> ermine: сделал
[20:50:37] <ermine> щ_Щ
[20:53:16] ygrek вошёл(а) в комнату
[20:55:34] letrec вышел(а) из комнаты
[20:57:34] <ermine> завтра приделаю к горгоне выбор гуя
[21:42:32] shaggie вышел(а) из комнаты
[21:46:18] <bobry> товарищи -- а сколько Array в памяти весит? иде почитать
[21:47:22] <Kakadu> ocaml internals кикие-нибудь
[21:51:26] <ygrek> -ccopt -xc++
[21:53:12] <gds> bobry: http://paste.in.ua/3180/
[21:55:11] <bobry> gds: это оно в байтах же да?
[21:55:38] <gds> в камлословах, размер которого в битах приведён в конце.
[21:56:00] <bobry> kewl, щас буду мерять -- спасибо большое
[21:58:03] <Kakadu> кстати, кто-то задумывался до каких пор хранить нечто как тупл, а с каих пор как структуру?
[21:58:35] <Kakadu> сейчас у меня cpp_type * string option * string option
[21:59:12] <gds> я вполне так задумывался.  для временных целей -- туплы, для остального -- записи.
[21:59:33] <Kakadu> значит надо переписать на записи
[22:02:35] Typhon вошёл(а) в комнату
[22:03:09] <Kakadu> ygrek: я не догнал про -ссopt
[22:16:41] <ermine> c парсингом пожалуй пока не все так плохо
[23:06:15] ermine вышел(а) из комнаты
[23:15:02] <gds> Kakadu: -ccopt -- для того, чтобы передать гнутому компилятору опцию "детка, скомпилируй меня как C++".
[23:18:37] <Kakadu> gds: это я понял, но эффекта 0
[23:19:07] <Kakadu> $ ocamlopt -c -cc g++ -ccopt -xg++ A.cpp
/usr/bin/ocamlopt: don't know what to do with A.cpp.
[23:21:12] <Kakadu> к вопросу о конструкторах: какой мне выбирать конструктор из
    QByteArray* QByteArray( )
    QByteArray* QByteArray(const char*   )
    QByteArray* QByteArray(const QByteArray &   )
    QByteArray* QByteArray(const char*  , int size  )
    QByteArray* QByteArray(int size , char c  )
    QByteArray* QByteArray(int size , Qt::Initialization   )
[23:22:01] <Kakadu> единственный разумный ответ: "такой класс в биндингах нафиг не нужен"
[23:27:28] Kakadu вышел(а) из комнаты
[23:37:59] <gds> Kakadu: можно сделать тупо: то, что без имени аргумента, считать именованным аргументом наподобие ?const_char_ptr, а остальное считать опциональным аргументом наподобие ?size в этом примере.  Однако, что нехорошо, всё это будет тупее, чем в плюсеках.  Но на это можно пойти.
[23:45:23] <zert> можно манглить руками
[23:46:05] <zert> QByteArray_char(const char*)
QByteArray_char_int(const char*, int size)
[23:46:16] <zert> но это мрак кошмара, чад и копоть
[23:47:39] <gds> zert: у вас там жгут уголь/резину при недостатке кислорода?
[23:48:27] <gds> а про такой манглинг -- была идея, но подкидывать не стал.  На самый худой конец, таки да, пришлось бы.  Только чуть более извратно у меня было, это попроще и получше.
[23:52:31] gds вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!