Ниша PascalABC.NET


#144

Вот… 17 числа еще одна всероссийская школьная олимпиада.

PascalABC.NET вроде бы включен, но…


#145

Ну это ещё что! Дельфи вообще какая-то 2.4.4. указана. Это что ли Delphi 2 от 1996 года?


#146

Я уже высказывал предположение, что это делается намеренно неким лобби. Иначе пишущие на PascalABС.NET остальных “уделают” в разы. А так программа благополучно зарубится по синтаксису - и все дела.


#147

GCC/++ 4.9.0 - release date April 22, 2014. Это что же, вместо компилятора С++ поставили такое сушеное говно? =3

Delphi 2 - промолчу

Python 3.4.3 - release date February 25th, 2015. Аналогично. Сейчас уже версия 3.7.0 выползла.

Haskell 4.7.1. - это что вообще за зверь такой? GHC нынче восьмой версии в интернетах!

Нет, не в лобби дело. Дело в том, что тем, кто занимается этой самой олимпиадой, влом переставлять компиляторы на компах, на которых олимпиада проходить будет в очном виде, да на системах проверки… Что было - то и взяли. Если уж компилятор С++ вышел трехсполовинойлетней давности (тот, по поводу которого Вы утверждали о наличии для него многочисленного лобби) - о чем тут говорить.

Проблема тута стоит в том, что версия 3.1, указанная в документе, попросту в интернетах (по крайней мере, на официальном сайте) не доступна. Значит, нужно или их таки выкладывать (по такому принципу), или форсить сверху необходимость выкладывать дистрибутивы самим зачинателям олимпиады.


#148

Из всего перечисленного софта PascalABС.NET со временем меняется быстрее всего. Либо использовать только какие-то базовые вещи, либо быть готовым, что не откомпилируется. Посмотрите на сайте, сколько изменений сделано за один последний год. Ни один из тех прочих языков так сильно не полируется.


#149

Да, на офф сайте нет, но никто не отменял гитхаб, у которого можно отматывать коммиты))) Там не только 3.1, там все версии и все билды можно получить, даже те что на сайт не попадали…

Но да, это не отменяет ничего что вы сказали…


#150

Меняется, конечно. Проблема тут в том, что следить за десятками выходящих за месяц версий желания не будет ни у кого, кроме энтузиастов с этого форума, что неоднократно подтверждается появляющимися тут вопросами про PascalABC, сдохший добрый десяток лет назад.

Решением тут было бы формирование Stable/Nightly версий, которые обновляются в соответствии с некоторым графиком. Скажем, Nightly сразу после появления некоторых фич, а Stable - с поднятием мажорной/минорной версии (в зависимости от объема изменений), и не чаще чем один раз в полгода. В таком случае можно было бы (согласно обсуждаемой темы):

  1. снять необходимость с организаторов олимпиад лезть на офсайт проверять версии раз в неделю
  2. иметь официальную возможность сказать всяким баговоенам вроде того же Молдована, что он сидит на нестабильной версии, и свои пожелания по части багов может засунуть себе куда поглубже

Из добавившейся работы по данному вопросу - один раз в полгода формировать набор хорошо оттестированного функционала и мержить его в ветку Stable, оставляя все недотестированные и только появившиеся фичи в Nightly. Не то, чтоб очень много. Документацию делать только на Stable, желающие сидеть на Nightly (т.е., предположительно, более опытные) вполне обойдутся changelog’ами на гитхабе. Можно даже ссылку на Nightly на сайте не держать - лишь сказать, что последняя нестабильная версия доступна для скачивания в репозитарии.

Что зачастую забывают программисты, особенно начального уровня - то, что на уровне производственных и промышленных процессов (коими по сути являются и олимпиады, т.к. проводятся повсеместно и массово) никакие новые фичи сами по себе не интересны. Важна в первую очередь стабильность работы, близкая к нулевой вероятность багов и падения, детерминированность результатов, и соответствие документации реальности. Во многом, полагаю, именно поэтому там такая древняя версия PABC.NET - т.к. она уже в их представлении неоднократно себя показала как стабильная, и переходить на что-то новое равносильно очередному витку тестирования, поиска и закрытия дырок (в том числе, в централизованных системах тестирования), и т.д. Даже баги в стабильных версиях известны, описаны, и не требуют к себе особого отношения от сообщества, т.к. в силу того, что к ним готовы, не приводят к проблемам.

Я сейчас не хочу сказать, что Паскаль полон багов и дырок - нет. Вопрос именно в отношении к моделям rolling vs fixed release. Я вот дома у себя archlinux держу, который обновляется так же, как и Паскаль - быстрее даже. Но подумаю 25 раз перед тем, как воткнуть эту операционную систему на прод. По вышеописанным причинам. К продукту со моделью обновлений rolling release недоверие по умолчанию.


#151

Уже пытались обсуждать. предлагать. Ответ разработчиков всегда одинаков: никаких бета-версий нет, самое последнее обновление - актуальная версия продукта, по всем прочим нет смысла ни хранить, ни обсуждать. Возможно это связано с малочисленностью команды, потому что на поддержку нескольких версий нужны приличные трудозатраты.


#152

Согласен конечно.

Нужно пофиксить многочисленные накопившиеся баги в лямбдах, накопившиеся к этому моменту. И тогда уже переходить на эту модель.


#153

И срезы для матриц сделать. (Кто о чем, а вшивый - о бане)


#154

Трудозатраты нужны, когда возникает более сложная схема:

  • Nightly - текущая последняя нестабильная версия, последний коммит
  • Stable - фиксированный набор функциональности, но есть багфиксы

За счет необходимости внесения багфиксов в Stable в такой схеме, кодовая база двух веток может изрядно разъезжаться - особенно, если в Nightly произведен рефакторинг кода, или избрана новая концепция работы. Это приводит к необходимости тянуть две версии кода вместо одной. Я же предлагаю изначально собирать в Stable только гарантированно откатанный код, и фиксировать его полностью.

Среди прочего можно еще собирать список найденных проблем в текущей стабильной версии - чтобы пользователи о них знали.

Это несколько затормозит развитие стабильной версии на фоне Nightly, но при этом напряга не добавит абсолютно - помимо необходимости раз в N месяцев заниматься выбором готовых к релизу фич.


#155

Да, но если на сайте две версии, их нужно поддерживать обе. Ведь если сейчас ,когда задается вопрос не по последней версии, навстречу сразу летит “А Вы обновились?” А так надо у себя держать вторую версию (не так уж они и хорошо на одном компьютере уживаются!) и осуществлять поддержу по обоим. Я вот об этой трудоемкости.


#156

Nuff said.

Обсуждение Nightly-версий так и вовсе выпилить с форума, и отправить на мороз гитхаб.

VirtualBox!