[00:01:37] <valexey > :-)
[00:01:51] <valexey > В модуле-3 есть шаблоны-лайт — дженерики
[00:02:08] <valexey > ну, то есть контейнеры типобезопасные на них можно клепать
[00:02:22] <valexey > особо извращаться в тяжелой форме (аля буст) — скорее всего нельзя
[00:03:48] <ilov_boris> а чего это вы на м3 накинулись?
[00:03:54] <TRUE> valexey : для полноты картины: http://onona.su/uploads/posts/2010-12/1291863692_mozgbabi.gif
[00:04:30] <ilov_boris> Ого!
[00:04:44] <ilov_boris> Это ж как надо было заморочиться
[00:04:46] <ilov_boris> :D
[00:04:55] <valexey > TRUE: да, я видел
[00:05:31] <valexey > ilov_boris: дык няшный язык же. ну, кроме няшности языка, там дофига либ искаропки идет. от гуя до веба
[00:05:45] <valexey > я к м3 давно подбираюсь
[00:05:53] <ilov_boris> Ну тык няшный да
[00:06:04] <ilov_boris> Но про него уже давно все знают
[00:06:18] <ilov_boris> почему интерес так внезапно сейчас появился?
[00:06:24] <valexey > ну, то есть если бы ко мне пришли и сказали - тайд, или кипячение, в смысле м3 или КП, я бы без колебаний выбрал м3 для чего-то серьезного.
[00:06:45] <valexey > ilov_boris: ну, Kemet его ковыряет. по работе. вот я его и вспомнил.
[00:06:53] <ilov_boris> понятно
[00:07:04] <valexey > У них же оно на работе используется. Часть софта на нем писана
[00:07:31] <ilov_boris> Когда же интересно Kemet сириус опубликует
[00:07:41] <valexey > хз
[00:14:32] <ilov_boris> м3 няшнее гоши?
[00:18:46] <ilov_boris> valexey: Как от этой херни избавиться?
[00:18:49] <ilov_boris> "Невозможно найти или открыть файл PDB"
[00:19:21] <ilov_boris> нахер оно высвечивается все время?
[00:22:20] <vlad2> У тебя тот же проект в другой студии открыт.
[00:22:26] <vlad2> Или че-то в этом роде.
[00:23:48] <vlad2> Еще как вариант - ты дебагишь чего-то в WinDbg и одновременно компилишь в студии. Хотя я подозреваю, что это твой случай :)
[00:24:24] <ilov_boris> (Win32). Загружено "C:\Windows\SysWOW64\KernelBase.dll". Невозможно найти или открыть файл PDB.
[00:24:41] <vlad2> Ой мля...
[00:24:52] <vlad2> Это какая-нибудь 2012?
[00:24:56] <ilov_boris> Ну да. Запускаю в студии
[00:25:00] <ilov_boris> Да 2012
[00:25:12] <vlad2> У тебя не настроена скачка PDB'ек для виндовых DLL.
[00:25:38] <vlad2> Но я подозреваю, что оно тебе все равно не надо :)
[00:25:48] <vlad2> Это он варнингом пишет или конкретно ругается?
[00:26:00] <ilov_boris> Нет. Не ругается
[00:26:05] <vlad2> Если варнинг - забей, оно тебе не надо.
[00:26:17] <ilov_boris> Тык оно раздражает
[00:26:32] <vlad2> Оно ткбк будет надо, когда ты будешь крэшдапмы изучать.
[00:27:03] <vlad2> Кроме того, я рекомендую тебе _не включать_ опцию "скачивать все необходимые PDB".
[00:27:25] <ilov_boris> "prog.exe" (Win32). Загружено "C:\Users\admin\Documents\Visual Studio 2012\Projects\prog\Debug\prog.exe". Символы загружены.
"prog.exe" (Win32). Загружено "C:\Windows\SysWOW64\ntdll.dll". Невозможно найти или открыть файл PDB.
"prog.exe" (Win32). Загружено "C:\Windows\SysWOW64\kernel32.dll". Невозможно найти или открыть файл PDB.
"prog.exe" (Win32). Загружено "C:\Windows\SysWOW64\KernelBase.dll". Невозможно найти или открыть файл PDB.
"prog.exe" (Win32). Загружено "C:\Windows\SysWOW64\msvcp110d.dll". Символы загружены.
"prog.exe" (Win32). Загружено "C:\Windows\SysWOW64\msvcr110d.dll". Символы загружены.
"prog.exe" (Win32). Загружено "C:\Windows\SysWOW64\apphelp.dll". Невозможно найти или открыть файл PDB.
"prog.exe" (Win32). Загружено "C:\Windows\SysWOW64\cmd.exe". Невозможно найти или открыть файл PDB.
"prog.exe" (Win32). Выгружено "C:\Windows\SysWOW64\cmd.exe"
Поток 0x15ec завершился с кодом 0 (0x0).
Программа "[5424] prog.exe" завершилась с кодом 0 (0x0).
[00:27:26] <vlad2> Тормозить меньше будет. Ну и другие бенефиты есть.
[00:27:42] <ilov_boris> Вот такая простыня при каждом запуске
[00:27:47] <vlad2> Забей. Это сообщения дебагера.
[00:28:02] <ilov_boris> :)
[00:28:04] <vlad2> Засунь эту простыню в маленькое окошко и не смотри :)
[00:30:33] <ilov_boris> Почему float целым выводится?
[00:30:44] <TRUE> а если без дебага компилировать? Всё равно появляются предупреждения?
[00:30:45] <ilov_boris> cout << f
[00:31:14] <ilov_boris> А как без дебага?
[00:31:18] <ilov_boris> Я не шарю
[00:31:28] <ilov_boris> Две кнопки F7 и F5
[00:31:31] <ilov_boris> :D
[00:31:38] <TRUE> я тоже : ). Но как-то точно возможно.
[00:32:24] <ilov_boris> Ух ты!!!
[00:32:31] <ilov_boris> ctrl+F5
[00:32:37] <ilov_boris> без дебага :D
[00:33:03] <ilov_boris> и без мусорных сообщений
[00:33:17] <TRUE> предполагаю, что сообщения перестали появляться?
[00:33:24] <ilov_boris> Теперь я насильник 80 левела
[00:33:36] <ilov_boris> ага. совсем :)
[00:35:07] <vlad2> ctrl+F5 - это запуск без дебагера.
[00:36:22] <ilov_boris> vlad2: "Почему float целым выводится?"
[00:36:39] <valexey > ilov_boris: а ты как выводишь?
[00:36:50] <ilov_boris> cout << f
[00:37:05] <valexey > а чему равен f?
[00:37:10] <TRUE> компилер слишком умный...
[00:37:14] <valexey > кот в студию!
[00:37:15] <TRUE> форматирует
[00:37:18] <valexey > TRUE: нет :-)
[00:37:26] <valexey > компилер тут не при чем вообще
[00:37:44] <vlad2> А там точно дробная часть есть?
[00:37:53] <vlad2> Код давай ;)
[00:37:55] <ilov_boris> ну вот даже так
[00:37:56] <ilov_boris> cout << 4 / 3;
[00:38:11] <ilov_boris> или это DIV?
[00:38:42] <valexey > это див
[00:38:48] <valexey > откуда там флоату взяться?
[00:39:23] <ilov_boris> а вещественное деление как?
[00:39:25] <valexey > подели ка так: 4.0/3
[00:39:52] <ilov_boris> Хм. Оно от операндов зависит че ле?
[00:40:29] <valexey > от типов оно зависит
[00:40:36] <valexey > если ты делишь два инта, ты инт и получишь
[00:40:42] <ilov_boris> Во так заработало
[00:40:43] <valexey > если один из них флоат - получишь флоат
[00:41:02] <ilov_boris> А как тогда инт в флоат сделать?
[00:41:38] <valexey > float(myInt)
[00:41:43] <ilov_boris> Надо наверно таки почитать книжку хоть немного :D
[00:41:48] <ilov_boris> сенкс
[00:41:49] <valexey > :-)
[00:43:40] <ilov_boris> блин че то я туплю видимо
[00:43:57] <ilov_boris> Matrix<float> fMatrix(size);

for(int i = 0; i < size; ++i)
{
for(int j = 0; j < size; ++j)
{
fMatrix.Set(i, j, float((i + j) / 3));
}
}

fMatrix.Print();
[00:44:18] <ilov_boris> ну и метод:
[00:44:20] <ilov_boris> template <class T> void Matrix<T>::Print()
{
for(int i = 0; i < Size; ++i)
{
for(int j = 0; j < Size; ++j)
{
cout << Buffer[i][j];
}
cout << endl;
}
};
[00:45:18] <ilov_boris> vector<vector<T > > Buffer;
[00:45:27] <ilov_boris> Выводит целые
[00:46:51] <valexey > гг
[00:46:54] <valexey > ты не там привел
[00:46:59] <valexey >             fMatrix.Set(i, j, float((i + j) / 3));

[00:47:15] <TRUE> а тип буфера поменял?
[00:47:17] <valexey > надо :             fMatrix.Set(i, j, float(i + j) / 3);

[00:48:04] <TRUE> скобочки :)
[00:48:07] <valexey > а еще лучше:  fMatrix.Set(i, j, (float(i) + j) / 3));
[00:48:15] <valexey > ибо меньше вероятность переполнения
[00:48:27] <TRUE> смайлики : )
[00:48:34] <ilov_boris> 000
001
011
Для продолжения нажмите любую клавишу . . .
[00:49:22] <TRUE> valexey : что в строке [23:46:53]  после float? У меня лампочка нарисована...
[00:49:47] <TRUE> лампочка и " + j"
[00:50:15] <valexey > а еще лучше:  fMatrix.Set(i, j, (float(  i  ) + j) / 3));
[00:50:20] <valexey > так лучше?
[00:50:58] <TRUE> да
[00:52:04] <ilov_boris>
#include <iostream>                  
#include <vector>
using namespace std;

template <class T> class Matrix
{
public:
Matrix(int nSize);
~Matrix();
void Print();
void Set(int m, int n, int value);
private:
vector<vector<T > > Buffer;
int Size;
};

template <class T> Matrix<T>::Matrix(int nSize)
{
Size = nSize;
Buffer.resize(nSize);
for(int i = 0; i < nSize; ++i)
{
Buffer[i].resize(nSize);
}
};
template <class T> Matrix<T>::~Matrix()
{};

template <class T> void Matrix<T>::Set(int m, int n, int value)
{
Buffer[m][n] = value;
};

template <class T> void Matrix<T>::Print()
{
for(int i = 0; i < Size; ++i)
{
for(int j = 0; j < Size; ++j)
{
cout << Buffer[i][j];
}
cout << endl;
}
};


int main()
{

int size = 3;

Matrix<int> iMatrix(size);

for(int i = 0; i < size; ++i)
{
for(int j = 0; j < size; ++j)
{
iMatrix.Set(i, j, i + j);
}
}

iMatrix.Print();

Matrix<float> fMatrix(size);

for(int i = 0; i < size; ++i)
{
for(int j = 0; j < size; ++j)
{
fMatrix.Set(i, j, float(i + j) / 3);
}
}

fMatrix.Print();

system("pause");
return 0;
}

