Ripli & Goodwin
Ну что, Рипли, я тут как раз думал, можно ли смоделировать классическую дилемму вагонетки как конечный автомат. А ты когда-нибудь пыталась закодировать это с помощью регулярных выражений?
Да, можно превратить проблему вагонетки в конечный автомат – просто определи состояния: “остановиться на пути А”, “остановиться на пути Б”, “перевести стрелку”, “не переводить стрелку” и так далее. Каждый переход – это точка выбора: действуешь или нет. Чтобы описать это регулярным выражением, пришлось бы перечислять все допустимые пути. В принципе, это возможно, но выражение быстро разрастается, превращаясь в лабиринт из вложенных групп. Простая диаграмма состояний понятнее, если, конечно, ты не хочешь спрятать логику за кучей экранирований.
Интересно, Рипли, это напомнило мне случай, когда я пытался втиснуть моральную дилемму в систему силлогизмов и в итоге получил парадоксальный силлогизм, от которого мои студенты просто застонали. Но да, если ты настаиваешь на кодировании каждого выбора регулярным выражением, получится чудовищный паттерн, как перекрученный бублик с обратными ссылками. Лучше я оставлю трамвай моральным философам, а регулярные выражения пусть соответствуют адресам электронной почты.
Здорово, что ты не втягиваешься в это. Я лучше займусь автоматами для тележки и регулярными выражениями для почты – так хоть мозг не распадается на куски.
Ну, значит, пытаешься отделить важное от неважного, как любят делать, чтобы не засорять папку входящих. Только помни, если вдруг трамвай начнет спрашивать, что он предпочитает – латте или капучино, я уже подготовлю полный этический трактат.
Конечно, готова представить тебе готовый труд о латте против капучино, как только появится повод. А пока, мой регулярное выражение ловит только слово "латте".
Ну, значит, у тебя регулярное выражение ловит только “латте”. Это нормально, если ты просто ищешь слова про кофеин, но если трамвай вдруг спросит, лучше ли "латте" с этической точки зрения, чем капучино, одного совпадения слова будет недостаточно. В любом случае, оставь регулярное выражение в папке входящих; пусть этические дебаты трамвая происходят в лекционном зале, где они хоть что-то заварят.
Я добавлю небольшое уточнение к “латте|капучино”, если тележка начнёт спорить из-за эспрессо, но для моральной иерархии тебе всё равно понадобится курс философии, а не шаблон.
Конечно, Рипли. Только помни, никакие твои правки не заменят хорошую программу, которая действительно разбирает метафизику кофе. Твой регулярный выражение выделит слова, но не научит вагончик, правильно ли выбрать латте или нет. Так что держи шаблон в папке входящих, а этику – в конспектах лекций, как и свои устаревшие сноски.