Всё таки среднестатистически код Паскаля обходится без указателей. Местами — да, но это скорее исключение. Либо какие-то довольно узко-специальные места типа низкоуровневой работы с графикой и банарными данными. Вероятность выстрела в ногу при таком уровне программирования существенно снижается.
Код си же изобилует указателями чуть менее чем весь. Вот на гитхабе открыл первый встречный модуль (что бы не быть голословным): github.com/jwilberding/bcp/blob/master/bcp.c
видим массово рассыпанные '&', '*'
всё проще: существуют системы, которые 'туда' отправляют данные по Земле, а назад приходят данные со спутника. и никто их не фильтрует. достаточно обычной приемной 'тарелки'. это работало уже лет 10 назад. а сейчас, думаю, еще больше развилось.
элементарно, у меня даже софт остался :) ставишь тарелку, и реально гора бесплатного контента у тебя валится прямо на жесткий. успевай разгребай. даже наземно ничего раздавать не обязательно, пассивно всё можно. и там будет весь контент — и пофильтрованный и что угодно. борьба с ветряными мельницами, в общем
Беда в том, что часто как раз недовольные самые эффективные. А нефти надолго не хватит. Собственно — мы все видим цены на неё. 'Той' она уже не будет никогда. Благодаря Маску в том числе. И это отлично.
И кто будет создавать добавленную стоимость, если все уедут? Полиция может? :)
Всё течет, всё меняется. Популярность языков меняется. Пока что Питон на взлете. Надолго ли? К слову, визуал Бейсик тоже на взлете. Рано Бейсик хороним :)
Биндинги в Delphi/FPC есть практически ко всем распространенным библиотекам. Я так с ходу и не вспомню, для чего нет сопряжения. Хотя, скорее всего, можно найти.
К слову говоря, это не так уж плохо. И в новых паскалях уже давно к строкам написаны хелперы. И можно обращаться вот так: s.Length, s.ToInteger, s.Replace и т.п. И это удобно, на самом деле.
Старые варианты, конечно, никуда не делись: Length(s), StrToInt(s), StringReplace(s, ...)
Насколько я знаю все Delphi IDE написаны на Delphi. Правда, в новых средах кода Delphi там не 100%.
Lazarus/FPC написан полностью на pascal. Компиляторы, среда. Среда, к слову, работает, в отличие от Delphi прямо по месту — Линукс, МакОС, Распбери. Работает почти на любом железе и операционках.
Принципиально не решает но то, что хотя бы переполнение буфера на pascal строках не работает, насколько я знаю, уже только одно это существенно улучшить безаопасноть. Строгая типизация помогает надежности. Внешние тулы (Эврикалог) помогает закрыть возможность обращения к разрушенным данным. Много всего, в общем. С SQL инъекциями, конечно, нужно самим бороться. Тут увы.
Да и Delphi уже стал частично бесплатный (Community Edition).
Мы на Лазарусе недавно выкатили приложение в продакшн под Линукс. Порядка 600-та тысяч строк, работает, продаётся.
Код си же изобилует указателями чуть менее чем весь. Вот на гитхабе открыл первый встречный модуль (что бы не быть голословным):
github.com/jwilberding/bcp/blob/master/bcp.c
видим массово рассыпанные '&', '*'
И кто будет создавать добавленную стоимость, если все уедут? Полиция может? :)
Старые варианты, конечно, никуда не делись: Length(s), StrToInt(s), StringReplace(s, ...)
Lazarus/FPC написан полностью на pascal. Компиляторы, среда. Среда, к слову, работает, в отличие от Delphi прямо по месту — Линукс, МакОС, Распбери. Работает почти на любом железе и операционках.
Мы на Лазарусе недавно выкатили приложение в продакшн под Линукс. Порядка 600-та тысяч строк, работает, продаётся.