[00:52:08] <valexey > /me обычно отрубает в чятиках смайлики
[00:52:44] <ilov_boris> блин все
[00:52:47] <TRUE> /me снова попытался это сделать и снова не нашёл нужного места в настройках
[00:52:47] <ilov_boris> сам понял
[00:52:54] <valexey > :-)
[00:53:01] <ilov_boris> Set(int m, int n, int value)
[00:53:04] <valexey > version TRUE
[00:53:05] <Жаба> valexey , TRUE have Psi 0.14 on Windows XP
[00:53:08] <ilov_boris> int value
[00:55:14] <ilov_boris> понял на Set(int m, int n, Т value)  и все заработало
[00:55:17] <valexey > ошибки подкрадываются не со стороны страшных шаблонов, а со стороны элементарщины :-)
[00:55:37] <ilov_boris> блин а почему оно компилится вообще
[00:55:47] <valexey > а почему не должно?
[00:55:52] <ilov_boris> если я в интовый аргумент флоат толкаю
[00:56:22] <TRUE> а подкрадываются они со стороны элементарщины потому, что знают: искать их будут в шаблонах.
[00:56:34] <TRUE> автоприведение
[00:56:36] <valexey > потому же почему оно компилится если ты инт толкаешь во флоат
[00:57:00] <ilov_boris> а погоди ка
[00:57:12] <ilov_boris> оно мне предупреждение таки давало
[00:57:25] <ilov_boris> о возможной обрезке
[00:57:46] <valexey > варнинги, как понимаешь, это прихоть компилятора.
[00:57:51] <valexey > но они да, обычно полезны
[00:58:43] <ilov_boris> :D
[00:58:48] <ilov_boris> буду знать
[01:01:53] <TRUE> тест иконок: :) ;)
[01:01:57] <TRUE> о, отключились
[01:02:11] <TRUE> я поборол свой клиент!
[01:03:28] <ilov_boris> 00.3333330.666667
0.3333330.6666671
0.66666711.33333
Для продолжения нажмите любую клавишу . . .
[01:03:43] <ilov_boris> valexey: а как сие отформатировать?
[01:03:53] <ilov_boris> чтоб красиво по колонкам было?
[01:04:32] <valexey > в смысле по колонкам? ну можно табами. можно фиксированным форматом
[01:04:45] <TRUE> принтф. Или его в плюсах недолюбливают?
[01:04:56] <ilov_boris> а cout без формата?
[01:05:04] <valexey > http://arachnoid.com/cpptutor/student3.html
[01:05:15] <valexey > я имею ввиду форматированный вывод через cout
[01:05:32] <valexey > TRUE: ну, я не гнушаюсь. когда оправдано.
[01:06:02] <TRUE> не в смысле принципиальной допустимости, а в смысле концепции плюсов
[01:06:18] <TRUE> то есть, он под концепцию плюсов попадает?
[01:06:35] <valexey > эмм.. а что такое концепция плюсов?
[01:07:05] <valexey > ну, в современных компиляторах компилер проверяет типы в принтфе на этапе компиляции. то есть оно впоне типобезопасно если компилер современный
[01:07:35] <valexey > потому и не гнушаюсь :-)
[01:07:45] <ilov_boris> cout << setw(10) << Buffer[i][j];
[01:07:50] <ilov_boris> помогло
[01:07:54] <ilov_boris> спасибо
[01:07:56] <ilov_boris> :)
[01:08:01] <valexey > но естественно через принтф не примитивное что-то хрен выведешь.
[01:08:04] <valexey > пжалста :-)
[01:08:31] <valexey > поэтому принтф используется там, где он уместен и cout там где уместен он.
[01:09:46] <vlad2> /me инсталирует AVG
[01:10:54] <valexey > гы. Темиргалаев не знает о чем пишет: "Подписываюсь. Тоже констатирую, что старая привычка постепенно вытеснилась. Что не возможно, если альтернатива хуже…"
[01:11:00] <valexey > про моноширинность
[01:11:20] <valexey > типо если б пропорциональность не было лучше чем моношир для программирования, привычка не вытеснилась бы
[01:11:28] <valexey > ЩЩА!
[01:11:53] <valexey > То чем пользуешься чаще, то в привычку и входит, даже если оно объективно хуже
[01:12:15] <valexey > Ибо иначе пользоваться этим ты не сможешь.
[01:12:21] <vlad2> Угу.
[01:12:38] <valexey > Более того, если тебе нужно эффективно с этим работать, то придется это дело полюбить.
[01:12:50] <vlad2> Вот это не всегда работает.
[01:12:55] <vlad2> Взять к примеру жабаскрипт...
[01:13:12] <valexey > А у тебя не слишком то эффективно с ним выходит работать :-)
[01:13:16] <vlad2> Сколько не будешь писать - от ощущения постоянной борьбы не избавиться :)
[01:13:16] <valexey > У тебя постоянные ломки
[01:13:46] <valexey > А народ который реально фигачит на жабаскрипте много и продуктивно его реально любит.  И мыслит в его терминах
[01:14:09] <valexey > Статическая типизация, строгие языки компилируемые.. Для них это дикость и изврат с которым нельзя работать.
[01:15:03] <vlad2> Мыслит - ладно, я все понимаю. Меня ломают чисто технические вещи, которых просто не должно быть в нормальном языке или которые можно было бы обходить с помощью технических же приемов.
[01:15:19] <vlad2> У меня все нормально с ктиным питоном.
[01:15:20] <ilov_boris> [01:11:50] <valexey > То чем пользуешься чаще, то в привычку и входит, даже если оно объективно хуже
[01:15:22] <ilov_boris> +1
[01:15:38] <valexey > Гг. Они уже на чисто инстинктивном уровне обходят эти грабли и не замечают их
[01:15:51] <valexey > Также как мы, сишники, на автомате обходим грабли Сей
[01:16:03] <valexey > А ведь их там вполне не мало, граблей этих.
[01:16:10] <vlad2> ОК. Значит наработка инстинктов на жаюаскрипте занимает (у меня лично) больше времени чем на каком либо другом языке.
[01:16:52] <valexey > Просто ты отвлекаешься :-) Надо посадить тебя на год сайтики на js клепать. И только этим и заниматься. После этого ты полюбишь js, либо не выживешь :-)
[01:17:37] <vlad2> На год??? Только жабаскрипт???
[01:17:45] <valexey > Да!
[01:17:55] <valexey > Ну, можно еще html+css :-)
[02:12:34] <vlad2> AVG какашка. Все тормозит.
[04:42:35] <egp> Вот и утро наступило
[04:57:25] <egp> Программозаверы начинают плюваться перфокартами
[05:07:12] <Сергей Зорин> .
[05:08:46] <Сергей Зорин> кому утро а кому ночь еще
[05:08:57] <egp> ааа, европевцы
[05:09:49] <Сергей Зорин> да даже в мосве еще только 5
[05:09:57] <egp> а у меня 10
[05:10:13] <Сергей Зорин> у меня 8
[05:10:29] <egp> 8 это утро
[05:10:58] <Сергей Зорин> egp, надо тебе на Модулу-3 переходить там и КОКОР ест
[05:11:32] <egp> да я ваще свой компилер на с++ делаю пока в незанятое время
[05:11:51] <egp> но буду переписывать на оберон
[05:12:41] <egp> но ваще я уже месяц к нему не прикасался
[05:13:39] <vlad2> /me сносит AVG
[05:13:50] <egp> vlad2: что за G ?
[05:14:05] <vlad2> гавно
[05:14:19] <egp> vlad2: а официально как это?
[05:14:20] <Сергей Зорин> vlad2: а зачем оно тебе
[05:14:36] <vlad2> http://www.avg.com/us-en/homepage.tpl-uc2012
[05:14:38] <egp> у меня на линухе нет антивирей
[05:15:10] <vlad2> Эта хня не дает нормально работать нашему аплткэйшину на конкретной машине. Пипец.
[05:15:18] <egp> а на винде у меня аваст стоит
[05:16:04] <vlad2> Вот че хочешь - то и делай...
[05:16:52] <Сергей Зорин> Comodo не пробовал?
[05:16:53] <egp> кстати аваст врастает в винду так что хрен безболезненно выкорчуешь
[05:16:56] <vlad2> Пошел перегружаться...
[05:25:12] <egp> пока клепать виджет ивентов и табличку ивентов
[06:07:33] <egp> хехе

