@proRuby

Страница 966 из 1594
Roman
09.12.2017
16:55:10
как ты патчишь?

Dima
09.12.2017
16:59:25
как ты патчишь?
class Rand def name *n raise end end

как ты патчишь?
так для модуля и для класса

Roman
09.12.2017
16:59:56
там еще Kernel#rand есть вроде

Google
Dima
09.12.2017
17:01:16
там еще Kernel#rand есть вроде
https://gist.github.com/lbvf50mobile/080a96d9ed5b13bbcb6d4c75ebdcb425

дак там загогулина какая-то

я пропатчик и кернел и ранд

и на оба метода

все равно половина тестов проваливается

Но все равно это rand

Roman
09.12.2017
17:04:51
хм

до ноута дойду попробую пройти

Dima
09.12.2017
17:05:52
но пока не понимаю



Короче с-call это вызов с-language routine и оказывается так можно вызывать rand

Google
Dima
09.12.2017
17:26:22
и надо как-то это приостановить

Ну что рубисты кто знает как звать метод чтоб он был c-call?

Я нашел ответ: p rand # call p Kernel.rand # c-call

Ништяк, двигаемся дальше.

Иван
09.12.2017
18:17:23
@lbvf50 Kernel.singleton_methods.include?(:rand)

Dima
09.12.2017
18:17:38
Иван
09.12.2017
18:17:38
дальше наврено догадаешься

Dima
09.12.2017
18:17:46
дальше наврено догадаешься
да я уже прошел ката

Иван
09.12.2017
18:18:14
это такая реализация у module_function метода

Dima
09.12.2017
18:19:27
это такая реализация у module_function метода
вот тут по подробней. что такое modlue function метод, это тот который становиться методом класса?

Dmitriy
09.12.2017
18:19:51
module_function это сахар

module Example def self.hello_world end private def hello_world end

типо вот

Иван
09.12.2017
18:20:37
ну методы rand и srand вроде сделаны через module_function

или не?

в kernel модуле

Dima
09.12.2017
18:22:27
module_function это сахар
ясно. т.е. они потмо становятся методами класса

при подмешивании

ну методы rand и srand вроде сделаны через module_function
я пока не знаю что такое module_function гуглю

Dmitriy
09.12.2017
18:22:56
ну суть в том, что ты не можешь этот метод использовать во внешнем мире классов )))

Google
Dmitriy
09.12.2017
18:23:01
функциональщина

Иван
09.12.2017
18:23:04
https://ruby-doc.org/core-2.2.2/Module.html#method-i-module_function

Dima
09.12.2017
18:23:36
аааа точно

модуль.функция

все работа. да modlue_function

я через self ее и перебил

https://apidock.com/ruby/Module/module_function

а что это за синтаксис такой class << Random

?

Особенно про это где можно почитать: class << Kernel?

Иван
09.12.2017
18:35:17
это открытие синглтон класса

Dima
09.12.2017
18:35:28
что обект для <<?

где в документации изучить этот вопрос

Всеже до чего огромен руби: https://stackoverflow.com/questions/2505067/class-self-idiom-in-ruby

уже на всякие С++ и C# как на детский лепет реагируешь.

Dmitriy
09.12.2017
18:38:39
lol

Dima
09.12.2017
18:40:28
https://stackoverflow.com/a/2025976/8574922

Alex
09.12.2017
20:08:36
уже на всякие С++ и C# как на детский лепет реагируешь.
с++ гораздо сложнее и его экосистема на порядки больше а ты разве не на с++ раньше работал?

Google
Dima
09.12.2017
20:09:05
можно это считать работой? с одной стороны - да, но в контексте данного вопроса нет

Roman
10.12.2017
13:04:15
Alexey
10.12.2017
13:04:32
я даже грамматики посмотрел, руби и с++, и последняя обширнее

другой вопрос в выразительности

Dima
10.12.2017
13:58:08
Сильное заявление.
Видимо не для вас. Понимаю С/C++ такие исторические сущности, что для многих людей критика этих языков покушение на святыню.

Но на самом деле это не удобные языки для работы.

Nikolay
10.12.2017
14:35:41
Dmitriy
10.12.2017
14:38:30
Если что ))

то Ruby на C написан

просто оставлю это тут

Dima
10.12.2017
16:26:59
тут не критика, а факты - говорить что с++ легче, чем руби просто смешно
Ага. Только я не говорил слово "лечге", его сказали вы. я написал что реагирую "как на детский лепет".

И это далеко не одно и то же. Опять 25, начинается спор с свыдуманными аргументами приписанными собеседнику.

то Ruby на C написан
А Си с большой долей вероятности написан на Ассемблере. А ассемблер когда-то писался на двоичном коде.

Anton
10.12.2017
16:29:29
Вот вам шутеечка в тему



Vladimir
10.12.2017
16:58:18
so... it's really for fun ..)

Dima
10.12.2017
17:32:21
Вношу ясность, я читаю что языки C/C++/C# засоряют исходный код программы большим количеством технологической информации, не имеющей ценности для конкретного смысла программы. Например код нахождения общих элементов массива в руби предельно короток и понятен, а в С и С++ он будет изобиловать технической инфой. По этому "детский лепет" это что-то засоренное разными обрывками фраз и звуков. А руби он и лаконичный и одновременно огромный по количеству вариантов изложения. Пологаю ясность внесена.

Google
Dima
10.12.2017
17:51:30
Всё таки у си и си++ своя ниша есть
100% это факт. Си по моему вообще основа основ для инженера.

тот язык который позволяет работать с оборудованием на приемлемом уровне.

С++ еще туда сюда, можно и на более абстрактные языки переходить. а вот С это практический костяк современной вычислительной техники. От малых контроллеров до больших вычислительный центров.

Mikhail
10.12.2017
17:53:27
Да не только. И чистый си в изучении действительно проще чем руби, но гораздо сложнее в использовании

Высоконагруженные сервера на плюсах

Правда редко его возможности используются даже на таких серверах

Потому что сложно

Dima
10.12.2017
17:56:04
Да не только. И чистый си в изучении действительно проще чем руби, но гораздо сложнее в использовании
Сложно сказать. Работа с памятью. Байты, биты. Арифметика указателей. Тоже свои сложности.

Mikhail
10.12.2017
17:59:36
Ну это проще как по мне, чем какие нибудь миксины :)

Или другие не очевидные вещи руби

А си он прямолинеен как топор

Страница 966 из 1594