Swift компилируется в нативный код, на этом языке можно при желании прямо обращаться к памяти. Ядро можно целиком написать на Swift (на самом деле не без ассемблера, но без него никуда, хотя бы из-за вещей вроде инструкции LGDT), поэтому сравнение с Java на мой взгляд не очень уместно.
Однако, теоретически можно писать модули на Swift и Rust без C, если реализовать некоторый неимпортируемый функционал и не забывать его обновлять при изменениях в ядре.
https://blog.xyz.is/2016/webkit-360.html — может быть, это?
LibreOffice написан на C++, на Python там макросы.
Как сказали выше, атака технически очень хороша, подкачала социнжиниринговая часть. А ведь сработало бы, стоило ему только нажать на ссылку.
Герой статьи вроде диссидент.
Уже нельзя, естественно.
Не думаю, что это хорошо бы читалось. Лучше сделать как в Rust, где можно отметить цикл меткой и использовать break 'label.
"Чужие среди нас"?
То, что его нельзя будет затем ресайзить?
Что касается строк, есть интересная статья на эту тему: https://mortoray.com/2013/11/27/the-string-type-is-broken/
Увы, их там нет. Любопытно посмотреть, были ли предложения в swift-evolution добавить их.
Swift компилируется в нативный код, на этом языке можно при желании прямо обращаться к памяти. Ядро можно целиком написать на Swift (на самом деле не без ассемблера, но без него никуда, хотя бы из-за вещей вроде инструкции LGDT), поэтому сравнение с Java на мой взгляд не очень уместно.
Однако, теоретически можно писать модули на Swift и Rust без C, если реализовать некоторый неимпортируемый функционал и не забывать его обновлять при изменениях в ядре.
Насколько я знаю, к сожалению, нет, так как снова вступает в силу завязанность на макросах.