private static String toDatelniyPadezh(String usernameWhoProducedEvent) {
if(usernameWhoProducedEvent==null)return null;
...
[06:07:43] <egp> ибо null не склоняется =)
[06:08:44] <egp> дательный - это кому-чему, если кто забыл азы лингвистики =)
[09:20:57] <egp> клёва. мой напарник виртуальный сервак покупает
[09:21:13] <egp> вот это http://www.edis.at/en/server/linux-vserver/switzerland/vrs-starter/
[09:21:36] <egp> сказал ему Ubuntu LTS 12.04 32Bit ставить
[09:22:24] <egp> дебиан не стал ставить - там больше манов приходится курить =)
[09:23:47] <egp> Федора ещё интересная ось, я под ней лет 5 работал - но давно не тыкал её несколько лет как
[11:03:39] <Vapaamies> Пинг
[11:03:56] <egp> щас как начну загоняться =)
[11:04:18] <egp> PingException
[11:04:21] <Vapaamies> Странно, сообщение про edits.at отсутствует в логе
[11:05:05] <Vapaamies> Странный бот
[11:05:15] <egp> глюкавый
[11:07:14] <egp> я создал баг репорт, валексею его скину
[11:08:08] <egp> ща в Австрии (edis.at) 8 утра 7 минут, ща саппорт расшевелится, я им написаль =)
[11:08:17] <egp> саппорт с 8 до 17 пашет
[11:09:01] <Vapaamies> И вообще, почему бот не на Обероне? :-)
[11:09:40] <egp> нуачо, jabber оберонкоровцы реализовали, я их реализацию тестировал, багов не нашёл =)
[11:09:48] <egp> мало тестил.
[11:12:31] <egp> они этот жабер в системе таксистов вроде юзают они говорили
[11:12:48] <egp> не просто так =)
[11:13:53] <Vapaamies> Нда, на форуме жутко неудобно, что все свалено в одну кучу
[11:14:08] <egp> валексей программит новый форум
[11:14:17] <egp> в ближайшие месяцы релиз
[11:14:35] <egp> там будут чтото типа категорий
[11:14:37] <Vapaamies> Он поэтому у меня про вики спрашивал?
[11:14:47] <egp> да он вообще любопытный парень
[11:15:12] <Vapaamies> С ним прямо так и хочется поговорить по теме «многомерного форума»
[11:15:42] <egp> поговорите
[11:16:39] <egp> мне нравился ява-апплет графовой категоризации на http://kurzweilai.net/ но потом они его то ли убрали то ли спрятали куда. В топе каждой страницы он торчал с графом на виду
[11:17:35] <Vapaamies> Не, тут идея в том, что сам форум изначально на тегах
[11:18:42] <Сергей Зорин> теги не проблема вообще к любому форуму прикрутитьт
[11:19:39] <Vapaamies> valexey форум на Обероне пишет?
[11:20:06] <Сергей Зорин> наверное на C++11 )
[11:20:37] <egp> Vapaamies: он пишет на СОВЕРШЕННО СЕКРЕТНОМ ЯЗЫКЕ
[11:20:51] <egp> даже не пытайтесь узнать
[11:22:00] <Vapaamies> Ну, тут будет не очень удивительно, если у него там и язык свой, и компилятор к нему подпольный
[11:22:33] <egp> вряд ли. Вроде он не настолько крут
[11:22:42] <egp> не дорос ещё вероятно =)
[11:23:03] <Vapaamies> Я вот думал-думал создать тему об Оно на форуме, но… не нашел слов
[11:23:06] <egp> хотя он взялся за чужой компилер
[11:23:33] <egp> https://github.com/valexey/Oberon-07-11-compiler - говорят, компилер Оберона-07
[11:23:56] <Vapaamies> Это который akon1 делает?
[11:24:02] <egp> не знаю
[11:24:17] <egp> не расследовал эту тему
[11:24:23] <Vapaamies> Там в комментах написано :-)
[11:24:45] <egp> ладно, пойду работать. У меня поисковой бокс уплыл
[11:24:47] <Vapaamies> akron1, чуток ошибся с ником
[11:25:08] <Сергей Зорин> Freeman пиши про Оно,
[11:25:45] <Vapaamies> И в каких словах?
[11:26:20] <egp> урл запаблишь да и пусть народ респондит
[11:26:23] <Сергей Зорин> да это ты сам придумай ) но не многословно
[11:26:59] <Vapaamies> Гм. Поскольку тут собралось квалифицированное сообщество, хочется получить от них какой-никакой отклик
[11:27:19] <Сергей Зорин> я сам хотел как-то про Оно написать, когда на фрипаскале увидел, но както времени небыло
[11:27:30] <Vapaamies> Во, надо было
[11:27:46] <Vapaamies> Лаборатории нужны евангелисты, как говорится
[11:28:04] <Сергей Зорин> та не, я в плане критики )
[11:28:16] <Vapaamies> И это тоже
[11:28:27] <Vapaamies> И в чем критика?
[11:29:07] <Сергей Зорин> дак ты пост то открой
[11:29:44] <Сергей Зорин> вообще я уже не помню, давно ж было, надо снова смотреть
[11:32:49] <Сергей Зорин> лан я работать
[11:33:38] <egp> я на чат поглядываю
[11:34:00] <Сергей Зорин> version Vapaamies
[11:34:02] <Жаба> Сергей Зорин, Vapaamies have Miranda IM Jabber (Unicode) 0.9.16.0 on
[11:37:25] <Vapaamies> /me не бот, однако
[11:55:39] <egp> фракталоведы и говноведы
[12:21:24] <egp> x: а у америкосов вообще демпинг
там крутые хостинги за 1 бакс в месяц
но пинг уже 200-250мс
[12:21:35] <egp> до неметчины у него пинг 50, до мск 10
[12:31:23] <valexey > egp: попробуйте в Британии
[12:31:35] <valexey > Кстати, а где в пендосии хостинг 1 бакс?
[12:31:44] <valexey > или это имеется ввиде именно хостинг а не vps?
[12:38:21] <egp> valexey : мы взяли edis.at в UK
[12:38:32] <egp> valexey : не знаю. не знаю
[12:39:28] <valexey > да, на них я тоже облизываюсь
[12:40:16] <valexey > а какая у них технология виртуализации?
[12:42:40] <egp> там возникла проблема в полном отсутствии док на впс, я написал в саппорт
[12:42:53] <egp> ни айпи ни бесплатного днс-адреса не дали
[12:43:04] <egp> факи посмотри там
[12:43:07] <egp> ща найду линк
[12:43:51] <egp> хороший фак. Page Not Found
[12:44:34] <egp> но вообще маны у них тут http://www.edis.at/en/support-and-service/
[12:44:55] <egp> по впс док нет, кроме нескольких вопросов в факе
[12:45:52] <valexey > Linux-VServer <http://ru.wikipedia.org/w/index.php?title=Linux-VServer&amp;action=edit&amp;redlink=1>
[12:46:17] <valexey > и KVM (другие планы)
[12:48:19] <egp> чо за линк ты кинул

Создание страницы «Linux-VServer» Перейти к: навигация <http://ru.wikipedia.org/w/index.php?title=Linux-VServer&amp;action=edit&amp;redlink=1#mw-head>, поиск <http://ru.wikipedia.org/w/index.php?title=Linux-VServer&amp;action=edit&amp;redlink=1#p-search>  В Википедии нет статьи с таким названием.
[12:48:34] <egp> valexey : ща в приватку баг репорт на Жаба скину, ок?
[12:49:06] <egp> она мессаги скипует
[12:49:19] <valexey > кидай
[12:49:31] <valexey > правда жаба не в моем ведении, но автора постараюсь достать
[12:49:44] <valexey > egp: я бы вам советовал не то что вы выбрали, а вот это: http://www.edis.at/en/server/kvm-vps/uk/kvm-starter/
[12:50:20] <egp> valexey : да купили уже
[12:55:21] <egp> ща тестить жабу буду
[12:55:22] <egp> с манами дико бедно на этом edis.at - фиг чо узнаешь без саппорта
[12:55:25] <egp> с манами дико бедно на этом edis.at - фиг чо узнаешь без саппорта
[12:55:56] <egp> залогала, собака
[12:56:13] <valexey > а то ж
[12:56:13] <egp> не воспроизводится =)
[13:24:07] <egp> через сутки из edis.at пришлют IP address и рутовый пароль
[13:24:28] <egp> We do not offer any subdomains for access, you only get the IP address - we also do not offer any DNS services.
If you need DNS hosting for domains you could consider a service like rage4.com

We do not have any documentation for VPS.
[13:24:50] <valexey > ну, обычное дело
[13:25:10] <valexey > мой хостер. где крутится vps с форумом, тоже ничего такого не предоставляет. да и не нужно это
[13:25:34] <egp> я не говорю что нужно, просто прояснение ситуёвины
[13:25:56] <valexey > угу
[13:26:45] <egp> форматирование моего емыла сломало глаз товарищу из EDIS :)
[13:27:22] <egp> а я не знаю какие от меня исходящие, как выглядят
[13:27:53] <egp> у меня просто цвета дикие в мейле
[13:38:35] <Сергей Зорин> valexey : а ты сколько им платишь за впс
[13:39:28] <valexey > было 3 бакса.  сейчас они продались и стало 10.
[13:39:38] <valexey > вот думаю свалить куда-нибудь или не стоит пока.
[13:42:23] <egp> фу. оказ у них нотис о нераспространении в емыле стоял =) я косячник
[13:43:10] <egp> кстати в ЕДИСе 3 евры а не 3 баксы
[13:43:47] <Сергей Зорин> на впс ты сам все стаавишь
[13:44:55] <egp> Error in element (see logs)
                                                    
