
yopp
04.11.2016
20:32:08

Mikhail
04.11.2016
20:32:24
Бле йоп ты достал

Иван
04.11.2016
20:32:43
модуль это по сути то же самое что и класс

Google

Mikhail
04.11.2016
20:32:45
Basic -> Object -> module -> class

Zulkar
04.11.2016
20:32:46
детский сад

Aldar
04.11.2016
20:32:49
Модуль это банч оф методс

Mikhail
04.11.2016
20:33:09
так как тоъ

yopp
04.11.2016
20:33:22
вобщем я всем рекомендую купить https://pragprog.com/book/ppmetr2/metaprogramming-ruby-2
и прочитать ещё раз и внимательно

Aldar
04.11.2016
20:33:39
лучше скачать metaprogramming elixir
она 100 страниц всего
а не 300

yopp
04.11.2016
20:34:16
точнее как
элексир это эрланг
в эраланге нет классов

Google

Mikhail
04.11.2016
20:34:31
пф
Тролят тролят
хахаах

Aldar
04.11.2016
20:34:46
но модули есть

Zulkar
04.11.2016
20:34:50

Mikhail
04.11.2016
20:35:06

Zulkar
04.11.2016
20:35:08
в смысле заучивыть определние

Иван
04.11.2016
20:35:22

yopp
04.11.2016
20:35:32
вобщем, спойлер вечера: вас наебали

Aldar
04.11.2016
20:35:51
руби гомоиконности нехватает

yopp
04.11.2016
20:35:53
в руби всё — данные
а не объекты
объект — частный случай данных

Mikhail
04.11.2016
20:36:27
Вообщем волокиту развели, на выходе выдал хуету, простите)
Зря перечитывал

Zulkar
04.11.2016
20:36:42
ну

yopp
04.11.2016
20:36:42
класс это и данные и объект одновременно

Mikhail
04.11.2016
20:36:56
Расслабьтесь, ща найду древнюю хабра статью

Zulkar
04.11.2016
20:37:08

Google

Mikhail
04.11.2016
20:37:09
https://habrahabr.ru/post/143990/

Zulkar
04.11.2016
20:37:13
и все

Mikhail
04.11.2016
20:37:13
читаем и вникаем

yopp
04.11.2016
20:37:13
объект это три вещи: ссылка на собственный класс, класс и таблица ivar
все три вещи — данные

Mikhail
04.11.2016
20:37:37
Чтобы в базе понимать как работает и чем self.method от method отличается

yopp
04.11.2016
20:37:44
вместе эти данные образуют «объект»

Mikhail
04.11.2016
20:37:45
хах

Aldar
04.11.2016
20:37:46
ну и что, в лиспе код это код и данные одновременно, а аст сразу
так что руби по сравнению с лиспом отстает сильно

Mikhail
04.11.2016
20:38:09

Иван
04.11.2016
20:38:20
каешно
почему? там такая же таблица методов, такие же инстансные переменные, такаяя же ссылка на класс и суперкласс

Иван
04.11.2016
20:38:22
должны быть
по крайней мере

Mikhail
04.11.2016
20:38:28
Чтобы сравнивать инструменты у них должна быть одна и та же задача
Почитай для чего матцик и как писал руби

Иван
04.11.2016
20:38:48
а блин суперкласа нет же

Mikhail
04.11.2016
20:38:51
Хотя бы вики забей

yopp
04.11.2016
20:39:06

Mikhail
04.11.2016
20:39:11
Хорошая статья

Google

Aldar
04.11.2016
20:39:12
мейнстрим языки потому и мейнстрим
потому что расчитаны на массу

yopp
04.11.2016
20:39:33
хотя на фоне остального, ссылка очень неплохая

Aldar
04.11.2016
20:39:33
взять тот же го

yopp
04.11.2016
20:39:43
но в целом, тоже ряд моментов упущен

Aldar
04.11.2016
20:39:58
создан специально примитивным

yopp
04.11.2016
20:40:01
основной момент, в руби всё — данные

Mikhail
04.11.2016
20:40:07
Мне не нужно изучать волны, чтобы по радио телефону вызвать такси

yopp
04.11.2016
20:40:10
для представления данных существуют объекты

Admin
ERROR: S client not available

yopp
04.11.2016
20:40:17
не все объекты одинаково представялют данные

Иван
04.11.2016
20:40:31
то есть отличие структуры модуля от структуры класса только осутствие ссылки на суперкласс?

Zulkar
04.11.2016
20:40:31
слово данные имеет какоето абстрактоное определени

Mikhail
04.11.2016
20:40:45
Статьи достаточно чтобы понять и дальше разобраться как объектная модель устроенна.

yopp
04.11.2016
20:40:51
например 1 совершенно неспосотовимые с BasicObject.new данные

Иван
04.11.2016
20:42:00
ну и чем от класса то отличается

yopp
04.11.2016
20:42:02
у модуля нет «суперкласса», потому что данные о «суперклассе» существуют для объектов которые описывают тип данных «класс», и там уже есть «суперкласс»
модуль это родитель класса, который переносит данные в виде таблицы методов
класс, это наследник модуля, который умеет порождать данные в виде «объекта»

Google

yopp
04.11.2016
20:43:02
тоесть он может создать новые данные, в определённом формате

Eugene
04.11.2016
20:43:03
А по-моему, наоборот учит кастовать файерболы второго уровня.
коменты с хабра божественны

yopp
04.11.2016
20:43:54
короче, класс это рекурсия

Aldar
04.11.2016
20:44:16
а что такое метакласс?

yopp
04.11.2016
20:44:31
собственный класс объекта :)

Aldar
04.11.2016
20:44:33
вот я сделал j = 5

Mikhail
04.11.2016
20:44:37
это класс родительсткого метакласса

Иван
04.11.2016
20:44:39

Mikhail
04.11.2016
20:44:47
я один не понимаю о чем говорит йоп?

Aldar
04.11.2016
20:44:50
j = 5
def j.m
puts "Omg"
end
куда метод m попадает?

Иван
04.11.2016
20:45:12
ну вот это и есть синглтон класс объекта j

Mikhail
04.11.2016
20:45:13
это ты запилил класс для объекта

yopp
04.11.2016
20:45:16

Mikhail
04.11.2016
20:45:18
только для этого объекта

yopp
04.11.2016
20:45:31
в специальную таблицу для специальных данных!

Zulkar
04.11.2016
20:46:09
это называется магия руби!

Иван
04.11.2016
20:46:11
но эта таблица связана с опреденным классом

yopp
04.11.2016
20:46:15