NermaN 𓅂
эти два похожих но разных типа с похожими названиями вводят в заблуждение
Alex
эти два похожих но разных типа с похожими названиями вводят в заблуждение
они очень хорошо объясняют как работает память в расте
Alex
есть контейнеры и ссылки
Alex
я тоже поначалу ничерта не понимал.
Alex
Слайс это ссылка
Alex
Адрес и длина
Alex
Модет тип еще, не шарю
Alex
Хотя тип скорее всего на уровне компеляций
Alex
Ну так это ссылки
Alex
Естественно, другой тип
Alex
Я говорил именно про концепцию кто чем владеет
Маjко
Коллеги, можно ли как-то написать From<MyType<T>> for MyType<U>? Компилятор выдаёт конфликт с бланкетной реализацией From<T> for T.
> Specialization and the trait system implementation are very much in flux these days. Supporting things like impl<T, U> From<Option<T>> for Option<U> where U: From<T> is very much desired – it was mentioned in the extending-?-to-more-types, for example – but whatever that will be probably can’t be determined until those prerequisites are complete, and right now that’s lower priority than the 2018 edition
Маjко
TL;DR денег нет, но вы держитесь
Маjко
А откуда это кстати?
https://internals.rust-lang.org/t/pre-rfc-default-fn-impl-in-std-from/7799/7
NermaN 𓅂
вобщем о PHP против Rust: pwm на частоте 1 khz с PHP грузил процессор на 35%, то же самое с Rust на 3%
NermaN 𓅂
я вообще надеялся на еще меньшую нагрузку, но и так пойдет =)
Маjко
я вообще надеялся на еще меньшую нагрузку, но и так пойдет =)
Не забывай, что твой код скорее всего в данный момент не максимально оптимален) Скорее всего есть простанство для оптимизиции
Маjко
Вполне можно приблизиться к сям
NermaN 𓅂
я смог впилить Closure, но так и не понял почему синтаксис такой странный
NermaN 𓅂
NermaN 𓅂
я забыл стереть <F> во втором варианте
Маjко
Он не странный замыкание — дженерик тип
Маjко
Анонимный вообще
Маjко
Ты указываешь трейт Fn нужный
Маjко
И принимаешь на вход некую кложу с нужным тебе интерфейсом
Маjко
Можно еще так (щас пол чата триггернет): fn pwm(..., f: impl Fn(&Gpio))
NermaN 𓅂
Можно еще так (щас пол чата триггернет): fn pwm(..., f: impl Fn(&Gpio))
да так тоже работает, спасибо, такой синтаксис мне кажется более душевным
Маjко
да так тоже работает, спасибо, такой синтаксис мне кажется более душевным
Может быть кортима права про дружелюбность к новичкам нового синтаксиса) Главное не суй его вовсем уж везде Когда один трейт — норм, не надо писать impl Trait1 + Trait2 + Trait3
NermaN 𓅂
Интересно как в rust повысить приоритет потока и поможет ли это
NermaN 𓅂
я пока нашел только libc::pthread_setschedparam который почему-то unsafe
Маjко
я пока нашел только libc::pthread_setschedparam который почему-то unsafe
Естественно ансейф, это же вызов сишного FFI
Маjко
Раст никак не может гарантировать что ты передаешь в FFI и что из него получаешь И как преобразовываешь в растовые сейф типы
NermaN 𓅂
На ноде же программируют микроконтроллеры отбельные люди
Маjко
Отбельные-отбельные
Kerrigan
NodeMCU
там луа
պլհկ
На ноде же программируют микроконтроллеры отбельные люди
Возможно вы имели в виду "отбитые"
Anonymous
Маjко
там луа
https://stackoverflow.com/questions/32301029/how-to-run-node-js-on-esp8266-nodemcu-dev-board
Маjко
Но можно и ноду))
Kerrigan
> So, the answer is you cannot run node.js on an ESP8266.
Kerrigan
нельзя
Маjко
Окей, окей, js
Маjко
Не нода
Berkus
вообще мне наверное одному кажется что отсутствие потребности в return снижает читаемость кода?
есть такое, особенно когда в половине мест он есть а в половине - нет. неконсистентно. Но когда привыкнешь больше к функциональному стилю, мапам и лямбдам - станет понятно что без return гораздо, гораздо лучше.
Vladimir
есть такое, особенно когда в половине мест он есть а в половине - нет. неконсистентно. Но когда привыкнешь больше к функциональному стилю, мапам и лямбдам - станет понятно что без return гораздо, гораздо лучше.
+ ретурн хорош только в начале блока чекаются разные инварианты, и то, почти всегда можно обойтись возвращением ошибки, по этому макрос bail заходит лучше
NermaN 𓅂
минуту сборка на rpi занимает после изменений, компилятор янво не относится к быстрым частям у раста
Kerrigan
релиз на ней не собирай
NermaN 𓅂
Kerrigan
сорь, у меня интернеты поломаны - даже погуглить не могу
NermaN 𓅂
хорошо хоть скомпилированный код быстро запускается
NermaN 𓅂
теперь, после переустановки системы =)
Berkus
ну согласись это была кривая система и ее стоило переустановить!
Loyd
Чет hl++ был ни о чем
Loyd
Кто хотел но не попал, ничего не потеряли
Kerrigan
Чет hl++ был ни о чем
те же доклады, что и 4 года назад?
Loyd
те же доклады, что и 4 года назад?
Ну, доклады-то разные, наверное, но полно слишком "менеджерских"
պլհկ
То же самое и на прошлом московском было по ощущениям
NermaN 𓅂
expected closure, found a different closure
NermaN 𓅂
какая понятная ошибка
NermaN 𓅂
помогите пожалуйста как сделать пустую переменную которая будет потом содержать замыкание?
պլհկ
Option
NermaN 𓅂
error[E0562]: impl Trait not allowed outside of function and inherent method return types
NermaN 𓅂
я не могу чтоли свободно создавать замыкания просто так?
պլհկ
создавай на здоровье
NermaN 𓅂
let job: Option<Fn(&Gpio)>; if cmd == "stop" { job = |gp| { stop(&gp); } }
NermaN 𓅂
он тогда совсем странные ошибки начинает выдавать, в духе expected trait std::ops::Fn, found closure
NermaN 𓅂
тоесть Fn это не замыкание как в гайде, я так понимаю
NermaN 𓅂
в гайде написано что Fm это замыкание =\
NermaN 𓅂
потому что если Fn это замыкание, то другими словами компилятор говорит что ожидал замынкание, получил замыкание -> ошибка