Вчерашней битвой и вялой дискуссией на rsdn навеяно...
Если расставлять приоритеты свойств которыми должен обладать Domain Specific Language, то получиться что-то вида:
1. Читаемость (легкость переформулировки неформального тз в код)
2. Проговариваемость (легкость переформулировки проблемы реализации в вопрос к заказчику или аналитику)
3. Сообщения об ошибках в терминах домена
Про первые два пункта, где-то что-то уже написано, пункты сами по себе интуитивно понятные, и в реализации DSL явно принимаются во внимание. А вот третий, важный с моей точки зрения пункт, программисты, видимо из-за сложности реализации, склонны игнорировать.
( Классический пример... )
P.S. А возможность не программистами писать сразу на DSL я бы ни за что не поставил бы раньше этих трех пунктов.
Если расставлять приоритеты свойств которыми должен обладать Domain Specific Language, то получиться что-то вида:
1. Читаемость (легкость переформулировки неформального тз в код)
2. Проговариваемость (легкость переформулировки проблемы реализации в вопрос к заказчику или аналитику)
3. Сообщения об ошибках в терминах домена
Про первые два пункта, где-то что-то уже написано, пункты сами по себе интуитивно понятные, и в реализации DSL явно принимаются во внимание. А вот третий, важный с моей точки зрения пункт, программисты, видимо из-за сложности реализации, склонны игнорировать.
( Классический пример... )
P.S. А возможность не программистами писать сразу на DSL я бы ни за что не поставил бы раньше этих трех пунктов.
С установкой, более менее свежего mono все просто - достаточно подключить сторонний ppa репозитарий
C установкой monodevelop из исходников пришлось ( повозиться... )
C установкой monodevelop из исходников пришлось ( повозиться... )
kmmbnvr@blostory:/opt/$ sudo mv /etc/ ~/old/
Твою мать....
Твою мать....
Сестричка разрывается в выборе научника.
Осталось два кандидата, первый занимается разработкой драйверов для Embeded Linux (hardcore C), второй, криптографией и кодированием информации (Java).
Второй преподаватель на много популярнее первого. Студентов желающих стать его дипломником уже достаточно много.
Сестричка, посещает спецкурсы обоих, до последнего времени склонялась идти к линуксоводу. Но после первой части своего выступления про устройство USB, говорит, что все это скучно, неинтересно и непонятно. Но через неделю она должна рассказывать про драйвер клавиатуры.
Не знаю что ей и посоветовать. Не могу отделаться от мнения что Java пожирает юные мозги.
Осталось два кандидата, первый занимается разработкой драйверов для Embeded Linux (hardcore C), второй, криптографией и кодированием информации (Java).
Второй преподаватель на много популярнее первого. Студентов желающих стать его дипломником уже достаточно много.
Сестричка, посещает спецкурсы обоих, до последнего времени склонялась идти к линуксоводу. Но после первой части своего выступления про устройство USB, говорит, что все это скучно, неинтересно и непонятно. Но через неделю она должна рассказывать про драйвер клавиатуры.
Не знаю что ей и посоветовать. Не могу отделаться от мнения что Java пожирает юные мозги.
Сестричка отжгла. Пока весь мир первый круг, отчаянно борется с последствиями неверного выбора операционной системы, вместо того что бы веселитьcя и недоуменно спрашивать - "Вирусы? Что это такое?", она запускает их под wine'ом.
( дело было вечером... )
( дело было вечером... )
Может я не умею готовить, но emacs tramp+ssh просто ужасен. Задержки на полминуты, казалось бы на пустом месте просто убивают.
Запретил recenf запоминать ssh: файлы, иначе при старте проверка их наличия на удаленном сервере может занять кучу времени. Взамен надо хотя бы настроить автодополнения хостов при открытии файла.
Попробовал sshfs на coLinux, намного более приятные ощущения.
Интересно, а есть ли, под Windows, другой прозрачный способ редактировать файлы на удаленной машине?
Update Совсем забыл - windows впереди планеты всей - все есть из коробки. Стандартные механизм вендовых шар \\hostname\welcome и монтирования их как дисков ближайщий аналог sshfs. И работает уже лет сто как :) Только выбирая между samba там или coLinux тут, лучше наверное все-таки выбрать coLinux.
Запретил recenf запоминать ssh: файлы, иначе при старте проверка их наличия на удаленном сервере может занять кучу времени. Взамен надо хотя бы настроить автодополнения хостов при открытии файла.
Попробовал sshfs на coLinux, намного более приятные ощущения.
Интересно, а есть ли, под Windows, другой прозрачный способ редактировать файлы на удаленной машине?
Update Совсем забыл - windows впереди планеты всей - все есть из коробки. Стандартные механизм вендовых шар \\hostname\welcome и монтирования их как дисков ближайщий аналог sshfs. И работает уже лет сто как :) Только выбирая между samba там или coLinux тут, лучше наверное все-таки выбрать coLinux.
Немножко разочаровался при знакомстве с AndLinux. Главный камень преткновения - по-прежнему сеть. После недавних шебуршений админов, пропал инет из-под coLinux работающим через slirp. Но настроить tap адаптер, на удивление, не составило труда.
Все просто:
1. Записал все параметры текущего подключения к локальной сети (ip, gateway, dns, wins)
2. Выделил Tap адаптер, выделил настоящие подключение, правой кнопкой - "Создать Мост"
3. Настроил получившийся мост, точно так же как было настроено оригинальное подключение.
4. Зашел через colinux-console-fltk(root без пароля), и настроил /etc/network/interfaces.
Для адреса, опытным путем выбрал айпишник отсутствующий(по хорошему надо конечно договариваться с админами) в нашей подсети. gateway тот же что и при настройке подключения в windows
5. Поправил /etc/profile указав верный айпишник реального компьютера.
6. Поправил реестр \\HKEY_LOCAL_MACHINE\SOFTWARE\andLinux\L auncher\IP указал тот самый свободный использованный для Linux.
7. Перезапустив все что надо(true unix way), убедился что все работает.
Update 13.03.2008: Обнаружил, что хоть andLinux Lancher абсолютно туп, и не умеет выбирать элементы из freedesktop меню Linux, зато он имеет простой, легко редактируемый текстовый конфиг - andLinux\Launcher\menu.txt. Ради добавления emacs'a, взял с Linux его иконку, конвертнул из png в ico, и добавил строчку Emacs;emacs_16.ico;emacs
Update 14.03.2008: andLinux основан на предыдушем релизе coLinux 0.7.1 в котором еще нет модуля fuse. Проапгрейдился согласно инструкции. mknod -m 666 /dev/fuse c 10 229. И пожинаю все радости sshfs под windows.
Все просто:
1. Записал все параметры текущего подключения к локальной сети (ip, gateway, dns, wins)
2. Выделил Tap адаптер, выделил настоящие подключение, правой кнопкой - "Создать Мост"
3. Настроил получившийся мост, точно так же как было настроено оригинальное подключение.
4. Зашел через colinux-console-fltk(root без пароля), и настроил /etc/network/interfaces.
iface eth1 inet static address 192.168.XXX.XXX netmask 255.255.255.0 gateway 192.168.XXX.XXX
Для адреса, опытным путем выбрал айпишник отсутствующий(по хорошему надо конечно договариваться с админами) в нашей подсети. gateway тот же что и при настройке подключения в windows
5. Поправил /etc/profile указав верный айпишник реального компьютера.
6. Поправил реестр \\HKEY_LOCAL_MACHINE\SOFTWARE\andLinux\L
7. Перезапустив все что надо(true unix way), убедился что все работает.
Update 13.03.2008: Обнаружил, что хоть andLinux Lancher абсолютно туп, и не умеет выбирать элементы из freedesktop меню Linux, зато он имеет простой, легко редактируемый текстовый конфиг - andLinux\Launcher\menu.txt. Ради добавления emacs'a, взял с Linux его иконку, конвертнул из png в ico, и добавил строчку Emacs;emacs_16.ico;emacs
Update 14.03.2008: andLinux основан на предыдушем релизе coLinux 0.7.1 в котором еще нет модуля fuse. Проапгрейдился согласно инструкции. mknod -m 666 /dev/fuse c 10 229. И пожинаю все радости sshfs под windows.