MS VPN
Title: Сообщение Здравствуйте! Имеет место быть следующая ситуация: есть удалённый офис, есть центральный офис. Работает MS VPN между двумя W2k-серверами. В качестве маршрутизатора центрального офиса ставим Linux (Woodo), начинаем переводить всё это под него. На данном этапе мне требуется пропустить через NAT это VPN-соединение. Какие порты я должен 'отработать'? Есть ли готовая конфигурация для iptables? Буду премного благодарен. == С уважением, Денис Зуев Компания АСК, Екатеринбург т. (3432) 71-44-44 ICQ#: 35177372
Re: Вопрос к знатокам про базы данных под Linux
Hi Alexander, * Alexander S. Gordienko <[EMAIL PROTECTED]> [2003-01-09 22:52]: > >Interbase(Firebird), но и к чему-нибудь посерьезнее MSSQL2000 или > >Oracle8 > > А задача сильно масштабируемая? > Просто практика показывает, что на тех задачах, которые попадают в такой > диапазон серверов (по их мощьности) сделать универсальный инструмент > весьма трудно. К тому же учти, что перечисленные тобой сервера занимают > совешенно разные ниши и имеют сильно отличающуюся внутреннюю архитектуру, > а это значит, что инструмент должен учитывать сильные и слабые стороны > каждого сервера (мы ведь о хорошем инструменте говорим), что крайне не > просто. Может не заморачиваться лишний раз и выбрать только один из них? Мой опыт говорит, что заказчик всегда прав :) И нихрена не получиться всучить свой поделие (если это конечно не SAP :) если для него понадобиться ставить новый/другой сервер БД. К тому же иногда полезно иметь возможность снизить для заказчика первоначальные затраты путем использования бесплатного IB, а уж когда он подсядет, можно его и на Oracle посадить. Т.е. может быть основной вариант для Oracle и 'работающий' - для IB. Также если учитывать, что почти все охфисы сидят на винде и юзают 1C, то велика вероятность наличия NTServer-а и SQLServer-а > > 4. нужна прикручиваемость драйвера к с++ или C# > > > > Из того, что я посмотрел, но активно сам не использовал я знаю такие > > штуки: > > 1. SQLAPI - страшо как-то использовать. > > да в общем-то вполне реально Автор свалил в штаты. Так что максимум что будет - чистка багов. См. периодичность выпуска версий в последнее время. Но в общем там можно взять сорцы. > > 2. Qt - версия 2.3.2 не содержит способов доступа к базам > >данных (или я не прав?) Версия 3.0. пока не доступна (можно только > >купить ~1500$, однако :-(, для средних масштабов организации это > > многовато). > > а сравни со стоимостью MSSQL2000 or Oracle8 :-) QT 3.0.5 как мне показалось сильно тормозил при работе с MSSQL, и скорее всего в местах, связанных не с серверным API, а с обвязкой вокруг. -- Best regards, Sergey Chumakov 2:450/77[.43]
Re: VPN by ICMP
> Vladislav writes: Vladislav> Никакого недоразумения нет, кроме возможно не совсем Vladislav> правильного термина VPN. Многие провайдеры ICMP пакеты не Vladislav> считают за трафик. Я слышал о возможности сделать туннель Vladislav> через ICMP протокол, тогда клиент ничего не платит Vladislav> провайдеру, подключаясь к корпоративному серваку из дома, Vladislav> поскольку это ICMP пакеты. А корпоративный интернет Vladislav> оплачивается по ширине канала. Как говорится и волки сыты Vladislav> и овцы целы :))) Так может тогда freeswan. Он вроде вообще с голым IP работает. -- Sergey Suleymanov
Re: VPN by ICMP
Здравствуйте, On Thu, Jan 09, 2003 at 07:22:40PM +0200, Andrei Sosnin wrote: > > > >Никакого недоразумения нет, кроме возможно не совсем правильного термина > >VPN. Многие провайдеры ICMP пакеты не считают за трафик. Я слышал о > >возможности сделать туннель через ICMP протокол, тогда клиент ничего не > >платит провайдеру, подключаясь к корпоративному серваку из дома, поскольку > >это ICMP пакеты. А корпоративный интернет оплачивается по ширине канала. > >Как говорится и волки сыты и овцы целы :))) > > > >Оговорюсь, домашний интернет не по диалапу. > > > > И корпоративный сервак - это специально настроенный для всего этого > сервер. Иначе, если он не знает о существовании скрытого трафика в ICMP, > он не сможет служить "декодирующим" нодом в этом трафике (если, конечно, > цель тоже ничего о этом не знает, например, обычный веб-сервер). Если же > это настоящий туннель между двумя компьютерами - то тут все понятно, > просто принимающий компьютер должен знать о существовании туннеля. > > Правда, интересно узнать о технических возможностях ICMP-туннелей. Ведь, > я уверен, слишком большое количество пакетов ICMP от одного и того же > компа не останется хоть где-нибудь незамеченным. Кроме того, сама идея > этого протокола подразумевает, если не ошибаюсь, маленький размер > пакетов (порядка 1024 байт). Я слышал, что многие провайдеры блокируют > пакеты ICMP большего (или просто большого) размера... http://void.ru/content/1035 -- Elena Egorova
Re: xcdroast
On Thu, Jan 09, 2003 at 09:03:32PM +0200, Maxim V. Kryzhny wrote: > привет, Кратко: пустить в окне xterm'а на той машине следущее: xhost +localhost Без этого программам другого пользователя запрещено рисовать на дисплее. > подскажите пож, что поправить, если при запуске только что > установленного xcdroast получаем сообщение типа: > > > [EMAIL PROTECTED] root]# xcdroast > Xlib: connection to ":0.0" refused by server > Xlib: No protocol specified > > Gtk-WARNING **: cannot open display: :0.0 > > команда выполнялась в xterm`овском окне, с правами root... > Хсервер и соотв wm запущены из-под обычного пользователя... > версия xcdroast 0.98a9-9 в терминологии rh... > > заранее благодарен, > -- > MKV frm MyHome _mailto:[EMAIL PROTECTED] > > > -- > To UNSUBSCRIBE, email to [EMAIL PROTECTED] > with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED] -- Best regards, -Vlad
Re: cdrecord
On Thu, Jan 09, 2003 at 09:40:25PM +0200, Maxim V. Kryzhny wrote: > привет, > > мне необходимо записать audio CD со следующих файлов: > > [EMAIL PROTECTED] au]# ll > total 210140 > -rw-r--r-- 1 root root 455694 Jan 9 19:20 DW_A0126.wav > -rw-r--r-- 1 root root 34691982 Jan 9 19:22 DW_A0127.wav > -rw-r--r-- 1 root root 21698790 Jan 9 19:26 DW_A0128.wav > -rw-r--r-- 1 root root 84256494 Jan 9 19:29 DW_A0129.wav > -rw-r--r-- 1 root root 73826994 Jan 9 19:33 DW_A0130.wav > в формате РСМ 44.1 kHz 16bit stereo... > > согласно CD-Writing HOWTO v2.9.3 от 23/7/0 в > переводе Дзюманенко от 2/6/1: "...Теперь, если Ваши файлы имеют > расширение .wav или .au (и формат стерео 16 бит 44.1 кГц), Вы можете > использовать их как образы без ручного преобразования в CDR-формат. > Однако cdrecord требует, чтобы размер звуковых данных было целое, > умноженное на 2352 и не более чем 705,600 байт, что не так для некоторых > WAV файлов. В таких файлах, используя sox, нужно дополнить аудио данные > до 2352 байт.." По-моему в HOWTO - ошибка. Во-первых, вместо 705,600 байт наверно должно быть 705,600 КБайт (а то что это за размер .wav файла такой - 700 кило! - это 5 секунд звука). Но и эта цифра 705,600 КБайт - тоже не к тому относится - а относится к недополненным данным. Неделю назад драл купленный audio CD, получил дополненные правильным образом .wav'ы, и их суммарный размер был 831 метр. > я не совсем, вернее совсем не понял насчет размеров файлов... надо ли > этот текст понимать так, что размер файла не должен превышать 700 кв и > мои фалы не могут быть записаны на СД в формате аудио?! > и что означают требования кратности? > > заранее благодарен за ответ, > --- > MKV frm MyHome _mailto:[EMAIL PROTECTED] > > > -- > To UNSUBSCRIBE, email to [EMAIL PROTECTED] > with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED] -- Best regards, -Vlad
Re: MS VPN
Hello Зуев Денис Александрович, Once you wrote about "MS VPN": > Здравствуйте! > > Имеет место быть следующая ситуация: есть удалённый офис, есть центральный > офис. Работает MS VPN между двумя W2k-серверами. В качестве маршрутизатора > центрального офиса ставим Linux (Woodo), начинаем переводить всё это под него. > > На данном этапе мне требуется пропустить через NAT это VPN-соединение. Какие > порты я должен 'отработать'? Есть ли готовая конфигурация для iptables? > > Буду премного благодарен. протокол tcp - port 1723 протокол 47 - весь #pptp iptables -A block -p tcp -m state --state NEW --dport 1723 -i $INET_INT -j ACCEPT iptables -A block -p 47 -m state --state NEW -i $INET_INT -j ACCEPT -- Any statement is incorrect.
Re: PPP
Привет, коллеги. On Fri, Jan 10, 2003 at 01:57:28AM +0300, Sergey A. Sholokhov wrote: >test -n "$(pidof pppd)" || test -z "$(mailq)" || { >pon ... > Странно похоже что default value is 10 не правилно у меня 1 по > ходу поскольку при неудаче он сразу прекращает попытки. Проверь, что действительно pppd бросил попытки и pidof pppd пуст. Этот pppd некоторое время выжидает а потом опять долбит. Скрипт как раз это проверяет. > в итоге в > pon ... > while test -z "$(/sbin/ifconfig|grep ^ppp)" > -етом месте происходит зависание > а cron то не спит он еще запускает процесс в > итоге што при ppp произойдет одновременный запуск > fetchmail'ов? cron новый pppd не запускает пока не ушёл предыдущий. Помниться, fetchmail сам выставляет lock, так что про него можно не беспокоиться. > WBR, Sergey A. Sholokhov. > ... Powered by GNU/Linux > * HUN7ER | mail: [EMAIL PROTECTED] | icq : 72994428 Auf Wiederlesenophil aka Д-р Антикоммуний -- Oleg P. Philon http://gomelug.agava.ru/articles Linux Lab, Gomel, Belarus mailto:[EMAIL PROTECTED] http://anticommunist.narod.ru mailto:[EMAIL PROTECTED]
Re: kylix 2
On 2003.01.09 at 21:26:58 +0200, Andrei Sosnin wrote: > > Теперь уж окончательно ясно... А как же насчет примеров истинно > функциональных языков? Какие языки следуют именно такой жесткой логике? Берем для начала только те, что есть в дистрибутиве haskell - у него есть интерпретатор hugs и компилятор ghc5 Есть еще пакет haskell-doc в котором содержится описание языка с большим количеством внятно изложенной теории функционального программирования. ocaml - отличается тем, что по числу входящих в дистрибутив библиотек сравним с распространенными скриптовыми языками вроде Python и Ruby. Начинать опять же с ocaml-doc erlang - функциональный язык, разработанный практиками и для практических задач. На нем работают, например, сотовые коммутаторы. Отличается наличием очень интересных концепций параллельного и распределенного программирования, а также наличием системы апгрейда работающей программы без ее остановки. К сожалению, основополагающей книжки по Erlang в дистрибутиве нет. За ней придется лезть на www.erlang.org. Равно как и за подробной документацией на всякие интересные модули типа httpd. mozart - почти ничего про него не знаю. Внимательно не смотрел. Ну и естественно, многобразные Scheme и Lisp-ы. Они не совсем чистые функциональные языки, в них возможно написание функций с побочными эффектами. Но основной стиль программирования там функциональный. > Угадываю, что они, скорее всего, весьма сильно специализированы под > определенные задачи... Хотя, понимаю, что это необязательно... Нет, ни разу. -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
Re: RE: kylix 2
On 2003.01.09 at 11:50:07 -0800, Fedor Karpelevitch wrote: > > из известных мне - haskel > > практического опыта со строго функциональными языками я (пока) не имею. Идея > на мой взгляд очень красивая, но, на сколько я понимаю, проблемы начинаются > когда из такой программы надо обшаться с внешним миром (IO, UI и тп). Тут > вроде на настояший момент нет решения которое было бы одновременно > элегантно, функционально (в широком смысле) и удобно в употреблении... Таких решений существует более одного - монады в haskell, порты в erlang, как это сделано в ocaml сходу не скажу, я его еще не особенно изучал, но явно есть. -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
Re: kylix 2
Evening, Andrei. Andrei Sosnin <[EMAIL PROTECTED]> 22:29 9/1/2003 wrote: >> Нет. В С нельзя создать и вернуть функцию как результат. Пример: >> makeAdder x = map (+x) >> makeAdder имеет тип: >> forall a. (Num a) => a -> ([a] -> [a]) [skip] >> другой пример: >> overloadFunctionAtSpecificPoint function point value = >> (\x -> if x == point then value else function(point)) >> Ее тип: >> forall t a. (Eq a) => (a -> t) -> a -> t -> (a -> t) [skip] >> В c/c++ так сделать нельзя. AS> То есть, другими словами, Haskel позволяет перегружать функции таким AS> вот странным (для человека, ранее кроме как с С, С++, Паскаль, Питон и AS> пр. ни с чем больше не встречавшегося) образом. Сложно для понимания, AS> по крайней мере сначала. Нет. Идея тут не в том, что можно перегружать функции (просто у меня пример такой получился). Идея в том, что можно создать и вернуть объект типа "функция". AS> Аналогичный код на С: Нет. Совсем не аналогичный. Мы же не говорим о решении конкретной задачи, а о демонстрации определенных принципов. AS> #include AS> #define POINT_V 64 AS> #define VALUE_V 129 AS> int function(int x, int (*what_to_do)(int pnt), int point, int value); AS> int function2(int x); Вопросы: 1)Что надо сделать, чтобы решение работало для произвольных функций a -> b, а не только для функций int -> int? При этом, решение должно быть type safe. AS> int main(int argc, char argv[]){ AS> printf("function2 does: VALUE_V + 365; VALUE is: 129\n"); AS> printf("Function returned on x == POINT_V: %i\n", AS> function(POINT_V, &function2, POINT_V, VALUE_V)); AS> printf("Function returned on x != POINT_V: %i\n", AS> function(POINT_V+34, &function2, POINT_V, VALUE_V)); 2)В моем примере, overloadFunctionAtSpecificPoint возвращает объект типа "функция", который затем можно использовать везде, где можно использовать обычную функцию. Как сделать такое в С? Чтобы было что-то вроде: new_function = function(&function2, POINT_V, VALUE_V)); printf("It works: %d!\n", new_function(5)); AS> return 0; AS> } [skip] AS> Разницу я только вижу в гибкости кода и его просте. Думаю, на AS> ассемблере это выглядело бы еще сложнее... ;-) Как следует из пока что не опровергнутого тезиса Черча, ассемблер, С, Haskell и все остальные языки програмирования одинаковы в смысле мощности множества задач, которые можно решить с их помощью. Но не одинаковы с точки зрения читаемости и сопровождаемости кода и времени, требуемого на его написания. И простота кода in the long run становится чуть ли не решающим фактором. AS> Но этот код говорит о том, что все же совсем необязательно функции AS> возвращать другую функцию. Можно вернуть ее возращаемое значение. AS> Но очевидно, однако, что Haskel позволяет значительно упростить код, AS> что иногда весьма полезно. Понимание того, как важна простота и читаемость кода приходит обычно в процессе работы с legacy кодом на >10 строк на С >> AS> Кстати, не свзяано ли это с понятием "чисто функции" (pure >> function)? AS> (Чтобы тут потом тоже не придумывать несуществующие >> связи) >> pure abstract method из C++? Нет, совсем не связано. AS> Нет, именно "pure function". Объясняется как "функция, вычисляющая AS> свое значение исключительно на основе данных аргументов", то есть Тогда уже "чистая функция" или "функция, свободная от побочных эффектов". AS> гарантирующая один и тот же ответ при одних и тех же значениях AS> аргументов при выполнении в разное время. Прочитал в одном из AS> глоссариев (нашел в Гугле), там же где и про императивное и AS> функциональное программирование. Да, в таком трактовании - имеет самое непосредственное отношение. -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
Re: kylix 2
Evening, Victor. Victor Wagner <[EMAIL PROTECTED]> 12:09 10/1/2003 wrote: >> Теперь уж окончательно ясно... А как же насчет примеров истинно >> функциональных языков? Какие языки следуют именно такой жесткой логике? VW> Берем для начала только те, что есть в дистрибутиве VW> haskell - у него есть интерпретатор hugs и компилятор ghc5 VW>Есть еще пакет haskell-doc в котором содержится описание языка с VW>большим количеством внятно изложенной теории функционального VW>программирования. ... и интерпретатор ghci (из комплекта ghc5), и компилятор nhc. VW> ocaml - отличается тем, что по числу входящих в дистрибутив библиотек VW>сравним с распространенными скриптовыми языками вроде Python и Ruby. VW>Начинать опять же с ocaml-doc ОCaml - это не pure functional язык, функции в нем могут иметь побочные эффекты. VW> erlang - функциональный язык, разработанный практиками и для VW>практических задач. На нем работают, например, сотовые коммутаторы. ... компании Ericsson, в недрах которой этот язык и родился. VW>Отличается наличием очень интересных концепций VW>параллельного и распределенного программирования, ... впрочем, этим интересны и ocaml и haskell. Особенно своим решением проблем параллельного программирования. VW> а также наличием системы апгрейда работающей программы без ее остановки. ... а также наличием динамической типизации, наличием виртуальной машины для исполнения целевого кода, встроеной в вирт. машину распределенной объектной базой данных. VW>К сожалению, основополагающей книжки по Erlang в дистрибутиве нет. VW>За ней придется лезть на www.erlang.org. Равно как и за подробной VW>документацией на всякие интересные модули типа httpd. VW> mozart - почти ничего про него не знаю. Внимательно не смотрел. Гибридный functional/imperative/event driven/constraint based язык. Очень интересный, хорошо подходящий для обучения и особенно для демонстрации того, как следует (или не следует) смешивать стили. Не компилируемый, практически отсутствуют наработанные библиотеки для решения прикладных задач. VW> Ну и естественно, многобразные Scheme и Lisp-ы. Они не совсем чистые VW> функциональные языки, в них возможно написание функций с побочными VW> эффектами. Но основной стиль программирования там функциональный. ... а уж библиотек для них >> Угадываю, что они, скорее всего, весьма сильно специализированы под >> определенные задачи... Хотя, понимаю, что это необязательно... VW> Нет, ни разу. -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
Re: xcdroast
В сообщении от 10 Январь 2003 08:42 Andrei Sosnin написал: > > за конкретную ошибку не скажу, но имейте в виду: xcdroast из-под > > root'а работать не будет в любом случае. > > Почему не будет? В РХ 8.0 он у меня, например, больше никак и не > работал... :-( Лучше, ИМХО, дать права на запись CD своему пользователю... [EMAIL PROTECTED]:~$ ls -la /dev/cdrom lrwxrwxrwx1 root root4 îÏÑ 20 14:37 /dev/cdrom -> scd0 [EMAIL PROTECTED]:~$ ls -la /dev/scd0 brw-rw1 root cdrw 11, 0 îÏÑ 21 20:50 /dev/scd0 [EMAIL PROTECTED]:~$ groups users www cdrw
Re: kylix 2
Evening, Victor. Victor Wagner <[EMAIL PROTECTED]> 12:14 10/1/2003 wrote: >> вроде на настояший момент нет решения которое было бы одновременно >> элегантно, функционально (в широком смысле) и удобно в употреблении... VW> Таких решений существует более одного - монады в haskell, VW> порты в erlang, как это сделано в ocaml сходу не скажу, я его еще не VW> особенно изучал, но явно есть. В OCaml функции могут иметь побочные эффекты, поэтому аналогов монад и портов там нет. -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
Re: kylix 2
Evening, Fedor. Fedor Karpelevitch <[EMAIL PROTECTED]> 11:50 9/1/2003 wrote: FK> из известных мне - haskel FK> практического опыта со строго функциональными языками я (пока) не имею. Идея FK> на мой взгляд очень красивая, но, на сколько я понимаю, проблемы начинаются FK> когда из такой программы надо обшаться с внешним миром (IO, UI и тп). Тут FK> вроде на настояший момент нет решения которое было бы одновременно FK> элегантно, функционально (в широком смысле) и удобно в употреблении... Решения есть. monads в Haskell, uniqueness types в Clean, ports в Erlang. -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
VFS
может кто подскажет что я не так делаю, а то уже третий день бьюсь: скомпилировал ядро поставил... перезагружаюсь... Kernel panic: VFS: unable to mount root fs on /dev/hda6 03:06 ну если не так, то смысл тот же. в чем дело я никак понять не могу... спасибо заранее
Re: xcdroast
Maxim V. Kryzhny пишет: привет, подскажите пож, что поправить, если при запуске только что установленного xcdroast получаем сообщение типа: [EMAIL PROTECTED] root]# xcdroast Xlib: connection to ":0.0" refused by server Xlib: No protocol specified Gtk-WARNING **: cannot open display: :0.0 команда выполнялась в xterm`овском окне, с правами root... Хсервер и соотв wm запущены из-под обычного пользователя... версия xcdroast 0.98a9-9 в терминологии rh... man xauth читать весь, потом еще раз например про переменную XAUTHORITY -- With Best Wishes Max
Re: VFS
В сообщении от 10 Январь 2003 14:17 Igor B. написал: > может кто подскажет что я не так делаю, а то уже третий день бьюсь: > скомпилировал ядро поставил... перезагружаюсь... > > Kernel panic: VFS: unable to mount root fs on /dev/hda6 03:06 > > ну если не так, то смысл тот же. > в чем дело я никак понять не могу... > > спасибо заранее Варианты 1) root partition на FS, подержка которой не встроена в ядро. 2) партишены нарезаны типом, подержка которого не встроена в ядро (напр, BSD slice)
Re: С для паскальщика
On Fri, Jan 10, 2003 at 03:34:38AM +0200, Michael Shigorin wrote: > > должна иметь мало отношения, но тем не менее для C она наиболее > > adequate :) > > Мало того, проникнута раскаянием :-) Ты невнимательно читал :) Там программы на C везде получаются короче и быстрее, чем на C++, Java или Perl, о чем убедительно свидетельствуют приведенные там же timings ;) -- Regards, Wartan. "Computers are not intelligent. They only think they are."
Re: from sid to woody(testing)
В сообщении от 10 Январь 2003 06:59 Serge Matveev написал: > On Fri, 10 Jan 2003 03:21:03 +0200 Jan Solovjov wrote: > > JS> инетересен следующий вопрос: можно ли откатиться с sid (unstable) > JS> обратно на woody (stable) или sarg (testing). Возможно ли это > JS> вообще? если да, то как? или что на эту тему читать? Если кто-то > JS> такое делал, то поделитесь впечатлениями.. > > JS> Честно говоря я сомневаюсь в возможности такого отката... но чем черт > не JS> шутит :) http://debianplanet.org/node.php?id=880 > Я откатывался на testing. > > В общем, я снёс всё не особо нужное, после чего _переставил_ все из > testing (apt-get install --reinstall {qqq,ttt,zzz}/testing} > > После этого снёс то, чего нет в testing. > > Проделано на двух машинах. Живёт пока. Я не смог откатиться с testing на stable по причине проблемы с dpkg: error processing libc6_2.2.5-6_i386.deb (--install): trying to overwrite `/lib/libdb1-2.2.5.so', which is also in package libdb1-compat dpkg-deb: subprocess paste killed by signal (Broken pipe) Errors were encountered while processing: libc6_2.2.5-6_i386.deb
Re: С для паскальщика
От Thu, 9 Jan 2003 18:47:16 +0300 Вы писали: > On 2003.01.09 at 16:48:13 +0200, Vladislav wrote: > > > > В книжных магазинах вроде ее сейчас полно - недавно на русском > > > переиздавалась. > > Это все здорово, но каково практическое применение Паскаля в Linuxe? > > Практическое применение - читать умные книжки по алгоритмам, Вирта к > примеру и понимать что там в примерах написано. Т.е. никакого, с таким же успехом, или даже предпочтительнее, можно читать книги Д.Кнута и множества других авторов не имеющих никакого отношения к Паскалю. :) > Вот у наследников Паскаля - Модулы-2/3, Oberon etc - применение есть. > Правда, их несколько ограничивают проблемы с переносимостью > компиляторов. Спасибо всем ответившим, вопрос закрыт. -- С уважением Владислав Debian 3.0 Kernel 2.4.18 Аквариум и БГ - Черный Брахман
Re: from sid to woody(testing)
Jan Solovjov wrote: Привет! инетересен следующий вопрос: можно ли откатиться с sid (unstable) обратно на woody (stable) или sarg (testing). Возможно ли это вообще? если да, то как? или что на эту тему читать? Если кто-то такое делал, то поделитесь впечатлениями.. Честно говоря я сомневаюсь в возможности такого отката... но чем черт не шутит :) Я откатывался с unstable до stable. Достаточно было файла: /etc/apt/preferences Package: * Pin: release v=3.0* Pin-Priority: 1001 И исправлений в sources.list Все прошло относительно гладко. Были только проблемы с libc. Ядро у меня было не дистрибутивное, а также не были установлены пакеты, отсутсвующие в stable.
Re: kylix 2
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Thu Jan 09, 2003 at 16:12:16 +0200, Dmitry Astapov wrote: DD>> что есть map, fold и tail-recursive оптимизация? DA> Функции такого вида (я, да простят меня, решил демонстрировать на примерах...): спасибо, разобрался, вот если бы еще примеры были не на непонятном (пока) Haskel а на Питоне, было бы проще разбираться :) - -- Denis if(sysop != here) crash(system); -BEGIN PGP SIGNATURE- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE+Hreu+zH7vYeuVKsRAt0SAJ9sf1xqNfL9s/cjq7N2i0FhKVE2PQCdF/Ij G7wcSL9kPQaebjWmcSZsb8E= =7jiT -END PGP SIGNATURE-
Re: С для паскальщика
On 2003.01.10 at 07:21:32 +0200, Vladislav wrote: > От Thu, 9 Jan 2003 18:47:16 +0300 > > > Это все здорово, но каково практическое применение Паскаля в Linuxe? > > > > Практическое применение - читать умные книжки по алгоритмам, Вирта к > > примеру и понимать что там в примерах написано. > Т.е. никакого, с таким же успехом, или даже предпочтительнее, можно читать > книги Д.Кнута и множества других авторов не имеющих никакого отношения к > Паскалю. :) Весьма не нулевое. Потому что надо читать книжки и тех, и других авторов. Кстати, Кнут имеет самое непосредственное отношение к Паскалю. Он на нем, вернее на его literate диалекте под названием web, TeX написал. Потом, правда, по его собственным словам, перебрался на CWeb. -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
Re: xcdroast
Andrei Sosnin <[EMAIL PROTECTED]> writes: > Michael Livshin wrote: > >> за конкретную ошибку не скажу, но имейте в виду: xcdroast из-под >> root'а работать не будет в любом случае. >> > > Почему не будет? В РХ 8.0 он у меня, например, больше никак и не > работал... :-( потому что у него междумордие пользователя реализовано на GTK, каковой на запуск из-под root'а реагирует однозначно отрицательно. возможно, красношапочники что-то там изменили, с них станется -- мой опыт таков, каков.. кроме того, в Дебиане есть стандартная группа под названием cdrom. соответствующий файл устройства уже должен, по идее, разрешать запись членам данной группы. посему просто добавьте себя в группу cdrom (это чрезвычайно просто, надо только прописать себя в соответствующей строчке в /etc/group) и наступит щастье. -- In an experiment to determine the precise amount of beer required to enjoy this film, I passed out. -- dave o'brien, on Highlander II
Re: xcdroast
On 2003.01.10 at 14:59:38 +0200, Michael Livshin wrote: > Andrei Sosnin <[EMAIL PROTECTED]> writes: > > > Michael Livshin wrote: > > > > посему просто добавьте себя в группу cdrom (это чрезвычайно просто, > надо только прописать себя в соответствующей строчке в /etc/group) и > наступит щастье. Это еще проще - надо сказать adduser user group Например adduser vasya cdrom -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
C++
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Приветствую, Почитав недавние письма я понял что не слишком хорошо знаю C++, подскажите, можно ли в интернете достать электронную версию Bjarn Stroustrup 'C++ Programming language' 3rd edition ? Или другую книгу описывающие возможности C++ по сравнению например с Си - -- Denis IDE я нахожуся? -BEGIN PGP SIGNATURE- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE+HsSX+zH7vYeuVKsRAi+sAJ9azeKmKh8Pbxqky62TuOdrICBRaACfSPHX 8MYyRc1/lmd3igqYiXN2ZMs= =/SxG -END PGP SIGNATURE-
Re: xcdroast
On 2003.01.10 at 12:04:28 +0400, Vlad Harchev wrote: > On Thu, Jan 09, 2003 at 09:03:32PM +0200, Maxim V. Kryzhny wrote: > > привет, > > Кратко: пустить в окне xterm'а на той машине следущее: > xhost +localhost > > Без этого программам другого пользователя запрещено рисовать на дисплее. Ну неправда это, неправда. Авторизация в X-ах не имеет никакого отношения к локальным пользователям той машины, на которой выполняются X-овые клиенты. Программа либо может предоставить авторизующий токен (magic cookie), подходящий для данного дисплея, и тогда ее пускают, либо не может. Команда xhost дает доступ всем программам с определенного хоста (т.е. в качестве авторизующего токена испольуется имя хоста, на котором работает клиент), и поэтому ей пользоваться не следует. Лучше пользоваться нормальными методами авторизации - MIT-MAGIC-COOKIE и XDM-AUTHORIZATION-1 (последний используется по умолчанию). Токены эти хранятся (и читаются клиентами) из файла, на который указывает переменная XAUTHORITY (если не установлена, то из ${HOME}/.Xauthority). Можно извлечь нужный токен из этого файла командой xauth extract, и передать другому пользователю чтобы тот его включил в свой файл командой xauth merge. Тогда его пустят к твоему дисплею. Файл .Xauthority, естественно, имеет права 0600, поэтому другим пользователям и недоступен. Но если хочется запустить X-овую программу из-под рута, достаточно сказать ей XAUTHORITY=~ты/.Xauthority. Из-под рута она твой файл прочитает, и ее прекрасно пустят к дисплею. -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
Re: kylix 2
On Fri, Jan 10, 2003 at 12:41:17PM +0200, Dmitry Astapov wrote: > > Evening, Andrei. > > Andrei Sosnin <[EMAIL PROTECTED]> 22:29 9/1/2003 wrote: > > >> Нет. В С нельзя создать и вернуть функцию как результат. Пример: > >> makeAdder x = map (+x) > >> makeAdder имеет тип: > >> forall a. (Num a) => a -> ([a] -> [a]) > [skip] > > >> другой пример: > >> overloadFunctionAtSpecificPoint function point value = > >> (\x -> if x == point then value else function(point)) > >> Ее тип: > >> forall t a. (Eq a) => (a -> t) -> a -> t -> (a -> t) > [skip] > > >> В c/c++ так сделать нельзя. > > AS> То есть, другими словами, Haskel позволяет перегружать функции таким > AS> вот странным (для человека, ранее кроме как с С, С++, Паскаль, Питон и > AS> пр. ни с чем больше не встречавшегося) образом. Сложно для понимания, > AS> по крайней мере сначала. > Нет. Идея тут не в том, что можно перегружать функции (просто у меня пример > такой получился). Идея в том, что можно создать и вернуть объект типа > "функция". > > AS> Аналогичный код на С: > Нет. Совсем не аналогичный. Мы же не говорим о решении конкретной задачи, а > о демонстрации определенных принципов. > AS> #include > > AS> #define POINT_V 64 > AS> #define VALUE_V 129 > > AS> int function(int x, int (*what_to_do)(int pnt), int point, int value); > AS> int function2(int x); > > Вопросы: > 1)Что надо сделать, чтобы решение работало для произвольных функций a -> b, > а не только для функций int -> int? При этом, решение должно быть type > safe. На С++ - можно - используя шаблоны. > AS> int main(int argc, char argv[]){ > > AS> printf("function2 does: VALUE_V + 365; VALUE is: 129\n"); > AS> printf("Function returned on x == POINT_V: %i\n", > AS> function(POINT_V, &function2, POINT_V, VALUE_V)); > AS> printf("Function returned on x != POINT_V: %i\n", > AS> function(POINT_V+34, &function2, POINT_V, VALUE_V)); > > 2)В моем примере, overloadFunctionAtSpecificPoint возвращает объект типа > "функция", который затем можно использовать везде, где можно использовать > обычную функцию. Как сделать такое в С? Чтобы было что-то вроде: > new_function = function(&function2, POINT_V, VALUE_V)); > printf("It works: %d!\n", new_function(5)); Да, это можно используя свойство языка С++ - шаблоны. .. А я вот хотел спросить - как делают структуры в лиспе (разных диалектах)? Или обходятся списками, и считают элементы с определенным индексом - членами? А в Haskel/Erlang/Clean - также, или все-таки есть аналог структур С? -- Best regards, -Vlad
RE: C++
> Почитав недавние письма я понял что не слишком хорошо знаю C++, > подскажите, можно ли в интернете достать электронную версию Bjarn > Stroustrup 'C++ Programming language' 3rd edition ? Или другую книгу > описывающие возможности C++ по сравнению например с Си http://narod.yandex.ru/100.xhtml?it-books.narod.ru/C_CPP/Stroustrup_eng.rar >
Re: VFS
On Fri, Jan 10, 2003 at 02:17:44PM +0300, Igor B. wrote: > может кто подскажет что я не так делаю, а то уже третий день бьюсь: > скомпилировал ядро поставил... перезагружаюсь... > > Kernel panic: VFS: unable to mount root fs on /dev/hda6 03:06 > > ну если не так, то смысл тот же. > в чем дело я никак понять не могу... возможные причины: - нет поддержки IDE устройств (HDDs) - нет поддержки типа файловой системы которая на разделе или она скомпилирована в качестве модуля (если в качестве модуля, то нужно использовать initrd) -- /mator
Re: kylix 2
Hi! > VW> haskell - у него есть интерпретатор hugs и компилятор ghc5 > VW>Есть еще пакет haskell-doc в котором содержится описание языка с > VW>большим количеством внятно изложенной теории функционального > VW>программирования. > ... и интерпретатор ghci (из комплекта ghc5), и компилятор nhc. Месяц назад начал смотреть на Haskell. Нашел замечательныю книжку, которая мне очень помогла и в плане Хаскеля и вообще функционального подхода - Functional Programming by Jeroen Fokker, 1995. (http://www.haskell.org/bookshelf/functional-programming.dvi), но там нету самых интересных глав - про классы. Точнее, они есть, но на голландском, который я читать не умею. Подскажите, плз, что почитать? Я вроде основную идею хаскелевого подхода к типизации понял, но как-то неглубоко ;-))) Может, есть какие-нибудь книги по теории, желательно в сети? Кста, а в хаскеле можно явно сказать, что функция должна быть strict, или это уж как компайлер решит? -- Alexander Kogan AutoWave Processes Group Institute of Applied Physics RAS
Re: kylix 2
On 2003.01.10 at 18:21:07 +0400, Vlad Harchev wrote: > > А я вот хотел спросить - как делают структуры в лиспе (разных диалектах)? Разными способами. Есть например, ассоциативные списки, есть proprieties. > Или обходятся списками, и считают элементы с определенным индексом - членами? Не любят этого в высокоуровневых языках, ох не любят. Зачем считать какие-то индексы (кстати, списки сильно неудобная структура данных для доступа по индексу), если можно что-то проидентифицировать удобочитаемым атомом. > А в Haskel/Erlang/Clean - также, или все-таки есть аналог структур С? В Erlang есть по меньшей мере tuples. -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
Re: xcdroast
On Fri, Jan 10, 2003 at 04:23:36PM +0300, Victor Wagner wrote: > On 2003.01.10 at 12:04:28 +0400, Vlad Harchev wrote: > > > On Thu, Jan 09, 2003 at 09:03:32PM +0200, Maxim V. Kryzhny wrote: > > > привет, > > > > Кратко: пустить в окне xterm'а на той машине следущее: > > xhost +localhost > > > > Без этого программам другого пользователя запрещено рисовать на дисплее. > > Ну неправда это, неправда. Ну это было резюме с кратким пояснением и умышленным загрублением истины для облегчения восприятия :) > Авторизация в X-ах не имеет никакого отношения к локальным > пользователям той машины, на которой выполняются X-овые клиенты. > > Программа либо может предоставить авторизующий токен (magic cookie), > подходящий для данного дисплея, и тогда ее пускают, либо не может. > > Команда xhost дает доступ всем программам с определенного хоста (т.е. в > качестве авторизующего токена испольуется имя хоста, на котором работает > клиент), и поэтому ей пользоваться не следует. > > Лучше пользоваться нормальными методами авторизации - MIT-MAGIC-COOKIE > и XDM-AUTHORIZATION-1 (последний используется по умолчанию). > > Токены эти хранятся (и читаются клиентами) из файла, на который > указывает переменная XAUTHORITY (если не установлена, то из > ${HOME}/.Xauthority). Можно извлечь нужный токен из этого файла командой > xauth extract, и передать другому пользователю чтобы тот его включил > в свой файл командой xauth merge. Тогда его пустят к твоему дисплею. > > Файл .Xauthority, естественно, имеет права 0600, поэтому другим > пользователям и недоступен. > > Но если хочется запустить X-овую программу из-под рута, > достаточно сказать ей XAUTHORITY=~ты/.Xauthority. Из-под рута она твой > файл прочитает, и ее прекрасно пустят к дисплею. Все обстоит именно так. -- Best regards, -Vlad
Re: VFS
Здравстуйте, On Fri, Jan 10, 2003 at 03:29:29PM -0500, Anatoly Pugachev wrote: > > может кто подскажет что я не так делаю, а то уже третий день бьюсь: > > скомпилировал ядро поставил... перезагружаюсь... > > > > Kernel panic: VFS: unable to mount root fs on /dev/hda6 03:06 > > > > ну если не так, то смысл тот же. > > в чем дело я никак понять не могу... > > возможные причины: > - нет поддержки IDE устройств (HDDs) > - нет поддержки типа файловой системы которая на разделе или она > скомпилирована > в качестве модуля (если в качестве модуля, то нужно использовать initrd) Еще возможна такая причина - неправильный lilo.conf или после сборки ядра не выполнили /sbin/lilo. -- Elena Egorova
Re: VFS
Friday 10 January 2003 13:17, Igor B. написал: > может кто подскажет что я не так делаю, а то уже третий день бьюсь: > скомпилировал ядро поставил... перезагружаюсь... > > Kernel panic: VFS: unable to mount root fs on /dev/hda6 03:06 > > ну если не так, то смысл тот же. > в чем дело я никак понять не могу... > > спасибо заранее Подобная ошибка также возникает если вы в конфиге ядра включили следующую фичу: [ File systems ] -> [*] /dev file system support (EXPERIMENTAL) В этом случае в /dev маунтится файловая система девайсов с совершенно иной структурой, и привычных /dev/hd** там нету. Hope, this help. WBR, Vyacheslav
Re: Ненужные сообще ния
Michael Shigorin <[EMAIL PROTECTED]> writes: > On Tue, Jan 07, 2003 at 09:29:01PM +0300, Pankratov Artem wrote: > > Как подавить вывод на текстовую консоль различных сообщений типа: > > Jan 7 21:09:52 debian kernel: hda: drive not ready for command > > Сменить /dev/hda. Ну ладно Вам... Нужно изменить console loglevel на более низкий. Есть несколько вариантов: 1) man klogd на счет опции -c edit /etc/init.d/klogd (заменить KLOGD="", например, на KLOGD="-с 1") /etc/init.d/klogd restart (warning: я сам не проверял) 2) Через файл /proc/sys/kernel/printk. Он содержит 4 числа. Первое из них loglevel текущей консоли (см. /usr/src/linux/Documentation/filesystems/proc.txt). Например, чтоб установить loglevel на текущей консоли = 1: echo 1 > /proc/sys/kernel/printk 3) Через ioctl. Команда TIOCLINUX... А на счет диска подумайте... раз люди говорят... -- Mikolaj Golub, Ph.D. Student Institute of Molecular Physics Polish Academy of Sciences ul. Smoluchowskiego 17, PL 60-179, Poznan Phone: +(48-61)869-51-84 Fax: +(48-61)868-45-24
Re: questions
á ÇÄÅ ÜÔÉ ÓÁÍÙÅ ÔÅÍÙ ×ÚÑÔØ?
Re: VFS
> Подобная ошибка также возникает если вы > в конфиге ядра включили следующую фичу: > > [ Filesystems ] -> [*] /dev file system support (EXPERIMENTAL) > > В этом случае в /dev маунтится файловая система девайсов с совершенно иной > структурой, и привычных /dev/hd** там нету. AFAIR, их там есть. Они являются симлинками на соотв. девайсы.
Re: Настройка печати русских букв
On Wed, Jan 08, 2003 at 11:40:18AM +0500, Igor Goldenberg wrote: > On Wed, 08 Jan 2003 at 11:53:07 +0600, Ilya Palagin wrote: > > "lpr -Plp russian_text" по-прежнему выводит крокозябры. > Нужно поставить a2ps и > ftp://ftp.ice.ru/pub/fonts/type1/sharatype-2.0.4.tar.gz и почитать в А кстати, как подключаться к ftp://ftp.ice.ru/? anonimous c паролем в виде обратного адреса он не принимает. ДБС
WWW problems
Здравствуйте debian-russian, В общих чертах: Интернет по ADSL от МТУ Имеется сеть ip 19.168.*.* В ней один на одном из компьютеров (Vasya (Woody testing)) установлено DNS (Bind) mail proxy(Squid). Другой Gateway (Potato stable) - принимает запросы только от Vasya и отправляет в инет. Вчера около 16.00 начал тормозить инет. Выражается в следующем: Очень малое количество сайтов открывается нормально (yandex.ru, dialup.mtu.ru), основное большинство сайтов загружается после 3-5 минут после запроса и далее 50/50 или быстро работает этот сайт или опят 3-5 мин на следующую страницу. И совсем чуть-чуть сайтов начинают загружаться только после нескольких обращений к ним. После звонка в тех. поддержку выяснилось, что они сменили ip своих DNS серверов. Поменял у себя, но проблема осталась. МТУшники уверяют, что с их стороны проблем нет. Подключил отдельный комп напрямую к ADSL модему, первые 3-4 минуты ни один сайт не грузился (?), но потом все заработало и как положено. Но, в целом, сеть так и тормозит с инетом. Почта ходит нормально. Подскажите, куда нужно копать. -- С Уважением, Комаров Алексей mailto:[EMAIL PROTECTED]
АОН для pppd
Всем доброго времени суток ! Возник такой довольно таки интерестный вопрос: как можно научить pppd узнавать номер дозвонившегося до него ? Стоит у меня одна машинка (на "woody") под dial-up с модемом. Есть мысль - сделать $subj и потом уже попытаться сделать список телефонов с которых можно на нее звонить. Нашел некую FreeBSD-4.6.2 в которой это сделано по полной программе, но там непонятно кто когда и как ее вообще настраивал, как это сделано никто не знает а сам я пока не разобрался еще и не уверен там это что получится. Да и вдобавок они там сильно патчили руками pppd и его исходников тоже не наблюдается. :( Рабочая система есть но выяснить по ней хотя бы что-нибудь не получается. :( Не, подскажете, случаем, куда копать ? WBR, Денис Кульгейко aka Burzumie.
Re: Настройка печати русских букв
Dmitry B. Sidorov wrote: On Wed, Jan 08, 2003 at 11:40:18AM +0500, Igor Goldenberg wrote: On Wed, 08 Jan 2003 at 11:53:07 +0600, Ilya Palagin wrote: "lpr -Plp russian_text" по-прежнему выводит крокозябры. Нужно поставить a2ps и ftp://ftp.ice.ru/pub/fonts/type1/sharatype-2.0.4.tar.gz и почитать в А кстати, как подключаться к ftp://ftp.ice.ru/? anonimous c паролем в виде обратного адреса он не принимает. ДБС Зато anonymous принимает. Или в source.list: deb ftp://ftp.ice.ru/debian woody local updates
gcc and kernel in unstable
День добрый! Вот после очередного обновления системы обнаружил что gcc по-умолчанию стал: % gcc --version gcc (GCC) 3.2.2 20021231 (Debian prerelease) Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. % dpkg -l 'gcc*' Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-- ii gcc 3.2.2-0The GNU C compiler. ii gcc-2.95 2.95.4-15 The GNU C compiler. Собственно вопрос - ядро (2.4.20) этим компилятором собирать можно - или есть какие-то тонкости. Или на первое время оставить gcc-2.95 для сборки ядра ? -- With Best, | http://www.excom.spb.su/~andrey Andrey Chernomyrdin| mailto:[EMAIL PROTECTED]
Re: kylix 2
Evening, Denis. Denis Dzyubenko <[EMAIL PROTECTED]> 15:08 10/1/2003 wrote: DD> On Thu Jan 09, 2003 at 16:12:16 +0200, Dmitry Astapov wrote: DD>>> что есть map, fold и tail-recursive оптимизация? DA>> Функции такого вида (я, да простят меня, решил демонстрировать на примерах...): DD> спасибо, разобрался, вот если бы еще примеры были не на непонятном DD> (пока) Haskel а на Питоне, было бы проще разбираться :) На питоне не так интересно - типизации-то там по сути и нет. -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
Re[2]: kylix 2
Здравствуйте! В пятницу, 10-го января 2003, в 13:41:17 по московскому времени (пятница, 12:41 (GMT +0200) на часах автора исходного письма) Dmitry Astapov написал: DA> Как следует из пока что не опровергнутого тезиса Черча, ассемблер, DA> С, Haskell и все остальные языки програмирования одинаковы в DA> смысле мощности множества задач, которые можно решить с их DA> помощью. Нет, тезис Чёрча для этого не нужен. То, что все эти языки функционально эквивалентны, т.е. все возможные программы на них вычисляют один и тот же класс функций -- математическая теорема. Строго доказанная. Совпадает этот класс также и с классом функций, вычисляемых машинами Тьюринга, и с классом частично-рекурсивных функций, и с ещё несколькими классами. Это не тезис, а теорема. Тезис же Тьюринга-Чёрча утверждает, что этот класс совпадает также с классом эффективно вычислимых функций или функций, вычислимых алгоритмически. Этот тезис действительно нельзя формально ни доказать, ни опровергнуть (хотя неформально опровергнуть его можно, а неформально доказанным он считается в данный момент), поскольку он включает в себя неопределяемое понятие эффективно вычислимой функции. Поэтому на данный момент именно этот тезис используется как определение функции, вычислимой алгоритмически. Есть, правда, ещё расширенный тезис Тьюринга-Чёрча. Он утверждает, что все возможные функционально полные машины и языки программирования, удовлетворяющие разумным ограничениям, реализуются друг другом с не более, чем полиномиальным увеличением времени. Этот тезис тоже недоказуем, поскольку содержит понятие "разумных ограничений", опять-таки не формализуемое. Например, этим разумным ограничениям не удовлетворяют недетерминированные машины. Однако для конкретных примеров языков программирования этот тезис доказан, поэтому в этих случаях является теоремой. И ещё один момент: DA> ассемблер, С, Haskell и все остальные языки програмирования Немного неаккуратное высказывание. Например, SQL не является функционально полным языком, хотя точно класс вычисляемых им функций ещё никто не описал. Так что не "все остальные языки программирования", а "все остальные универсальные языки программирования". Интересно, а какое отношение всё это имеет к теме потока? -- С уважением, Руслан Батдалов Подполковником быть хорошо, а под генералом лучше
Re: kylix 2
Evening, Vlad. Vlad Harchev <[EMAIL PROTECTED]> 18:21 10/1/2003 wrote: >> Нет. Совсем не аналогичный. Мы же не говорим о решении конкретной задачи, а >> о демонстрации определенных принципов. >> AS> #include >> >> AS> #define POINT_V 64 >> AS> #define VALUE_V 129 >> >> AS> int function(int x, int (*what_to_do)(int pnt), int point, int value); >> AS> int function2(int x); >> >> Вопросы: >> 1)Что надо сделать, чтобы решение работало для произвольных функций a -> b, >> а не только для функций int -> int? При этом, решение должно быть type >> safe. VH> На С++ - можно - используя шаблоны. Можно попросить продемонстрировать? >> AS> int main(int argc, char argv[]){ >> AS> printf("function2 does: VALUE_V + 365; VALUE is: 129\n"); >> AS> printf("Function returned on x == POINT_V: %i\n", >> AS> function(POINT_V, &function2, POINT_V, VALUE_V)); >> AS> printf("Function returned on x != POINT_V: %i\n", >> AS> function(POINT_V+34, &function2, POINT_V, VALUE_V)); >> >> 2)В моем примере, overloadFunctionAtSpecificPoint возвращает объект типа >> "функция", который затем можно использовать везде, где можно использовать >> обычную функцию. Как сделать такое в С? Чтобы было что-то вроде: >> new_function = function(&function2, POINT_V, VALUE_V)); >> printf("It works: %d!\n", new_function(5)); VH> Да, это можно используя свойство языка С++ - шаблоны. Можно попросить продемонстрировать? VH> А я вот хотел спросить - как делают структуры в лиспе (разных диалектах)? VH> Или обходятся списками, и считают элементы с определенным индексом - членами? Или списками, или соответствующими средствами для описания структур. VH> А в Haskel/Erlang/Clean - также, или все-таки есть аналог структур С? Там есть надмножество такого понятия, как структуры в С - называется алгебраические типы (аналог из математики - прямая сумма декартовых произведений). Пример: data Filter = Filter { active::Bool , conduit::String , fOrder::Integer , fName::String } deriving Show data Condition = Equals String String | NotEqual String String | StartsWith String String | Larger String String Примеры значений этих типов: (Filter True "one" 1 "someName"), (Equals "A" "B"), (Larger "123" "0123"). Еще примеры: data Value = AsnOctString [Octet] | I Int | S { flags::[Octet], strBody::String } -- String with flags | D { parsedDate::String, rawDate::OctetStream } -- Date | T { parsedTime::String, rawTime::OctetStream } -- Time deriving (Eq,Ord) data SR8Field = Prim Tag Value | Constr Tag [SR8Field] deriving (Eq,Ord) Примеры значений: Prim (Tag ...) (I 123), Prim (Tag ...) (AsnOctString [1,2,123]), Constr (Tag ...) [ Prim (Tag ...) (S [9,8] "abc"), Prim (Tag ...) (T "12:24:23", [123,234,456]) ] -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
On different programming languages ...
Evening, Ruslan. Ruslan Batdalov <[EMAIL PROTECTED]> 19:26 10/1/2003 wrote: DA>> Как следует из пока что не опровергнутого тезиса Черча, ассемблер, DA>> С, Haskell и все остальные языки програмирования одинаковы в DA>> смысле мощности множества задач, которые можно решить с их DA>> помощью. RB> Нет, тезис Чёрча для этого не нужен. То, что все эти языки RB> функционально эквивалентны, т.е. все возможные программы на них RB> вычисляют один и тот же класс функций -- математическая теорема. RB> Строго доказанная. Совпадает этот класс также и с классом функций, [skip] Спасибо за напоминание :) Да, давно я не брал в руки старых конспектов ... RB> Есть, правда, ещё расширенный тезис Тьюринга-Чёрча. Он утверждает, RB> что все возможные функционально полные машины и языки RB> программирования, удовлетворяющие разумным ограничениям, реализуются RB> друг другом с не более, чем полиномиальным увеличением времени. Этот RB> тезис тоже недоказуем, поскольку содержит понятие "разумных RB> ограничений", опять-таки не формализуемое. Например, этим разумным RB> ограничениям не удовлетворяют недетерминированные машины. Однако для RB> конкретных примеров языков программирования этот тезис доказан, RB> поэтому в этих случаях является теоремой. RB> И ещё один момент: DA>> ассемблер, С, Haskell и все остальные языки програмирования RB> Немного неаккуратное высказывание. Например, SQL не является RB> функционально полным языком, хотя точно класс вычисляемых им функций RB> ещё никто не описал. Так что не "все остальные языки RB> программирования", а "все остальные универсальные языки RB> программирования". RB> Интересно, а какое отношение всё это имеет к теме потока? А никакого :) -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
Re: Настройка печати р усских букв
On 2003.01.09 at 07:45:19 +0300, Dmitry B. Sidorov wrote: > On Wed, Jan 08, 2003 at 11:40:18AM +0500, Igor Goldenberg wrote: > > On Wed, 08 Jan 2003 at 11:53:07 +0600, Ilya Palagin wrote: > > > "lpr -Plp russian_text" по-прежнему выводит крокозябры. > > Нужно поставить a2ps и > > ftp://ftp.ice.ru/pub/fonts/type1/sharatype-2.0.4.tar.gz и почитать в > > А кстати, как подключаться к ftp://ftp.ice.ru/? > anonimous c паролем в виде обратного адреса он не принимает. anonymous и ftp - прнинимает. А если слово anonymous написано с грамматическими ошибками, то извините. Он может не принимать коннекты с хостов у которых отсутствует нормальный reverse DNS, это да. Это, кстати, дефолтное поведение Debian ALL: PARANOID в hosts.deny. Тем, у кого проблемы с держателями DNS-зоны и они не лечатся, могу порекомендовать ходить на http://ftp.ice.ru. Там все то же самое. -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
Re: xcdroast
On 2003.01.10 at 18:33:08 +0400, Vlad Harchev wrote: > > > xhost +localhost > > > > > > Без этого программам другого пользователя запрещено рисовать на дисплее. > > > > Ну неправда это, неправда. > > Ну это было резюме с кратким пояснением и умышленным загрублением истины для > облегчения восприятия :) Ну уж слишком грубое загрубление. Если загрублять формулировку до такого уровня, то она должна быть "никогда не пользуйтесь программой xhost, потому что это security hole размером с трубкозуба. Если вы хотите дать программе, работающей от другого юзера права на доступ к вашему дисплею, вам следует разобраться что такое права достпа к дисплею и как ими делятся". > > > > Лучше пользоваться нормальными методами авторизации - MIT-MAGIC-COOKIE > > и XDM-AUTHORIZATION-1 (последний используется по умолчанию). > > Все обстоит именно так. Да, кстати, а кто знает, почему разные сопутствующие демоны, которые авторизуются об X-сервер - xmove, floppyd, nasd не любят XDM-AUTHORIZATION-1? C MIT-MAGIC-COOKIE у них нормально, а с XDM-AUTHORIZATION-1 авторизация не проходит. -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
Re: АОН для pppd
On 2003.01.10 at 18:12:00 +0200, Denis A. Kulgeyko wrote: >Всем доброго времени суток ! > > Возник такой довольно таки интерестный вопрос: как можно научить pppd > узнавать > номер дозвонившегося до него ? Если модем умеет АОН, то единственное что надо - это отобрать номер у модема ДО того, как запущен pppd. По-моему, есть патчик к mgetty, который это умеет. -- Victor Wagner [EMAIL PROTECTED] Chief Technical Officer Office:7-(095)-748-53-88 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus
Re: kylix 2
Evening, Alexander. Alexander Kogan <[EMAIL PROTECTED]> 16:27 10/1/2003 wrote: AK> Месяц назад начал смотреть на Haskell. Нашел замечательныю книжку, которая AK> мне очень помогла и в плане Хаскеля и вообще функционального подхода - AK> Functional Programming by Jeroen Fokker, 1995. AK> (http://www.haskell.org/bookshelf/functional-programming.dvi), но там нету AK> самых интересных глав - про классы. Точнее, они есть, но на голландском, AK> который я читать не умею. Подскажите, плз, что почитать? Я вроде основную AK> идею хаскелевого подхода к типизации понял, но как-то неглубоко ;-))) Может, AK> есть какие-нибудь книги по теории, желательно в сети? 1)Статьи, ссылки на которые есть с www.haskell.org 2)Подписаться на список рассылки и задавать вопросы - community очень дружелюбное AK> Кста, а в хаскеле можно явно сказать, что функция должна быть strict, или это AK> уж как компайлер решит? Э а что значит "функция должна быть strict"? :) (есть подозрение, что на самом деле ты этого не хочешь, ты хочешь чего-то более другого ... :) Впрочем, с этим лучше или в упомянутый список рассылки, или в приват. -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
Re: kylix 2
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Fri Jan 10, 2003 at 18:44:29 +0200, Dmitry Astapov wrote: DD что есть map, fold и tail-recursive оптимизация? DA>>> Функции такого вида (я, да простят меня, решил демонстрировать на примерах...): DD>> спасибо, разобрался, вот если бы еще примеры были не на непонятном DD>> (пока) Haskel а на Питоне, было бы проще разбираться :) DA> На питоне не так интересно - типизации-то там по сути и нет. Есть типы - список, dictionary, tuple. А разделения string/int/float/etc. нету. Да и не очень-то и нужно - -- Denis I/O ERROR - intel outside -BEGIN PGP SIGNATURE- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE+Hv0/+zH7vYeuVKsRAtTWAJsFVCmU5SxzPM0JkK82o7z8CQjXYwCeJu2q xqXtVRCsS2hhxLWxyodYu+U= =/zdn -END PGP SIGNATURE-
Re: АОН для pppd
> Возник такой довольно таки интерестный вопрос: как можно научить pppd > узнавать > номер дозвонившегося до него ? pppd тут не причем. Это к mgetty. Номер выдается mgetty в лог. Для этого надо настроить соответствующим образом модем, чтобы номер писался в строку CONNECT. > Стоит у меня одна машинка (на "woody") под dial-up с модемом. Есть мысль - > сделать $subj и потом уже попытаться сделать список телефонов с которых можно > на нее звонить. > Нашел некую FreeBSD-4.6.2 в которой это сделано по полной программе, но там > непонятно кто когда и как ее вообще настраивал, как это сделано никто не > знает а сам я пока не разобрался еще и не уверен там это что получится. Да и > вдобавок они там сильно патчили руками pppd и его исходников тоже не > наблюдается. :( Рабочая система есть но выяснить по ней хотя бы что-нибудь не > получается. :( > Не, подскажете, случаем, куда копать ? info mgetty на предмет Caller-ID. Модемы IDC, например, умеют эмулировать выдачу CID с определенным АОНом номером. Я, правда, этим не пользовался, так что не уверен, что все заработает как надо. -- Andrey V. Kiselev Scientific Research Center for Ecological Safety Russian Academy of Sciences Office phone: +7 812 2307834 ICQ UIN 26871517
Re: kylix 2
Evening, Denis. Denis Dzyubenko <[EMAIL PROTECTED]> 20:05 10/1/2003 wrote: DD> On Fri Jan 10, 2003 at 18:44:29 +0200, Dmitry Astapov wrote: DD> что есть map, fold и tail-recursive оптимизация? DA Функции такого вида (я, да простят меня, решил демонстрировать на примерах...): DD>>> спасибо, разобрался, вот если бы еще примеры были не на непонятном DD>>> (пока) Haskel а на Питоне, было бы проще разбираться :) DA>> На питоне не так интересно - типизации-то там по сути и нет. DD> Есть типы - список, dictionary, tuple. DD> А разделения string/int/float/etc. нету. Да и не очень-то и нужно Вот и я говорю - типов нету. "список бульдогов" + "список носорогов" = что будет? Правильно, смесь бульдога с носорогом. Хорошо, если ее делают специально, а если нет? С моей точки зрения, это зло. -- Dmitry Astapov //ADEpt E-mail: [EMAIL PROTECTED] GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498 2B08 7867 4860 F5D7 639D
Re: Ненужные сообщения
On Fri, Jan 10, 2003 at 03:09:24PM +0100, Mikolaj Golub wrote: > > > Jan 7 21:09:52 debian kernel: hda: drive not ready for command > > Сменить /dev/hda. > Ну ладно Вам... Да мне-то что. > Нужно изменить console loglevel на более низкий. Есть несколько > вариантов: Вариантов два: - или это мелкое невезение и надо подобрать режим капризному винту, - или невезение крупное и сование /dev/head в /swap/sand не поможет. :( -- WBR, Michael Shigorin <[EMAIL PROTECTED]> -- Linux.Kiev http://www.linux.kiev.ua/
Re: С для паскальщика
On Fri, Jan 10, 2003 at 02:49:28PM +0300, Wartan Hachaturow wrote: > > Мало того, проникнута раскаянием :-) > Ты невнимательно читал :) Нет, я _поставил_ смайл ;) -- WBR, Michael Shigorin <[EMAIL PROTECTED]> -- Linux.Kiev http://www.linux.kiev.ua/
Re: gcc and kernel in unstable
В письме от 10 Январь 2003 19:23 Andrey Chernomyrdin написал: > Собственно вопрос - ядро (2.4.20) этим компилятором собирать можно - или > есть какие-то тонкости. Или на первое время оставить gcc-2.95 для сборки > ядра ? можно. у меня тут есть машина с SuSE8.1, там по-умолчанию gcc 3.2.0, вся система им собрана (включая ядро), работает всё отлично. -- Alexey Ozeritsky email1 [EMAIL PROTECTED] email2 [EMAIL PROTECTED] web http://make-install.by.ru icq UIN 52034320
Re: cdrecord
Fri, 10 Jan 2003 09:00:30 +0600 Ilya Palagin <[EMAIL PROTECTED]> wrote: > Maxim V. Kryzhny wrote: > > привет, > ... > > я не совсем, вернее совсем не понял насчет размеров файлов... надо > > ли этот текст понимать так, что размер файла не должен превышать 700 > > кв и мои фалы не могут быть записаны на СД в формате аудио?! > > и что означают требования кратности? > > При записи добавь к cdrecord опцию `-pad`, он сам добьет нулями до > нужного размера все wav-ы. > так и есть... все ок -- MKV frm MyHome _mailto:[EMAIL PROTECTED]
Re: gcc and kernel in unstable
On Fri, Jan 10, 2003 at 10:07:38PM +0300, Alexey Ozeritsky wrote: > у меня тут есть машина с SuSE8.1, там по-умолчанию gcc 3.2.0, > вся система им собрана (включая ядро), работает всё отлично. У меня сейчас вся система 3.2.1 под i586 собрана. Сдается, не настолько zippy, как 2.96/i586. Есть какие-то ощущения по производительности? -- WBR, Michael Shigorin <[EMAIL PROTECTED]> -- Linux.Kiev http://www.linux.kiev.ua/
Re: kylix 2
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Fri Jan 10, 2003 at 20:16:18 +0200, Dmitry Astapov wrote: DD>> Есть типы - список, dictionary, tuple. DD>> А разделения string/int/float/etc. нету. Да и не очень-то и нужно DA> Вот и я говорю - типов нету. "список бульдогов" + "список носорогов" = что DA> будет? Правильно, смесь бульдога с носорогом. Хорошо, если ее делают будет список из булдогов и носорогов :) DA> специально, а если нет? DA> DA> С моей точки зрения, это зло. не знаю, по моему отсутствие четкой типизации сильно упрощает программирование. - -- Denis По весне у компутерщиков мантисса сдвигается, порядок едет, знак сносит, а запятая уплывает -BEGIN PGP SIGNATURE- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE+Hx+8+zH7vYeuVKsRAmVwAJ9ecpvw5Az7BPkoW0HMqdT+Wd3qWwCfa5UU 0zTexNiPf56lkjj0oDPOIH0= =clha -END PGP SIGNATURE-
Re: gcc and kernel in unstable
> On Fri, 10 Jan 2003 19:23:38 +0300 > "AC" == Andrey Chernomyrdin <[EMAIL PROTECTED]> wrote: AC> AC> День добрый! AC> Вот после очередного обновления системы обнаружил что gcc по-умолчанию стал: AC> % gcc --version AC> gcc (GCC) 3.2.2 20021231 (Debian prerelease) AC> Copyright (C) 2002 Free Software Foundation, Inc. AC> This is free software; see the source for copying conditions. There is NO AC> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. AC> AC> % dpkg -l 'gcc*' AC> Desired=Unknown/Install/Remove/Purge/Hold AC> | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed AC> |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: AC> uppercase=bad) AC> ||/ Name Version AC> Description AC> +++-- AC> ii gcc 3.2.2-0The GNU C compiler. AC> ii gcc-2.95 2.95.4-15 The GNU C compiler. Хм.. а gcc-3.x нет? Странно. AC> Собственно вопрос - ядро (2.4.20) этим компилятором собирать можно - или AC> есть какие-то тонкости. Или на первое время оставить gcc-2.95 для сборки AC> ядра ? Можно. Иногда только им и можно. -- Alexander Kotelnikov Saint-Petersburg, Russia
fontconfig problem
Добрый вечер. После очередного апдейта unstable многие программы не хотят запускаться, выдавая при этом следующее: gkrellm: relocation error: /usr/lib/libfontconfig.so.1: undefined symbol: FT_Get_Next_Char Как бы вылечить? Может кто знает. Заранее спасибо. С уважением Алексей Кольга.
Mozilla проблемма со шр ифтами после update до 1.2
Привет, all. Стояла Mozilla 1.0 из woody и все было нормально, шрифты выглядели прекрасно, но вот проапгрейдил я её до 1.2 с вагнеровского репозитория и во всей Mozilla'е шрифты стали выглядеть криво. Т.е. все выглядит так, как будто шрифт некорректно масштабируется, некоторые линии утолщились, а некоторые нет. С настройками самой мозиллы ничего не делал, только проапгрейдил. Может кто встречался с таким проявлением и подскажет, что в этой ситуации делать? -- До свидания
Re: PPP
On Fri, Jan 10, 2003 at 01:57:28AM +0300, Sergey A. Sholokhov wrote: >>> >test -n "$(pidof pppd)" || test -z "$(mailq)" || { >>> >pon ... >>> Тока у меня одна проблема если pon недозвонится BUSY|NO DIALTONE >>> и тому подобное тогда же все, программа встанет, а на модеме >>> такое часто бывает. -( >> >>Это можно настроить в /etc/ppp/peers/... Там можно задать сколько раз >>pppd будет пытаться дозвониться при неудаче. man pppd; /maxfail : >> >>maxfail n >> Terminate after n consecutive failed connection >> attempts. A value of 0 means no limit. The >> default value is 10. >> >Странно похоже что default value is 10 не правилно у меня 1 по >ходу поскольку при неудаче он сразу прекращает попытки. >в итоге в >pon ... >while test -z "$(/sbin/ifconfig|grep ^ppp)" >-етом месте происходит зависание >а cron то не спит он еще запускает процесс в >итоге што при ppp произойдет одновременный запуск >fetchmail'ов? > Вроде как решил -) -- WBR, Sergey A. Sholokhov. ... Powered by GNU/Linux * HUN7ER | mail: [EMAIL PROTECTED] | icq : 72994428 #!/bin/sh test -f /tmp/mailqueue-lock-$UID && { echo "Already running." exit 1 } case "$1" in mail) test -n "$(pidof pppd)" || test -z "$(mailq)" || { touch /tmp/mailqueue-lock-$UID while test -z "$(/sbin/ifconfig|grep ^ppp)" do pon sutd sleep 30 done fetchmail while test -n "$(mailq)" do sleep 10 done poff rm -f /tmp/mailqueue-lock-$UID } ;; fetch) test -n "$(pidof pppd)" || { touch /tmp/mailqueue-lock-$UID while test -z "$(/sbin/ifconfig|grep ^ppp)" do pon sutd sleep 30 done fetchmail while test -n "$(mailq)" do sleep 10 done poff rm -f /tmp/mailqueue-lock-$UID } ;; *) echo "Usage: mailqueue { mail | fetch }" exit 1 esac exit 0 pgpIsv9qGAqWQ.pgp Description: PGP signature
Re: Настройка печат и русских букв
> "IG" == Igor Goldenberg <[EMAIL PROTECTED]> writes: > On Wed, 08 Jan 2003 at 11:53:07 +0600, Ilya Palagin wrote: >> где можно прочитать про настройку печати русских букв? Я откопал один >> рецепт с установкой urw шрифтов с ftp.gnome.org, но максимум, чего >> удалось добиться - печать на русском из мозиллы. Команда вроде >> "lpr -Plp russian_text" по-прежнему выводит крокозябры. > Нужно поставить a2ps и > ftp://ftp.ice.ru/pub/fonts/type1/sharatype-2.0.4.tar.gz и почитать в > архиве sharatype про подключение этих шрифтов к a2ps. Ну, если принтер содержит русские шрифты, то для того, чтобы печатать plain текст, достаточно просто конвертнуть его в cp866. Что можно прописать в фильтре. Так, например у меня это /etc/magicfilter/epsonlq-filter и последней строкой там: default filter /usr/bin/konwert koi8r-cp866 И тогда даже cat russian_text > /dev/lp0 не огорчит вас. -- Theodore
Re: VFS
On Friday 10 January 2003 17:09, Vyacheslav E. Sidin wrote: > > может кто подскажет что я не так делаю, а то уже третий день бьюсь: > > скомпилировал ядро поставил... перезагружаюсь... > > > > Kernel panic: VFS: unable to mount root fs on /dev/hda6 03:06 > > > > ну если не так, то смысл тот же. > > в чем дело я никак понять не могу... > > > > спасибо заранее > > Подобная ошибка также возникает если вы > в конфиге ядра включили следующую фичу: > > [ Filesystems ] -> [*] /dev file system support (EXPERIMENTAL) > > В этом случае в /dev маунтится файловая система девайсов с совершенно иной > структурой, и привычных /dev/hd** там нету. На этапе монтирования корня ядру АФАИК все эти devfs'ы по барабану. Причина в другом месте. Может быть прописаны не ту параметры или не собран какой-нибудь драйвер. А корень точно на /dev/hda6 ? WBR Separator --- http://www.E-mail.ru - КСВЬХИ пНЯЯХИЯЙХИ АЕЯОКЮРМШИ ОНВРНБШИ ЯЕПБХЯ. лХМХЛСЛ ПЕЙКЮЛШ, ЙЮМЮК 100 ЛА/Я, ЪЫХЙ 10 лА, SMTP/POP3, ЮБРННРБЕРВХЙ, ГЮЫХРЮ НР ЯОЮЛЮ Х БХПСЯНБ, ОЕПЕЮДПЕЯЮЖХЪ, ОПНБЕПЙЮ НПТНЦПЮТХХ Х ЛМНЦНЕ ДПСЦНЕ.
Re: programming languages (was: kylix2) IMHO: OFFTOPIC
Dmitry Astapov wrote: Какой тип у foreach и function_obj? Подсказка: "void *" - это несерьезно. AS> В С++ эти элементы имеют определенные типы! Они, правда, подводятся AS> под шаблоны, но проверка типов там строгая, и трюки с void * там не AS> пройдут - придется применять специальные операторы-функции: AS> static_cast или dynamic_cast! Вот точное, концептуальное определение AS> данной функции (из STL): AS> template Op for_each( In first, In last, Op f){ AS> while (first != last) f(*first++); AS> return f; AS> } Вопрос: где зафиксирована информация о том, что f должна принимать аргумент того же типа, который имеет (*first++)? В определении Op (класса объекта f). first имеет класс "итератора", вроде bidirectional_iterator в случае с list. Внутри него перегружен его оператор operator*(), который, при обычном систаксисе С, возвращает значение переменной, указываемой first. Итератор в C++ - это усложненный и более "умный" указатель (pointer), который может даже проверять свое значение (т.н. "итераторы с проверкой"), если это необходимо - после дополнительного программирования. *first таким образом возвращает (да, именно возвращает, так как в данном случае мы имеем дело с оператором-функцией) объект, на который указывает данный итератор. Чаще всего (и в данном мной примере из книжки в частности) это делается для удобной работы с контейнерами (list, queue, map, vactor, ...). *first++ заставлет итератор указать на следующий элемент в последовательности (контейнере) и возвратить значение элемента. Это обыденный трюк с приоритетами операторов. Оператор * (получение значения) имеет самый низкий приоритет в С/С++. Значение элемента всегда имеет строго определенный тип. В приведенном ниже примере *(lc.begin()) будет иметь тип Club, так как lc.begin() указывает на первый элемент списка lc, состоящего из объектов типа Club. Например (из "Языка программирования С++"): void extract(const list& lc, list& off){ //...размещаем персонал из 'lс' в 'off' for_each(lc.begin(), lc.end(), Extract_officers(off)); } class Extract_officers { list &lst; public: explicit Extract_officers(list& arg): lst(x){} void operator()(const Club& c){ copy(c.officers.begin(), c.officers.end(), back_inserter(lst)); } }; Попробуем сделать так: void extract(const list& lp, list& off){ //...размещаем персонал из 'lс' в 'off' for_each(lp.begin(), lp.end(), Extract_officers(off)); } - будет выдана ошибка (типа: *first не принадлежит к классу Club) и программа компилироваться не будет. AS> Проверка типов является одним из приоритетов С++. Это, так сказать, AS> "строго типизированный язык". Однако наличие неявных приведений типов и динамической типизации все портит. Для понимания того, как можно жить иначе, можно почитать о том, что есть Hindley-Milner type system и как она используется в Clean, Haskell или OCaml. Хм... Дело в том, что при использовании static_cast и dynamic_cast всегда происходит проверка соотвествия типов. На обе функции наложены строгие ограничения. В частности, с помощью static_cast нельзя преобразовывать виртуальные базовые классы в их производные классы. В случае с dynamic_cast та же проверка просто откладывается на этап выполнения. Конечно, это "hack", то есть возможность на грани излишней, хотя она все-таки, очевидно необходима в некоторых случаях. Тут нельзя как в С сделать преобразования вида: char c = 'a'; void *f = (void*)&c; // CoolWidget - виртуальный базовый класс для CoolButton. CoolButton r = new CoolButton(); CoolWidget* ps = &r; // Ошибка: нельзя выполнить приведение из виртуального базового класса pr = static_cast(ps); Каким образом происходит проверка того, что function_obj принимает аргумент именно того типа, который содержится в списке? Можно ли сделать: foreach(list_iterator.first, list_iterator.last, foreach(other_list_iterator.first, other_list_iterator.last, function_obj)); (это синтаксически неверно, но идея должна быть понятна. Если для этого нужно более 3 строк кода, то хорошо ли это?) AS> Почему нельзя? Можно! И синтаксически все правильно - мы говорим о С++ AS> в данном случае (см. выше: "> AS> В С++ это делается так:") AS> (извините, незаметно переменил подтему). Именно для этого и писалась AS> эта стандартная алгоритмическая функция, чтобы можно было AS> объектно-ориентированными средствами языка имитировать кострукции вида: AS> for(Iterator counter; counter != container.end(); counter++){ AS> for(Iterator counter2; counter2 != container[1].end(); counter2++){ AS> // do smth... AS> } AS> } И где же ответ на мои вопросы? Я повторю: 1)Каким образом происходит проверка того, что function_obj принимает аргумент именно того типа, который содержится в списке? Это уже компетенция компилятора, я думаю... ;-) То есть компилятор ДОЛЖЕН проверять это, и он это делает. Это провеяет модуль STL (Standard Templates Lib
Re: kylix 2
Dmitry Astapov wrote: AS> То есть, другими словами, Haskel позволяет перегружать функции таким AS> вот странным (для человека, ранее кроме как с С, С++, Паскаль, Питон и AS> пр. ни с чем больше не встречавшегося) образом. Сложно для понимания, AS> по крайней мере сначала. Нет. Идея тут не в том, что можно перегружать функции (просто у меня пример такой получился). Идея в том, что можно создать и вернуть объект типа "функция". AS> Аналогичный код на С: Нет. Совсем не аналогичный. Мы же не говорим о решении конкретной задачи, а о демонстрации определенных принципов. AS> #include AS> #define POINT_V 64 AS> #define VALUE_V 129 AS> int function(int x, int (*what_to_do)(int pnt), int point, int value); AS> int function2(int x); Вопросы: 1)Что надо сделать, чтобы решение работало для произвольных функций a -> b, а не только для функций int -> int? При этом, решение должно быть type safe. В С это не предусмотрено. Зато предусмотрено в С++ (по крайней мере, косвенно). AS> int main(int argc, char argv[]){ AS> printf("function2 does: VALUE_V + 365; VALUE is: 129\n"); AS> printf("Function returned on x == POINT_V: %i\n", AS> function(POINT_V, &function2, POINT_V, VALUE_V)); AS> printf("Function returned on x != POINT_V: %i\n", AS> function(POINT_V+34, &function2, POINT_V, VALUE_V)); 2)В моем примере, overloadFunctionAtSpecificPoint возвращает объект типа "функция", который затем можно использовать везде, где можно использовать обычную функцию. Как сделать такое в С? Чтобы было что-то вроде: new_function = function(&function2, POINT_V, VALUE_V)); printf("It works: %d!\n", new_function(5)); AS> return 0; AS> } [skip] Так, что такое функция? - Я понимаю так: это некоторое выражение вида: a = f(x, y, [...]) с одним или несколькими изменяемыми аргументами, на основе которых собственно функция (как абстракция данного выражения) принимает то или иное значение. Это математический смысл функции в моей вольной трактовке. Что с функцией можно сделать? - Можно вычислить ее значение на основе данных значений ее аргументов. Но зачем может быть необходимо функции возвращать не собственное значение, а другую функцию? (Это противоречит моему пониманию функции, которое со школьной скамьи всем известно, и этого парадокса не понимаю) Как математически это можно представить? AS> Разницу я только вижу в гибкости кода и его просте. Думаю, на AS> ассемблере это выглядело бы еще сложнее... ;-) Как следует из пока что не опровергнутого тезиса Черча, ассемблер, С, Haskell и все остальные языки програмирования одинаковы в смысле мощности множества задач, которые можно решить с их помощью. Но не одинаковы с точки зрения читаемости и сопровождаемости кода и времени, требуемого на его написания. И простота кода in the long run становится чуть ли не решающим фактором. Не могу не согласиться. Выбор языка программирования делает программист, а не пользователь. А программист, как любой нормальный человек, не стремиться слишком усложнять себе жизнь, поэтому пытается пользоваться как можно более простыми для него и его задач решениями. :-) AS> Но этот код говорит о том, что все же совсем необязательно функции AS> возвращать другую функцию. Можно вернуть ее возращаемое значение. AS> Но очевидно, однако, что Haskel позволяет значительно упростить код, AS> что иногда весьма полезно. Понимание того, как важна простота и читаемость кода приходит обычно в процессе работы с legacy кодом на >10 строк на С Да уж оно и так понятно. :-) Я не понимаю, как некоторые парадоксальные (противоречащие традиционному пониманию) особенности (как возвращение функции функцией) могут помочь с читаемостью и простотой кода? В первую очередь, с читаемостью? Конечно, я понимаю, что с привычкой это становится легче, но... Признаюсь честно, в данный момент я остального решительно не понимаю. :-) -- Andrei Sosnin http://zzx.ath.cx
Re: kylix 2
Dmitry Astapov wrote: VW>Отличается наличием очень интересных концепций VW>параллельного и распределенного программирования, ... впрочем, этим интересны и ocaml и haskell. Особенно своим решением проблем параллельного программирования. Что подразумевается под "параллельным программиррованием"? "Распределенным"? -- Andrei Sosnin http://zzx.ath.cx
Re: gcc and kernel in unstable
Andrey Chernomyrdin wrote: Собственно вопрос - ядро (2.4.20) этим компилятором собирать можно - или есть какие-то тонкости. Или на первое время оставить gcc-2.95 для сборки ядра ? Я с помощью 3.2 компилировал 2.4.19. Работает вполне: uptime > 30 days, load avg < 0.1 - на Pentium 133 в качестве рутера. Только у меня gcc и ядро были сконфигурированы вручную. -- Andrei Sosnin http://zzx.ath.cx