Berkus
պլհկ
Я подозреваю что у них тупо времени нет заниматься
Berkus
то есть ты выдвинул себя волонтером на написание спеки языка? давай вперед, я готов помахать тебе смайликом на гитхабе
Berkus
прославишься как минимум
պլհկ
Польза от нее только альтернативным реализациям
Berkus
https://docs.rs/im/10.2.0/im/vector/struct.Vector.html#method.snoc блядь сука вы серьезно
պլհկ
а что не так?
Anonymous
case и esac в баше тебя тоже смущают?
պլհկ
это же традиция
պլհկ
https://www.haskell.org/hoogle/?hoogle=snoc
Loo
Loo
В чем проблема?
Evgεny
C O N S
N
O
C A S E
S
A
C
Evgεny
CAR @ CDR
Berkus
не вижу смысла тащить дублирующиеся имена методов для какого-то пидора из лиспа которому может захотеться пописать на расте, вот правда
Berkus
особенно учитывая что до этого чувак целый параграф расписывал как он не любит заимствовать имена если в расте уже есть устоявшися
պլհկ
это же immutable data structures, так что ожидается что юзать будут скобкоебы или хачкелисты
Berkus
Care has been taken to use method names similar to those in Rust over those used in the source material (largely Haskell) where possible (eg. Vector::new() rather than Vector::empty(), HashMap::get() rather than HashMap::lookup()). Where Rust equivalents don't exist, terminology tends to follow Haskell where the Haskell isn't too confusing, or, when it is, we provide more readily understandable aliases (because we wouldn't want to deprive the user of their enjoyment of the word 'snoc,' even though it's reportedly not an obviously intuitive term).
что вообще
Αλεχ
Αλεχ
лол
Αλεχ
миссклик
Αλεχ
Berkus
ну вот и отлично, значит будет полная спека
Loo
https://github.com/rust-lang/rust/pull/50233
Αλεχ
cap: [0, !0][(mem::size_of::<T>() == 0) as usize]
Αλεχ
мда
Αλεχ
очень понятно
պլհկ
https://rust-lang-nursery.github.io/rust-cookbook/intro.html
найс
Loo
Loo
погенерил числа - всё, комплюктер сайенс
Evgεny
тут и не поспоришь
Matwey
нашел медиану - это дата майнинг
Matwey
посчитал МНК - это машин лёрнинг
Berkus
Маша? Ты учишься?
Safort
Мы давно решили, что правильно говорить "машины Ленина".
Alex
маша-буч
Loo
Cat
подскажите что-нибудь почитать про failure, ридми и дока слишком скупая на примеры юзкейсов
RS
исходники?)
պլհկ
https://boats.gitlab.io/failure/
Cat
123
let mut entry: PROCESSENTRY32;
if Process32First(snapshot, &mut entry as *mut PROCESSENTRY32) == 1 {...}
Весь код обернут в unsafe блок, выдает ошибку о том, что entry не инициализирован. Как исправить? Можно обойтись без инициализации?
պլհկ
mem::uninitialized
123
спасибо, работает.
Loo
https://play.rust-lang.org/?gist=97c0f6fb84b07ace22f5fff97abec574&version=stable&mode=debug
Loo
поцаны сделайте во все стороны
Loo
кто тут мастер на все руки
Євгеній 😌
Nikita
на эмодзях всё равно ломается
Nikita
https://play.rust-lang.org/?gist=98f4ac3b5637188e72ed7548a667208f&version=stable&mode=debug
Cat
https://boats.gitlab.io/failure/
боже, какая всё-таки отрывочная документация, аж горит
https://play.rust-lang.org/?gist=fea9df1b832996d84f5a9b7d13652d39&version=stable&mode=debug
что я делаю не так?
Bugworm
Cat
Loo
Bugworm
Cat
պլհկ
- fn try_it() -> Result<(), Error> {
+ fn try_it() -> Result<(), MyError> {
պլհկ
починил
Cat
так и было
Cat
говорит, MyError не имеет .cause()
Cat
ХОТЯ
պլհկ
умвр
Cat
да, точно, вспомнил
Cat
в этой ситуации есть следующий вопрос: почему .cause() не выдаёт описание ошибки?
Cat
a.cause() -> None
Cat
собственно, из-за этого я нашёл, что должно быть -> Result<T, failure::Error>, но так не работает (см. выше)
պլհկ
#[macro_use] extern crate failure;
use std::fmt;
use failure::ResultExt;
use failure::{ Error, Fail };
#[derive(Fail, Debug)]
struct MyError;
impl fmt::Display for MyError {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
write!(f, "An error occurred.")
}
}
fn try_it() -> Result<(), Error> {
Err(MyError{})?
}
fn main() {
let a = try_it().unwrap_err();
println!("{:?}", a.cause());
}
Cat
Т.е. Все нужно заворачивать в failure::Error?
պլհկ
https://boats.gitlab.io/failure/custom-fail.html#caveats-on-this-pattern
можно так
պլհկ
у тебя одна ошибка у нее cause нет
պլհկ
cause() показывает вложенную ошибку
Loo
RS
можно будет потом ещё диагоналей добавить)
RS
я ещё забыл капасити прибавить, хотя мелочь так-то.
Loo