Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Mar 27 2015 20:26
    User @sudodoki banned @doneck-russia from this room
  • Mar 19 2015 20:58
    User @mr-mig banned @pgr-ru from this room
  • Mar 15 2015 01:09
    User @mr-mig banned @putin-hero from this room
  • Mar 15 2015 01:09
    User @mr-mig banned @stepan-bendera from this room
Vladyslav Siriniok
@siriniok
@mevsme бо це загальноприйнято. Не знаю звідки пішло. Насправді, так зручніше
Yuriy Yarosh
@yuriy-yarosh
  • пішло з часів фортрану
Vladyslav Siriniok
@siriniok
а трьох крапок в Rust нема?
Yuriy Yarosh
@yuriy-yarosh
Нема
Paul Colomiets
@tailhook
Ну как по мне это не то что-бы legacy, это удобно для избегания off-by-one bug's:
  1. a[0..3] -- возвращает 3 элемента
  2. a[2...7] -- возвращает 5 -- т.е. просто отнимаешь от старшего индексла младший
  3. a[0..2], a[2..5] -- разделить массив на два slice'а
Когда там переменные это еще более заметно
И три точки в rust'е есть... Но они не используются для slice'ов. И можно только в for'е или в match'е писать
Yuriy Yarosh
@yuriy-yarosh
  • мав на увазі шо їх нема для слайсів
Vladyslav Siriniok
@siriniok
а, стоп, у рубі інакше
 > [1, 2, 3, 4][1..4]                                                                
 => [2, 3, 4]
чи в раст так само?
я трохи туплю
mevsme
@mevsme

отже, не так само )

але я в голові читаю "з першого по четвертий" і мені хочеться щоб було 4 значення, а не 3

Yuriy Yarosh
@yuriy-yarosh

У рубі, так як каже @mevsme

array[start, length]
array[from..to]

У расті

array[from..to+1]

Тобто

array[0..4]

Поверне 4 елементи

mevsme
@mevsme
This message was deleted
@yuriy-yarosh array[0..4] в Раст поверне 0, 1й, 2й і 3й
Yuriy Yarosh
@yuriy-yarosh
Так, туплю
Vladyslav Siriniok
@siriniok
я перевірив, в раст точно так само як в рубі
все логічно, бо так зручніше писати:
2.2.2 :025 > a = [1, 2, 3, 4]
 => [1, 2, 3, 4] 
2.2.2 :026 > a[1..a.size]
 => [2, 3, 4]
Yuriy Yarosh
@yuriy-yarosh
Значить я туплю
Пам'ятаю що нотація '''array.slice(1, array.size())''' з'явилась ще в фортрані.
mevsme
@mevsme
@siriniok *thumbs_up*, прояснилось
Vladyslav Siriniok
@siriniok
@mevsme єдине, чого я не розумію — це чому тут дві точки, а не три
Yuriy Yarosh
@yuriy-yarosh
Вирішили колись що три точки то забагато ...
mevsme
@mevsme
що ти хоч, коли в них function це fn
економлять, йпрст
Vladyslav Siriniok
@siriniok
ай, блін...
:smile:
всьо не так!
2.2.2 :034 > [1, 2, 3, 4, 5][1..4]   
 => [2, 3, 4, 5] 
2.2.2 :035 > [1, 2, 3, 4, 5][1...4]   
 => [2, 3, 4]
mevsme
@mevsme
о-о-о )))
mevsme
@mevsme
фа-а-а-ак, оце надлишковість %)
Yuriy Yarosh
@yuriy-yarosh
Де саме ?
Vladyslav Siriniok
@siriniok
x + 1
в чому надлишковість?
mevsme
@mevsme
в /// для коментів
Vladyslav Siriniok
@siriniok
а в чому прикол писати тип значення функції в кінці?
mevsme
@mevsme
чому ж те саме не вілпити так
/*
бла-бла-бла
*/
Vladyslav Siriniok
@siriniok
і в скалі так
mevsme
@mevsme

а в чому прикол писати тип значення функції в кінці?

та до синтаксиса Раст в мене щось взагалі багато питань. Я не єдрьоний кодер, взагалі нічого не знаю і серйозно не працював.

Але в if зате можна упустити лапки )

if x == 5 {
    println!("x равняется пяти!");
}
Vladyslav Siriniok
@siriniok
@mevsme так так ніхто не пише все одно
/*
*/
пишуть
/*
*
*
*/
mevsme
@mevsme
/*
 * дуже часто бачив, як так роблять
 * і коментити куски коду можна легко і швидко
 * і по ходу в Раст такого нема, що, імхо брєд
 */
Andrii
@j2ko
ну в пайтоні теж саме
if x == 5:
    print "something"
Vladyslav Siriniok
@siriniok
@mevsme нафіга такий коментар, скажи?
найкращі коментарі — це #
Andrii
@j2ko
ну растамани ще пожаліли - могли <!-- --> забабахити )
Vladyslav Siriniok
@siriniok
як в жс, ага
mevsme
@mevsme

Можна описати функцію і список параметрів, що вертає
Потім докерами задокументувати
А ще закоментити великий кусок кода швидко

решітку ніколи не використовував

В Раст така ж ідея
/// от тут іде опис
/// і параметри
/// і приклад
/// але три похилих лінії... це дофіга

Мова про те, що cинтаксис Rust намагались зробити мінімальістичним, а потім таке бачиш, і відразу запитання виникають: как, зачем, почему

Це відповідь на

нафіга такий коментар

Vladyslav Siriniok
@siriniok
ну так, могли б обійтися двома //