[13:45:15] <valexey > правда и vps'ка стала пожирнее.
[13:48:37] <egp> гыыыы фаерфокс в CSS пикселы флоатами считает
[13:51:01] <Сергей Зорин> valexey : а оси любые или из списка
[14:06:35] <Сергей Зорин> «В языке Oberon-07 реализованы некоторые полезные для микропроцессорных программ структуры языка, например — «цикл Дейкстры».
«
[14:07:58] <Сергей Зорин> причем тут микропроцессоры, «микропроцессорные программы» и цикл дейкстры
[14:10:00] <egp> Разуметь надо так что с циклом Дейкстры инструкций получается меньше.
[14:10:15] <egp> Инструкций процессора.
[14:20:20] <egp> Я кстати давно мечтаю заюзать оберон в качестве низкоуровневого асма
[14:20:50] <egp> или обероноподобный язык заюзать.
[14:21:36] <egp> в принципе похожий проект это llvm
[14:22:44] <egp> я даже хотел расковырять гцц и сделать бэкэнд генерящий оберон... но гцц оказался не по зубам, надо покупать книги, врубаться в доки и код долго
[14:25:02] <Сергей Зорин> да ничего особо эффективного цд не генерит
[14:25:35] <Сергей Зорин> а «правильный» цд это вообще оверхэд
[14:26:47] <valexey > egp: а я не помню. у меня дебианище.
[14:27:25] <valexey > Сергей Зорин: ну, да. для МК оберон по идее нужно серьезно допиливать.
[14:27:40] <valexey > одно отсутствие volatile чего стоит
[14:33:24] <egp> надо квалификатор PORT =)
[14:37:28] <Сергей Зорин> кстати, чтото никто незаинетресовался Ob51
[14:38:05] <Сергей Зорин> egp: что даст PORT
[14:40:37] <egp> Сергей Зорин: в архитектурах Z80 порты бывают в памяти или с 0 до 256 (?). Не знаю =)
[14:41:29] <egp> Быть может единственный способ с портами возиться - это асм
[14:41:38] <Сергей Зорин> gjvjtve 0-255
[14:41:47] <Сергей Зорин> по моему 0-255
[14:41:53] <egp> угу, 256 это 0
[14:42:34] <Сергей Зорин> как у интеля с котрого он и начинался
[14:42:40] <egp> хотя в принципе там только реакция на In/out assign
[14:42:55] <egp> так что можно и в виде памяти особой порты трактовать
[14:43:12] <Сергей Зорин> кк
[14:43:39] <Сергей Зорин> как трактовать порты в виде памяти если к ним доступа нет, они не отображаются в память
[14:43:57] <egp> не. в виде адресного спец-пространства
[14:44:37] <Сергей Зорин> и для работы требуются спец команды в отличии от DEC PDP-11 way
[14:44:56] <egp> ну маппирование портов в память и на Z80-архитектурах есть
[14:45:07] <egp> то есть они отображаются в память спецконтроллерами
[14:45:41] <egp> скажем на MSX флоппи-дисковод так делает
[14:46:24] <egp> ну и некоторые картриджи для MSX тоже так делают
[14:47:16] <egp> и сетевая плата тоже так делает на MSX
[14:52:04] <Сергей Зорин> ты имеешь ввиду скорее всего прямой доступ к памяти — DMA
[14:52:40] <Сергей Зорин> f rfhnbhbl;b nfv dhjlt rfr hfcibhbntjb gfvznb
[14:53:03] <Сергей Зорин> а картриджи там вроде как расширители памяти
[15:15:12] <egp> Сергей Зорин: в картриджах там можно массу левых микрух напихать, не только память
[15:16:09] <egp> про DMA утверждать не берусь ничего. Есть спецы на канале #MSXdev, но меня забанили когда я уличил главаря в ошибочке и назвал его liar
[15:17:02] <egp> меня без лишних споров послали в бан. У главаря эго сверхкосмических размеров
[15:18:27] <egp> Ну они там сидят на всех и на вся обижаются толпой
[15:18:39] <egp> враждуют со своими msx-ерами
[15:18:54] <egp> и с сайтом msx.org
[15:19:50] <valexey > :-)
[15:20:05] <valexey > надо их к нам пригласить - чую, родственные оберонщикам души!
[15:20:29] <egp> неа. они ЯВУ не любят. Только асм, только хардкор
[15:20:39] <egp> ЯВУ=языки выс.ур.
[15:21:17] <egp> правда сами обалдуи налабали компилер асма аж с 9 проходами по сырцу
[15:21:19] <egp> абалдеть
[15:21:32] <egp> говорят что это так, я сам не скачивал их асм
[15:21:33] <valexey > да я не про инструментари, а про способность люто ненавидеть и сраться с ближним своим :-)
[15:22:02] <egp> нене. 9 проходов! даже гцц такой ересью не занимается =)
[15:22:48] <egp> ну на самом деле писи потянет такие проходы, а вот на МСХ если оно - то умрёшь пока дождешься всех 9 проходов
[15:23:32] <egp> ну мож это шутка про 9, не знаю.
[15:28:47] <egp> о. айпи и пароль VPS прислали
[15:31:19] <egp> пинг до них (UK): rtt min/avg/max/mdev = 137.662/139.929/146.946/2.564 ms
[15:33:01] <valexey > гм. как-то долго
[15:33:27] <valexey > хотя ты же далеко
[15:33:38] <valexey > какой ip? запингую :-)
[15:37:39] <egp> valexey : 37.235.54.199
[15:39:21] <valexey > из Англии: min/avg/max/mdev = 4.887/6.900/21.982/3.349 ms
[15:39:40] <valexey > с работы (Нижний Новгород): min/avg/max/stddev = 53.554/54.374/60.817/1.890 ms
[15:43:50] <egp> скорость аплоада от меня (Иркутск) до UK: 432.6KB/s
[15:51:33] <valexey > ну, скорость как таковая для веба уже не столь важна
[15:51:44] <valexey > то есть 100 Кб/сек хватит вполне
[15:51:49] <valexey > важнее латентность
[16:00:48] <egp> томкат запустился =)
[16:01:24] <Сергей Зорин> ну 9 проходов вполне реально если маленькое озу и приходится формировать промежуточные у вирта вон модула вроде 6 или 8 проходов имела
[16:02:51] <valexey > egp: ога, вижу кошатину :-)
[16:03:22] <valexey > Version 7.0.34, Dec 4 2012
[16:03:35] <egp> valexey : на днях слил
[16:03:45] <egp> томкэт
[16:04:04] <valexey > /me закопал кошатину в своем проекте
[16:06:09] <egp> я тоже думаю Jetty юзать
[16:06:12] <egp> попозжа
[16:06:29] <egp> кошатина меня достала виснуть на локале
[16:06:35] <egp> спринг кажется её весит
[16:06:50] <egp> спринг я тоже закопаю
[16:07:09] <valexey > ну, у меня все более кардинально - я яву вообще выкинул с сервера :-)
[16:07:37] <valexey > (а кошатина вообще странная была - после перезапуска обычно тупила несколько минут, сайт открывался через раз на третий)
[16:07:39] <egp> Jetty кстати простой как валенок и ничего лишнего. Пять лет его юзал в десктопной проге для доступа снаружи по RPC и до сих пор щастлив =)
[16:08:47] <egp> прога была на свинге так-то, jetty было не видно глазами
[16:09:30] <valexey > /me терпеть не может фреймворки во всех проявлениях
[16:09:39] <egp> а он не фреймворк
[16:09:42] <egp> он апи просто
[16:10:03] <egp> он тебя никак не фреймит
[16:10:55] <egp> ты ему гришь вызовом его процедуры "запусти тредпул для хттп" - он запускает и сервает
[16:11:28] <egp> хорошая штука и простая и понятная
[16:11:38] <egp> без какушек
[16:12:02] <egp> на оберон бы её спортить не мешало б
[16:12:11] <egp> архитектура прекрасная просто
[16:13:39] <egp> какие объекты ему надобавляешь - те и будут пахать. сам он нишиша делать не будет.
[16:18:30] <Сергей Зорин> valexey : как http пишешь?
[16:18:42] <valexey > в смысле?
[16:18:58] <valexey > "ложусь на вычислитель и думаю"
[16:19:11] <Сергей Зорин> ну ты на м3 хотел
[16:19:42] <valexey > да, хотел попробовать. на выходных буду щупать.
[16:20:09] <valexey > сейчас я оный http насилую по работе и там надо БЫСТРО выкатить результат. который в продакшн сразу.
[16:21:58] <Сергей Зорин> как думаешь ide для оберонов будет востребована
[16:22:56] <valexey > с Оберонами ситуация такова, что нужно так или иначе создать нишу для их применения. То есть это должна быть нишеобразующая IDE.
[16:23:10] <Сергей Зорин> хотя этих обернов, мать их
[16:23:15] <valexey > Ну если целью ставить чтобы ей пользовались не 10 гиков а больше
[16:23:47] <valexey > Угу. Обероны как примитивные формы жизни - сильно подвержены мутациям и идет быстрое видообразование
[16:26:02] <Сергей Зорин> лан тогда слеплю для своего компилятора пока
[16:26:37] <valexey > угу
[16:27:26] <Сергей Зорин> ну еще pow! можно зацепить
[16:30:01] <Сергей Зорин> тем более что есть порт на объжектпаскаль
[16:56:05] <egp> вот вебапп который я пишу http://37.235.54.199:8080/artsite/
[17:05:03] <egp> цмсы на яве: http://java-source.net/open-source/content-managment-systems
http://www.alfresco.com/
http://www2.onehippo.com/en/products/cms/try

