vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
http://esr.ibiblio.org/?p=7421

Раймонд умный пост написал по поводу концепций, которые лежат под Unix way. Я эту мысль про семантическую локальность три дня думать буду.

Date: 2017-03-17 04:56 am (UTC)
ext_646638: (Default)
From: [identity profile] rdia.livejournal.com
> Все попытки сделать "шелл лучше чем bourne shell" сводились к тому, чтобы напихать в скриптовый язык более низкоуровневых конструкций - объектов, методов, массивов.

Проблема в том, что люди вообще не понимают, что bash - это язык со встроенной ленивостью, с офигительной параллельностью (& явно легче написать даже чем Хаскеллевский par, а в ленивом вызове | вообще всё по-умолчанию выполняется параллельно). Ну и когда пытаются заменить bash питоном всё "немного предсказуемо".

------------------------
И, конечно, это правда насчёт общих контекстов и умолчаний. Я не хочу писать кавычки у каждого строкового параметра ls, не хочу писать .0 у каждого float'а, хочу сразу иметь неограниченные целые числа и любую точность вещественных.

С другой стороны, нужно, всё-таки, иметь определённую строгость. Хотя бы в скриптах. Возможно, тут должно быть разделение - в интерактивном shell мы можем быть более вольны, а в скриптовом - более строги.

Т.е. сделать язык, который имеет несколько режимов: мягкий, когда это почти Питон по раздолбайству и жёсткий, когда это ML (вернее Хаскель). Так, чтобы когда мы пишем скрипт на 1 раз, можно было допускать ошибки, а когда это часть системы запуска, проверки были дай боже.

b и p

Date: 2017-03-17 06:31 am (UTC)
phd_ru: (Default)
From: [personal profile] phd_ru
Я время от времени заменяю bash питоном, а то и сразу пишу на питоне. Потому что для каждого из этих скриптовых языков своя область применения. bash хорошо работает с программами и процессами, питон с файлами, структурами данных и сетевыми протоколами.

Баш на dash

Date: 2017-03-17 07:26 am (UTC)
phd_ru: (Default)
From: [personal profile] phd_ru
Я отчасти с тобой согласен и отчасти нет. Когда мне хватает возможностей урезанного /bin/sh, я именно его и использую. А когда не хватает, тогда думаю, что использовать вместо. Ну и бывает, что использую bash. Если в shell-скрипте — то с #! /usr/bin/env bash. Или, например, я точно знаю, что интерпретатором команд .travis.yml на Travis CI является bash, почему бы мне тогда не использовать его возможности, когда они нужны? Я и использую.

Date: 2017-03-17 08:07 am (UTC)
phd_ru: (Default)
From: [personal profile] phd_ru
Я частенько попадаю на FreeBSD, где bash в /usr/local/bin/

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

June 2025

S M T W T F S
1 23 4 56 7
89 1011 12 1314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 13th, 2025 07:11 pm
Powered by Dreamwidth Studios