LINUX.ORG.RU

Человеческая замена C для своих задач

 ,


0

6

Хочется найти простой кроссплатформенный компилируемый язык для программирования всякой мелочи для себя. Отправной точкой можно назвать C, но хочется поменьше рутины, возможностей на ровном месте выстрелить в ногу и наличия удобных базовых структур, вроде строк, динамических массивов и прочих списков. В кандидатурах сейчас пока C++ (не хочется лезть в дебри именно плюсов, с другой стороны писать в духе C с классами кажется как-то не комильфо), Pascal (начинал с Delphi когда-то, но уже почти не помню), Vala (тыкал немного, напрягает, что надо тянуть Glib и с поддержкой + кроссплатформой не очень), Go, D (на первый взгляд тоже ситуация с поддержкой и библиотеками не радует), Rust (какой-то инопланетный, но идея с управлением памятью интересна).


Ответ на: По ходу, Вы просто не понимаете о чём говорите. от Moisha_Liberman

У кода есть два состояния. Либо всё работает корректно, либо всё не работает.

Ох ё, детский сад, младшая ясельная группа.

Это в HelloWorld-е на 100 строк вы можете быть уверены на счет корректно или некорректно. И то, если там многопоточности нет в принципе.

Расскажите, как вы достигаете такой уверенности для программы в 100KLOC? А в миллион?

И во что обходится достижение этой уверенности? По времени, людским ресурсам, деньгам...

eao197 ★★★★★
()
Ответ на: комментарий от eao197

Да Вы что? Серьёзно?

Это в HelloWorld-е на 100 строк вы можете быть уверены на счет корректно или некорректно. И то, если там многопоточности нет в принципе.

То есть, Вы сразу и на берегу закладываете то, что в любом софте есть ошибки? Я не настолько смел. Я, например, считаю что в любом или практически любом софте есть уязвимости, но не ошибки.

В противном случае, Вы видимо хотели бы оказаться в числе тех пассажиров парочки Boing MAX котрые весьма неловко «прилегли» из-за ошибок в софте, я правильно думаю? Странно конечно, но в «моё время» как-то были более требовательны к качеству кода.

Нет? Ну как же так? Там же наверняка не 100 строк хелоуворлда...

Расскажите, как вы достигаете такой уверенности для программы в 100KLOC? А в миллион?

Да я, собственно, уже всё рассказал. Мне остаётся только добавить что если Вас за пять (или сколько там лет) не научили в ВУЗе, то здесь, на просторах форума в качестве Вашего послевузовского обучения это уже мне не интересно.

Moisha_Liberman ★★
()
Ответ на: Да Вы что? Серьёзно? от Moisha_Liberman

То есть, Вы сразу и на берегу закладываете то, что в любом софте есть ошибки?

Вообще-то это объективная реальность, данная в ощущениях.

Я не настолько смел.

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

Я, например, считаю что в любом или практически любом софте есть уязвимости, но не ошибки.

Да-да. Если вы обосрались, но назвали это «преждевременное испражнение», то это уже и не обсер вовсе.

В противном случае, Вы видимо хотели бы оказаться в числе тех пассажиров парочки Boing MAX котрые весьма неловко «прилегли» из-за ошибок в софте, я правильно думаю?

Пациент демонстрирует явные проблемы с логикой.

Кстати, откуда дровишки про ошибки именно в софте, а не в общей ошибки проектирования, когда за основу принимаемых решений брались показания одного незадублированного датчика?

Если уж приводить в пример именно программную ошибку, так лучше Ариан 5. Вот там вполне себе точно доказанная вина софта в аварии.

eao197 ★★★★★
()
Ответ на: комментарий от anonymous

Вы просто не писали на ML-подобных языках.

ML-подобные языки как-то магически защищают от опечаток вида «a+1-n» вместо «a+n-1»?

Или в ML-подобных языках есть какая-то защита от того, что в коде будут учтены не все условия, заданные в спецификации/ТЗ?

Не говоря уже про то, что мойша говорит не про Хаскелль или ОКамл, а про Си.

eao197 ★★★★★
()
Ответ на: комментарий от eao197

Ну тогда не третьте на себя ресурсы планеты.

Вообще-то это объективная реальность, данная в ощущениях.

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

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

Мне хорошо в Linux годика так с 95-96го. Видел более чем до хера. Даже знаю что вот в D без поганого goto не обошлись. Видел и слышал более чем до хера сказок про очередные языки, объявляемые очередным нашим всем. Но вот Ваше столкновение с реальностью в виде splint меня не скрою, позабавило. =)))

Кстати, откуда дровишки про ошибки именно в софте, а не в общей ошибки проектирования, когда за основу принимаемых решений брались показания одного незадублированного датчика?

ЩИТОПРАСТИТИ??? В означенных авариях виновен не какой-то один «незадублированный датчик», там целая подсистема боролась с пилотами. И победила. Что в достаточной мере показывает как достаточно сложная система, реализованная и применяемая без должного анализа (да-да-да, Ваши пресловутые миллионы строк кода) является причиной гибели людей.

Поэтому весь словесный онанизм про то, что достаточно сложная система должна содержать ошибки, просто обязан быть подтверждён Вашим персональным опытом.

Я такой мысли не допускаю, я говорю о закладках. Т.е., сознательно оставленных закладках. Это именно то, что находят при анализе софта по всему миру.

Moisha_Liberman ★★
()
Ответ на: Ну тогда не третьте на себя ресурсы планеты. от Moisha_Liberman

Не задерживайтесь здесь. Не нужно.

Это, такой вежливый способ сказать «сдохни, тварь!»?

Видимо, я вам на какую-то мозоль любимую наступил, раз вас так разорвало.

Что в достаточной мере показывает как достаточно сложная система, реализованная и применяемая без должного анализа (да-да-да, Ваши пресловутые миллионы строк кода) является причиной гибели людей.

И вы, конечно же, знаете, как без этого обойтись? Т.е. как писать миллионы строк корректного кода.

Поэтому весь словесный онанизм про то, что достаточно сложная система должна содержать ошибки, просто обязан быть подтверждён Вашим персональным опытом.

Еще раз повторю: этот печальный факт подтвержден не только моим опытом. Но и опытом огромного количества других разработчиков.

Если вас и пример с Ариан 5 не убедил, то поинтересуйтесь случаем с Therac-25.

А еще, не будь вы таким клиническим случаем, то могли бы поинтересоваться работой под названием «Making reliable distributed systems in the presence of software errors» известного в узкий кругах Джо Армстронга. И по мотивам чего эта работа была написана.

eao197 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.