любопытно было бы на досуге всё это поизучать, если б я не был ленив

[17:10:11] <egp> хиппо красяво выглядит на ролике
[17:10:23] <egp> драг н дроп чего попало куда попало
[17:41:18] <egp> Trac ставлю
[17:58:10] <egp> сребутил ось, всё в норме
[17:58:19] <egp> на впсе
[17:58:44] <valexey > а зачем тебе трак?
[17:59:02] <egp> по дефолту /tmp/ на рамдиске = 16M, питон не вынес такого горя =)
[17:59:12] <egp> valexey : ну тракаться =)
[18:00:14] <egp> valexey : люблю организацию . а то в тудухах и в мыле хрен сориентируешься
[18:00:32] <egp> а в памяти такой вебапп удержать сложно
[18:00:49] <valexey > ну, я для организации использую bitbucket.org
[18:00:59] <valexey > там и система контроля версий, там и иссуе-трекер и вики
[18:01:11] <egp> за деньги?
[18:01:19] <egp> для клозед сорса
[18:01:21] <valexey > нет
[18:01:36] <egp> хм как так. а в чём catch?
[18:01:38] <valexey > для клозет сорса, в отличае от гитхаба, там можно репозиторий создавать
[18:01:44] <valexey > если до 5 рыл в проекте
[18:01:53] <egp> ага ок
[18:02:06] <egp> ща посмотрим
[18:02:11] <egp> пасиб =)
[18:02:17] <valexey > система контроля версий там либо hg  либо git
[18:02:20] <valexey > пжалста :-)
[18:03:13] <egp> hg и гит... уй... гит я ещё ниасилил многабукаф а hg мне как-то не очень - проливается эта ртуть везде... я пока свн юзаю, так-то гит хорош но разобраться сложновато
[18:03:31] <valexey > хез. у нас hg
[18:03:43] <valexey > простое же в использовании
[18:03:53] <valexey > вообще с svn проще на него перейти чем на git
[18:03:58] <egp> не оч нравится организация hg
[18:04:04] <egp> просто несколько дизлайк
[18:04:07] <egp> чутьчуть
[18:13:41] <egp> valexey : оттуда спам не шлют с битбакета?
[18:15:26] <valexey > гм. я не помню такого
[18:24:32] <egp> valexey : со ртутью у меня в эклипсе когда-то были косяки насколько я помню
[18:24:44] <egp> причём большие косяки
[18:28:27] <valexey > хез. мы не пользовались интеграцией с еклипсой
[18:28:51] <valexey > то есть я лично заливал с консоли, другие, кто на винде, те заливали черепашкой
[18:29:01] <valexey > и не заморачивались :-)
[18:29:53] <egp> маздай
[18:30:11] <egp> лишнее окно
[18:30:27] <egp> если б я всё в консоли делал тогда да, а так я в эклипсе всё делаю
[18:30:54] <valexey > гм. у меня все же мухи и котлеты отдельно
[18:31:05] <valexey > разработка в IDE, всякая тулзень в консоли
[18:39:35] <valexey > собственно я из консоли не вылажу - у меня там и тестируется все.
[18:40:19] <egp> нашёл - там есть [x] Email notifications в Manage Account / Account / Account settings. Это по поводу спама =)
[18:40:36] <egp> hg svn git это вполне разработка
[18:50:42] <egp> примитивный какой-то трекер там
[18:50:45] <egp> трак лучче
[18:51:02] <egp> но хостить самим трек - хуже, и это перевешивает
[18:55:50] <valexey > угу
[18:56:03] <valexey > ну ты заметь - там можно например комменты писать к комиттам
[18:56:16] <valexey > развести срачик прям там :-)
[19:01:21] <egp> ну это минус а не плюс
[19:01:23] <Сергей Зорин> отсутствие бесплатных приватных реп на гитхабе не нравится, а на битбакете я со своим зрением не смог победить капчу
[19:01:38] <egp> битбакет слегонца глючноват
[19:01:52] <egp> косметика глючит
[19:02:43] <Сергей Зорин> надо посмотреть на соурсефорже есть ли приватные репы
[19:06:47] <egp> вряд ли
[19:07:05] <egp> я уж лет 12 на нём - не видал таких слов или опций
[19:07:35] <egp> там сырцы свои дают вроде. а хостить приватку не хостят вроде
[19:09:35] <egp> valexey : для срачика на коммит куда лучче такая приблуда как gerrit - аддон для гита. Лучче в сочетании с jenkins ci
[19:10:02] <egp> прекрасная штука, я плакал и плакал и нареветься не мог
[19:10:31] <egp> ну в смысле счастливыми слезами
[19:12:35] <egp> ну а если серьёзно, то она с гуглом заинтегрена у нас была
[19:12:52] <valexey > :)
[19:13:16] <valexey > Сергей Зорин: ты ж начальнег - пусть капчу подчиненные распознают!
[19:13:27] <egp> и в случае неких глюков гугла урлы некие на логи не работали, пока конфиги не поменяли на расово чистые гмейл адреса
[19:14:56] <egp> то есть билд логи не смотрелись пока конфиг не поправили чей-то. Других глюков не было
[19:16:31] <egp> проблема была с хостингом гмейл почты на своем мейл домене. такое и глюкало с билд логами. ТЧК
[19:26:09] <Сергей Зорин> valexey : а на форуме для подсветки кода geshi используется?
[19:26:41] <egp> геши же не синтакс хайлайтер вроде, а просто темплатер... хотя я не вдавался.
[19:27:04] <egp> Трек юзает не геши а чтото другое для хайлайта, а для темплатов юзает геши.
[19:27:08] <egp> Trac.
[19:27:09] <valexey > Сергей Зорин: а у нас на форуме есть подсветка кода? o_O
[19:27:42] <Сергей Зорин> ээ, ка чо нету?
[19:27:46] <egp> valexey : ты что питонический поклонник чтоб геши юзать?
[19:28:01] <Сергей Зорин> геши это пхп
[19:28:12] <valexey > Сергей Зорин: а где ты подсветку эту видел?
[19:28:16] <egp> как пхп. щас питон эгг геши ставил
[19:28:54] <egp> а, дислексия. Installed /usr/local/lib/python2.7/dist-packages/Genshi-0.6-py2.7.egg
[19:29:00] <egp> генши а не геши
[19:29:14] <Сергей Зорин> valexey : ну в [code=pascal] например
[19:30:12] <valexey > нет у нас подсветки на форуме сейчас. найди мне хоть одно сообщение где она была бы видна :-)
[19:31:53] <Сергей Зорин> ((
[19:32:17] <valexey > ну, коль ты этого не замечал, следовательно не больно то и нужна :-D
[19:32:26] <Сергей Зорин> а я думал у тебя оберонистую подствеку слямзить )
[19:32:39] <valexey > :-D
[19:32:43] <Сергей Зорин> ну я не замечал по причине другой
[19:33:53] <valexey > Сергей Зорин: вот у этих есть: http://zx.oberon2.ru/forum/viewtopic.php?f=2&t=1
[19:34:13] <valexey > хотя, как по мне, такое оформление уж слишком попугайское
[19:35:29] <Сергей Зорин> ага, есть, будем попрошайничать если там геши
[19:36:05] <valexey > :-)
[19:36:33] <egp> гг дип-скай объект
[19:37:06] <egp> мало сегодня сделал
[19:37:12] <Сергей Зорин> вообщето надо в медиавики глянуть они вроде все коды светят
[19:37:43] <valexey > оберонов столько, что фиг с два всех подсветишь нормально :-)
[19:37:52] <egp> да у медиавики синтаксис сложноват, я автоматом процессировал одно время
[19:38:35] <Сергей Зорин> ноомальный синтакиси на медиавики
[19:38:37] <egp> причём сконвертить его в PLAINTEXT довольно сложно
[19:38:48] <egp> ну да, это пока ты не процессировал его
[19:39:25] <Сергей Зорин> valexey : это не сташно, это всего подстветка
[19:39:40] <Сергей Зорин> мождно модулу за основу взят
[19:39:55] <valexey > ну, кошерная подсветка все же базируется не на лексере а на парсере
[19:40:08] <valexey > менее кошерная - на лексере
[19:40:16] <valexey > а совсем не кошерная - на регулярных выражениях
[19:41:28] <valexey > и вот последних то как раз больше всего
[19:42:16] <egp> дурное дело нехитрое
[19:49:12] <Сергей Зорин> блин, кобол есть а модулы нет
[19:49:19] <egp> =)
[19:49:35] <egp> а я ребол люблю
[19:49:39] <egp> за лаконизм
[19:49:54] <egp> и за простоту
[19:51:38] <egp> среди реболистов даже оберонщеги попадаются
[19:53:33] <egp> в реболе есть принцип PITS=Programming In The Small
[19:53:47] <egp> типа всё уменьшать
[19:53:54] <Сергей Зорин> аа, есть модула-2, 3, оберон2
[19:54:46] <egp> скажем простой адресбук на реболе - это 700 байт, а на java я его портировал - вышло 170 kb .jar
[19:56:38] <egp> это жар с классами. А сырцы ещё больше. А у ребола всё вместе непожатое = 700 bytes
[20:00:10] <valexey > я сомневаюсь что на жабе у тебя был простой адрессбук
[20:03:22] <valexey > а вот это очень перспективно: http://www.opennet.ru/opennews/art.shtml?num=35907
[20:03:51] <egp> valexey : Это была точная копия реболового rebodex адресбука
[20:03:56] <valexey > Особенно третий абзац
[20:04:04] <valexey > Portable Native Client <http://src.chromium.org/viewvc/native_client/data/site/pnacl.pdf>
[20:07:31] <egp> да, ласково
[20:08:20] <egp> гугль прорубил окно в винду =)
[20:08:39] <egp> и не одно, а МНОГО ОКОН =)
[20:09:55] <egp> valexey : собсно мой адресбук лежит на sf.net abproject
[20:10:08] <egp> https://sf.net/projects/abproject
[20:16:18] <egp> спати...
[20:50:55] <valexey > Заголовок новости:
Intel работает над улучшением коммуникативных способностей Стивена Хокинга

