[identity profile] display-none.livejournal.com posting in [community profile] potsreotizm_new


Священник Андрей Крашенинников удивил прихожан необычными просьбами, как только прибыл на служение в город Болотное Новосибирской области. Он попросил денег, чтобы перевести туда свою семью, затем – детскую кроватку, коляску, холодильник, плиту и, наконец, – автомобиль и курсы вождения. Поведение священнослужителя осудили как прихожане, так и епархия. В епархии пообещали провести дисциплинарную проверку.

https://echo.msk.ru/blog/statia_iz_regiona/2341353-echo/

Date: 2018-12-28 01:56 pm (UTC)
From: [identity profile] abelikoff.livejournal.com
Это, как раз, исключение, подтверждающее правило. В данном случае, имело смысл сделать революционный скачок с JVM - если от софта требовалось только перекомпилировать под новую машину, никакой проблемы не было бы.

В случае с Python3 vs Python2 гнида Гвидо на пустом месте поломал обратную совместимость, же ещё и тянет эти сопли теперь больше чем декаду. Для полного счастья, стоило бы ещё заебенить Python4, который вообще ни с чем не был бы совместим. Спросите у Ларри Волла - он знает, как. :-)

Date: 2018-12-28 02:16 pm (UTC)
From: [identity profile] abelikoff.livejournal.com
Насчёт K&R C - буду очень удивлен, если нет: ANSI C включает K&R совместимость, по крайней мере, в большинстве моментов. pre-K&R - там да, но это уже больше BCPL.

У нас, видимо, разное отношение к ЯП. Для меня критерием успеха языка является широкое внедрение в продакшн (подчёркнуто мной - имеется в виду не на уровне мамкиного программиста, а на уровне отдела компании). Если писать в стол, то можно и раз в 25 лет, но тогда язык будет интересен только паре десятков фриков энтузиастов. А, по мне, язык должен динамично развиваться - и, непременно, крутиться в продакшн.

Date: 2018-12-29 04:21 pm (UTC)
From: [identity profile] abelikoff.livejournal.com
Ну вот триграфы вроде бы выпилили из последнего стандарта.

Тут согласен. Правда, не знаю, где они когда либо вообще использовались. К тому времени совсем уж кастрированных наборов символов и не осталось.

А еще в K&R можно было не указывать тип (он был int по умолчанию), а еще сигнатура функции указывалась немного иначе (а параметры могли не указываться вовсе).
Было ключевое слово auto (для одноименного storage duration, к плюсовому автовыводу отношения не имеет) итд.


Эти, вроде, работают в K&R mode - вернусь домой, проверю.

Haskell менее внедрен в продакшен чем PHP, но качество этого продакшена сильно разное;)

Ну, так логическое следование нерефлексивно: не всё, что крутится в продакшене на реал-ных задачах априори хорошо. :-)

Хаскель вполне себе удовлетворяет вышеприведённому критерию: крутится в продакшене на вполне себе критичных задачах. Я, правда, больше в теме с OCaml: в Блумберге на нём весь DLIB написан, да и про Jane Street все знают.

Хаскель, кстати, вполне подходит и как контраргумент: они там несколько раз радикально ломали совместимость, если мне не изменяет память :-)


Если ты динамично развиваешься (как сейчас С++ или C#) то тебе очень трудно сохранять обратную совместимость не превращаясь в помойку в которой существует 100500 способов сделать одно и тоже.

Если ты ее не всегда соблюдаешь (как python) то в продакшене у тебя версии 15-ти летней давности.


Ну, если всё чёрное/белое, то да. Но, с другой стороны, есть 100500 способов не превращать язык в помойку, сохраняя совместимость. А С++ совсем не аргумент - он изначально был херово задизайнен ИМХО и дисциплина развития языка там по принципу "Тэкс, какой токен мы ещё не использовали?! Вот его и воткнём!" Начиная с С++03, конечно, получше стало.

Date: 2019-01-02 04:07 pm (UTC)
From: [identity profile] abelikoff.livejournal.com
Пацан сказал - пацан сделал!


$ cat -n kr.c
1 int foo(a, p) //тут только имена
2 int a; //тут типы
3 char *p; //тут типы
4 { return 0; }
$
$ gcc --version
gcc (Debian 7.3.0-5) 7.3.0
Copyright (C) 2017 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.

$
$ gcc -c kr.c
$

June 2025

S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags