Маjко
fn new))))
A* new_a() { return malloc(sizeof(a)); }
Маjко
С ооп язык
Anonymous
просто конвенция
да, я уже упомянул это
Alex
A* new_a() { return malloc(sizeof(a)); }
мусор получишь же, не?
Alex
malloc разве обнуляет?
分解物質
а, ты про это. да
Маjко
мусор получишь же, не?
Ну сделай calloc. Сделай в методе инициализацию объекта. Разница?)
分解物質
единственное что меня смущяет в rust std это отсутствие модуля для работы с &[char] | Vec<char> на подобе &str и String
分解物質
может я чего-то не понимаю
分解物質
ну
Anonymous
зачем тебе Vec<char>
分解物質
Юникод же.
char это же полная руна а не u8
Маjко
А, ты про это. Ну да, есть случаи, когда это могло бы пригодиться
分解物質
зачем тебе Vec<char>
операции над закодированными строками сложнее и дольше чем над раскодированными
Anonymous
какие операции?
Маjко
какие операции?
Индексация
Anonymous
Индексация
и что для этого нужно в std
分解物質
какие операции?
замена символа посреди закодированной строки может потребовать сдвига частьи строки
Маjко
и что для этого нужно в std
Операции над массивами символов)
Anonymous
Vec::get?
分解物質
Есть итератор Chars, его нельзя сделать из &[char]?
можно, но для &[char] нет такого же набора функций как для &str. хотя это не такая уж и проблемма.
Маjко
Vec::get?
И руками реализовывать все строковые функции?
Anonymous
Индексация
分解物質
Индексация
ты понимаешь как юникод работает?
Anonymous
ну вроде-как да
Маjко
Индексация
Индексация по строкам типа &str дорогая потому что юникод, по этому @yellow_apple хочет строки &[char], представленные массивом символов, где индексация дешевая, но для таких строк не реализованы строковые функции, такие же как у &str и как строками ими сейчас пользоваться невозможно
分解物質
ну вроде-как да
символы могут кодироваться различным числом байт, чтобы найти определённый по счёту символ надо парсить всю строку до этого символа
Anonymous
я изначально не понял что мешает конвертировать между двумя типами по нужде
Маjко
символы могут кодироваться различным числом байт, чтобы найти определённый по счёту символ надо парсить всю строку до этого символа
Видимо те, кому это реально критично по производительности, написали уже свои велосипеды, а крейт оформлять никто не торопится.
Dmitry
utf16 ❤️
Anonymous
thx
Маjко
utf16 ❤️
Увы, восьмерка уже стандарт и двигаться не собирается. ЦА не поняла бы)
Anonymous
в emacs есть плагин для utf-512
Danila Matveev
utf16 ❤️
там тоже не так просто надо реализовывать сжатие строк
Маjко
в emacs есть плагин для utf-512
Они готовятся к первому контакту и общению с сотнями инопланетных рас с уникальными письменностями?
Маjко
Хотя от авторов emacs я не знаю чего ожидать)
Anonymous
какая-то неэффективная письменность
分解物質
ты понимаешь как юникод работает?
упс, имел в виду не юникод а utf-8
Маjко
там тоже не так просто надо реализовывать сжатие строк
Быстрее старого-доброго ASCII и неэффективных по памяти widechars ничего нет)
Dmitry
разве что mongodb *ba-dum-tss*
Маjко
Сильвербуллет)
Anonymous
в rust не хватает emoji в названиях переменных
Маjко
в rust не хватает emoji в названиях переменных
Между прочим ничто не мешает
Anonymous
ага
Dmitry
притащу баян, вдруг кто не видел еще
Dmitry
Маjко
У меня кажется появилась идея для плагина компилятора
Sergey
обфусцировать?
Маjко
Хотя тут можно и макросом обойтись
Danila Matveev
а такое можно сделать? def `(╯°□°)╯︵ ┻━┻` = throw new RuntimeException("Should not be implemented")
Dmitry
в scala можно
Dmitry
oh wait..
Маjко
Проорал
Danila Matveev
я по фану такое в тесты засунул
Anonymous
вызывается только с `?
Dmitry
канеш
Danila Matveev
но вот в скалке, да, можно символ аст написать
Danila Matveev
да, потому что это уже не строка
Anonymous
лол у меня при попытке вставить emoji sbt console крашится
Маjко
https://rosettacode.org/wiki/Unicode_variable_names#Rust
Маjко
;C
Маjко
http://play.integer32.com/?gist=df6623a91326c45723e4809b4578a423&version=stable
Маjко
Зато вот так можно)
Anonymous
в расте пространство имен такое же как в крестах или додумались получше сделать?
Маjко
Смотря что ты имеешь в виду
Anonymous
Маjко
Задай конкретный вопрос, постараюсь ответить
Anonymous
лол
Маjко
Это где? :D
Anonymous
это если в set_hook сделать panic
Anonymous
Смотря что ты имеешь в виду
я имею ввиду то, что в крестах пространство имен позволяет так говнокодить, что словами не описать
Маjко
я имею ввиду то, что в крестах пространство имен позволяет так говнокодить, что словами не описать
Я не настолько хорошо знаю C++ и не пытался там говнокодить с пространствами имен)