Комментарии:
ЗлойЮрий: Великий человек! Дай бог ему еще жизни, он один стоит миллиона человек
censored: в бога он как раз таки и не верит, поэтому и обращается не в церковь а к интел и правильно делает
[20:57:27] <valexey > "Меня трудно получить, легко потерять, и невозможно использовать.. © Диплом"
[20:57:39] <TRUE> [14:25:35] <Сергей Зорин> а «правильный» цд это вообще оверхэд
[20:58:59] <TRUE> правильный цд - это наоборот - отсутствие оверхеда. Если кто-то написал цд, а кто-то другой его переписал на одноветочных циклах с меньшим оверхедом, то цд нужен не был.
[21:07:10] <valexey > гг
[21:07:34] <valexey > с тем же успехом можно сказать что Исключения в языке - это тоже как раз отсутствие оверхеда
[21:08:42] <valexey > А также метод полного перебора в алгоритмике (сложность O(n!) ) - тоже не оверхед. :-)
[21:09:40] <TRUE> или по-другому: формальное преобразование рещение задачи с одноветочного на многоветочный не делает задачу пригодной для решения на многоветочном цикле.
[21:09:53] <TRUE> решения*
[21:10:15] <valexey > только вот наличие ЦД в языке провоцирует писать в таком стиле
[21:10:41] <TRUE> про исключения и перебор - не в тему.
[21:10:48] <TRUE> провоцирует? возможно
[21:10:58] <valexey > что это? вполне в тему. логика ровно та же самая
[21:11:12] <TRUE> не та же.
[21:11:19] <valexey > если ты задачу решаемую за O(n) решаешь полным перебором, это не значит что её надо так решать
[21:11:41] <valexey > то есть это не делает задачу эту пригодной для решения полным перебором
[21:12:05] <TRUE> если задача O(n), то по-другому её не решить.
[21:12:20] <valexey > решение может быть О(n)
[21:12:29] <valexey > но любой O(n) можно решить за O(n!)
[21:13:42] <valexey > спорим я напишу сортировку за O(n!)? ;-)
[21:13:43] <TRUE> я хотел сказать, что если задача для O(n!), то и решение O(n!).
[21:14:09] <valexey > сортировка это задача для какого "O"? ;-)
[21:14:13] <TRUE> и не получится лучше
[21:15:29] <valexey > ну, для начала, когда начинаешь решать задачу, то обычно не знаешь какая там сложность.
[21:15:52] <valexey > во-вторых в ряде случаев например O(n) работает быстрее чем O(1)
[21:17:19] <TRUE> про исключения и перебор - не в тему. Логика не та же.
[21:18:02] <valexey > а по моему, та же.  по крайней мере та которую ты огласил. возможно ты огласил не полную мысль которую держишь в голове.
[21:18:35] <TRUE> я огласил мысль про правильную конструкцию
[21:18:40] <TRUE> у неё нет оверхеда
[21:18:53] <TRUE> то есть, не так
[21:19:05] <TRUE> оверхед у правильной меньше, чем у неправильной
[21:19:18] <TRUE> потому-то она и правильная : )
[21:20:02] <TRUE> правда, правильность - это вещь не всегда объективная, вроде.
[21:20:09] <TRUE> зависит от цели.
[21:20:10] <valexey > ну да. поэтому исключения - правильный механизм и конструкция
[21:20:22] <valexey > потому что в ряде случаев это работает быстрее чем коды возврата
[21:20:48] <TRUE> но в моём мире правильный многоветочный цикл имеет меньший оверхед его заменителей.
[21:21:24] <TRUE> я не говорил, что многоветочный цикл - это правильный механизм
[21:21:32] <valexey > у-у… не, такую дискуссию я пожалуй не выдержу. если мы не про единый мир говорим, а если у каждого какой-то свой
[21:21:40] <TRUE> то же и про исключения
[21:21:41] <valexey > все. нафик.  я домой :-)
[21:24:18] <TRUE> многоветочные циклы не должны стоять где попало. Преобразование строки в число не должно порождать исключение.
[22:56:16] <_valexey_> TRUE: а почему, собственно, нет?
[22:56:33] <_valexey_> на счет исключения
[23:00:42] <_valexey_> мне, вообще говоря, кажется что в зависимости от специфики задачи может быть выгодна та или иная стратегия.
[23:03:39] <_valexey_> Вот С++ позволяет в зависимости от задачи выбирать ту или иную стратегию (собственно выбор есть даже в рамках стандартной библиотеки), а Оберон? ;-)
[23:21:21] <rbmk> не, я, конечно, всё понимаю, но это чё?
[23:19:21] *** bems установил(а) тему:
...
• Еще полезная ссылка http://www.hasbro.com/mylittlepony/ru_RU/
[23:21:27] <rbmk> :-D
[23:24:42] <TRUE> исключительная ситуация - это событие, которое не является частью модели алгоритма, но влияет на его результат.
[23:26:58] <TRUE> [21:59:28] <_valexey_> мне, вообще говоря, кажется что в зависимости от специфики задачи может быть выгодна та или иная стратегия.
[23:27:06] <TRUE> это называется прагматизм.
[23:27:42] <TRUE> делать то, что тебе выгодно
[23:28:04] <_valexey_> rbmk: хез :-)
[23:29:25] <_valexey_> TRUE: ну да. в ряде задач мы ожидаем что строка всегда будет валидной. то есть всегда-всегда-всегда. поэтому в этом случае, если вдруг строка не может сконвертиться в число, должно быть исключение (например у нас текстовый протокол между нашими двумя приложениями)
[23:30:10] <_valexey_> А бывают задачи, когда 50 на 50 - прилететь может что угодно (например это пользователь вводит число с клавиатуры), и там нам исключение будет как ни пришей кобыле хвост.
[23:31:00] <_valexey_> Причем оно так получается и по логике построения программы (в плане логичности) и из соображений быстродействия.
[23:32:16] <TRUE> Где-то когда-то прочёл цитату (вроде, принадлежащую Бертрану Расселу) . О прагматиках. "Если у обычного человека спросить пил ли он утром чай, то он начнёт вспоминать. Если то же самое спросить у прагматика, то он попросит время, которое потратит на два мысленных эксперимента. В одном эксперименте он убедит себя в том, что пил чай, а в другом - что не пил. Затем взвесит результаты и выберет тот, который сулит ему большую выгоду." Примерно так.
[23:32:24] <TRUE> это если в терминальной стадии.
[23:34:02] <_valexey_> например меня не устраивает ситуация с обработкой ошибок в Go. Если все аккуратно обрабатывать, то 80 процентов кода состоит чисто из обработки ошибок. Ужас же.
[23:34:04] <TRUE> [22:28:11] <_valexey_> ну да. в ряде задач мы ожидаем что
[23:34:20] <_valexey_> Причем тех ошибок, которые ну очень редко встречаются, и реакция на которые одинакова.
[23:34:37] <TRUE> это абстрактный пример или сможешь вспомнить какие-нибудь частности про этот случай из своего проекта?
[23:35:01] <_valexey_> Про Go?
[23:35:20] <TRUE> не важно. Важен текстовый протокол общения и преобразование в число
[23:36:00] <_valexey_> Да легко. json
[23:36:26] <_valexey_> Пишем мы парсер json'a скажем.
[23:36:27] <TRUE> какое там ождалось число? Диапазон
[23:36:40] <_valexey_> Диапазон там, сколь я помню, не задан.
[23:36:45] <_valexey_> в стандарте json
[23:36:48] <_valexey_> а
[23:37:29] <TRUE> допустим, [0..8]. И как в этом случае поможет исключение?
[23:37:32] <_valexey_> Ну, или еще вот вариант когда я ожидаю что все строковое может быть преобразовано в число: чтение данных полученных с нашего датчика
[23:37:55] <_valexey_> Оно пишется в одну колонку. 100 строк в секунду
[23:37:58] <_valexey_> Целые числа
[23:38:05] <_valexey_> диапазон от 0 до 2^16
[23:38:07] <_valexey_> -1
[23:38:12] <_valexey_> Ну, ты понял
[23:38:13] <TRUE> датчик - это да. Оттуда сигнал может не прийти. Это явное исключение на уровне обработки данных.
[23:38:34] <_valexey_> Да нет. Данные уже записаны в файл размером скажем мегабайт в 60
[23:38:44] <_valexey_> А потом я приложением его гоняю, этот файл.
[23:39:01] <_valexey_> То есть засасывают оттуда данные и давай алгоритмами крутить
[23:39:27] <_valexey_> Так вот, очевидно, что если в файле встретится хоть одна буква - это исключительная ситуация
[23:39:27] <TRUE> В общем, я своё определение исключения дал. Большинство исключений, появляющихся в программах - это баги.
[23:40:28] <TRUE> и если программист считает, что баг - это круто, так и должно быть, то меня это печалит
[23:40:47] <_valexey_> эээ... давай все же на примерах разбирать.
[23:41:54] <TRUE> в случае же с числом - у нас есть вся необходимая информация, чтобы разобрать его правильно. Или сообщить об ошибке. Нет там исключений. Правда, многие считают правильмным сообщать об ошибке разбора как об исключении. Я это считаю неправильным.
[23:43:18] <_valexey_> А я считаю что в описанной ситуации это исключительная ситуация. Работа с кодами возврата - это оверхед в данном случае будет. И по производительности и в плане замусоренности кода приложения.
[23:54:47] <_valexey_> Да, и еще раз - исключение вызывает не железка какая-то там, а сам программист (программист библиотеки). То есть он обрабатывает ситуацию (например что в числе встретилась буква) и делает throw. Где тут ошибка?