После прочтения нескольких руководств и вхождения в тему большинство библиотек становятся поятными. И это мясо обычно не учат, а используют как справочник. А ещё чаще как справочник используют hoogle или hayoo и особо не запоминают какие функции и типы в каких модулях лежат.
Да, приходилось однажды писать на С#. Впечатления — можно вообще ничего не запоминать, автодополнение пишет код само.
И тем не менее, даже по сравнению с С# неудобств никаких не испытывал. Это сильно разные парадигмы. И если в одной жизненно необходимы инструменты автодополнения и навигации, не факт что это столь важно в другой.
В редакторе на несколько порядков медленнее, а в leksah уже не на несколько порядков.
Да, там больше библиотек. И не все библиотеки качественные. Но в хаскеле ещё меньше библиотек и также хватает шлака.
По поводу работы на старых системах — очень часто системные администраторы жалуются что программисты приложений и сервисов хотят всё более новые и новые интерпретаторы. Это приводит к определённым проблемам.
К слову, у меня одна хаскельная программа на centos5 в xen периодически зависала, в dmesg писались ошибки «4gb seg fixup». Перепробовал все советы, так и не вылечил. Пришлось ставить другую систему.
То есть для этой оценки нужно всё переписать на С++ или на другом сравниваемом языке, а потом сравнить?
Даже если это сделать, то условия уже будут другие.
Командное взаимодействие в проектах на хаскеле меня тоже очень интересует. Хотя не думаю, что особенности такого взаимодействия отличаются от других ЯП.
В конференции джаббера периодически обсуждают код, обычно без проблем разбираются даже большие куски кода.
Но, ваш плагин:
— При попытке создания пользовательской цепочки INPUT удаляет все правила из цепочки INPUT.
— При попытке создания пользовательской цепочки LOG пользовательская цепочка LOG создаётся (!) и начинает конфликтовать с таргетом LOG.
— При попытке задания Source MAC address в цепочке «OUTPUT» возникает ошибка «iptables-restore: line 8 failed»
— При попытке создания в цепочке «PREROUTING» правила «MASQUERADE»: «iptables-restore: line 22 failed»
— При попытке задания Source port для протокола ICMP: iptables-restore v1.4.4: multiport only works with TCP, UDP, UDPLITE, SCTP and DCCP Error occured at line: 8 Try 'iptables-restore -h" or 'iptables-restore --help' for more information.
— При попытке создания правила -I INPUT -p tcp --dport 8000 -j DROP интерфейс безвозвратно пропадает вместе с доступом к настраиваемой системе.
Обработкой всех этих и многих других ситуаций и занимается Iptadmin. Несмотря на отсутствие дизайна и клиентского исполняемого кода.
Но у вас действительно плагин намного более удобен чем в webmin.
Подскажите, где почитать о том, как настроить ваш плагин «Firewall»? Установил на ubuntu 10.10 из репозитория, показывает пустые таблицы filter, mangle, nat.
Планируется сделать специальный билд с бэкэндом в текстовом файле (запись конфигурации файрволла только в текстовый файл). Чтобы можно было не трогая систему посмотреть на программу. Такой билд можно было бы запускать на других ОС, но особой пользы от него не будет.
После прочтения нескольких руководств и вхождения в тему большинство библиотек становятся поятными. И это мясо обычно не учат, а используют как справочник. А ещё чаще как справочник используют hoogle или hayoo и особо не запоминают какие функции и типы в каких модулях лежат.
И тем не менее, даже по сравнению с С# неудобств никаких не испытывал. Это сильно разные парадигмы. И если в одной жизненно необходимы инструменты автодополнения и навигации, не факт что это столь важно в другой.
В редакторе на несколько порядков медленнее, а в leksah уже не на несколько порядков.
На мой взгляд писать на хаскеле в простом редакторе удобнее, чем писать на С++ с использованием этих средств.
Для хаскеля существует IDE Leksah. Говорят, очень продвинутая штука.
Также есть плагин для эклипса.
Не знаю правда как они соотносятся с уровнем Visual Studio. Посмотреть подробнее не было времени.
Да, там больше библиотек. И не все библиотеки качественные. Но в хаскеле ещё меньше библиотек и также хватает шлака.
По поводу работы на старых системах — очень часто системные администраторы жалуются что программисты приложений и сервисов хотят всё более новые и новые интерпретаторы. Это приводит к определённым проблемам.
К слову, у меня одна хаскельная программа на centos5 в xen периодически зависала, в dmesg писались ошибки «4gb seg fixup». Перепробовал все советы, так и не вылечил. Пришлось ставить другую систему.
Это все обычные языки, в которых есть чёткий порядок выполнения инструкций и переменные.
Некоторые ещё называют их императивными, противопоставляя их декларативным, таким как SQL, Haskell, язык Makefile и т.п.
Просто пока дело не дошло.
Но можно воспользоваться пакетом tar.gz, там есть make install и даже make uninstall.
Даже если это сделать, то условия уже будут другие.
В мире множество компаний, где над хаскельными проектами работают большие команды. Скорее всего они будут не против поделиться опытом.
Как измерить в цифрах все эти показатели?
Могу сказать только что на другом языке мне не хватило бы времени и терпения довести до логического завершения даже этот простой функционал.
Командное взаимодействие в проектах на хаскеле меня тоже очень интересует. Хотя не думаю, что особенности такого взаимодействия отличаются от других ЯП.
В конференции джаббера периодически обсуждают код, обычно без проблем разбираются даже большие куски кода.
На 5 dvd есть почти всё что нужно.
В былые времена мы заказывали по почте срез Gentoo на 11 dvd
В месте мы сила!
В дизайне с вами и впрямь тягаться сложно.
Но, ваш плагин:
— При попытке создания пользовательской цепочки INPUT удаляет все правила из цепочки INPUT.
— При попытке создания пользовательской цепочки LOG пользовательская цепочка LOG создаётся (!) и начинает конфликтовать с таргетом LOG.
— При попытке задания Source MAC address в цепочке «OUTPUT» возникает ошибка «iptables-restore: line 8 failed»
— При попытке создания в цепочке «PREROUTING» правила «MASQUERADE»: «iptables-restore: line 22 failed»
— При попытке задания Source port для протокола ICMP: iptables-restore v1.4.4: multiport only works with TCP, UDP, UDPLITE, SCTP and DCCP Error occured at line: 8 Try 'iptables-restore -h" or 'iptables-restore --help' for more information.
— При попытке создания правила -I INPUT -p tcp --dport 8000 -j DROP интерфейс безвозвратно пропадает вместе с доступом к настраиваемой системе.
Обработкой всех этих и многих других ситуаций и занимается Iptadmin. Несмотря на отсутствие дизайна и клиентского исполняемого кода.
Но у вас действительно плагин намного более удобен чем в webmin.
Подскажите, где почитать о том, как настроить ваш плагин «Firewall»? Установил на ubuntu 10.10 из репозитория, показывает пустые таблицы filter, mangle, nat.
Планируется сделать специальный билд с бэкэндом в текстовом файле (запись конфигурации файрволла только в текстовый файл). Чтобы можно было не трогая систему посмотреть на программу. Такой билд можно было бы запускать на других ОС, но особой пользы от него не будет.