@react_js

Страница 1224 из 5115
andretshurotshka?❄️кде
28.04.2017
16:52:48
если бы)

? ethorz
28.04.2017
16:54:01
todo лист ?

уже сделан)

Google
Monday Begins on Saturday
28.04.2017
16:54:03
зачем реверсить? у телеграма апи не открытое чтоль?
Открытое то оно открытое, только вот документация там уже как года 3 не обновлялась

Для golang'а сейчас пишу либу(на самом деле форк другой либы) по 65-й версии протокола. Большую часть инфы подчерпнул именно из чужих клиентов и других библиотек.

Паше видимо просто в лом документацией заниматься. Ну хотябы основная суть API - комуникация с сервером не изменилась.

Monday Begins on Saturday
28.04.2017
16:57:42
С - стабильность
Зато какой потрясающий квест. Я за месяц успел полазить в PHP, C#, C++, nodejs клиентах и даже в ObjectiveC.

Пока разберешься что как работает кучу всего перекопаешь.

Ilnur
28.04.2017
16:59:08
ну можно смело писать в резюме "Fluent php, c#, c++ и вот это все"

Monday Begins on Saturday
28.04.2017
16:59:19
?

Abu
28.04.2017
16:59:24
в голос

Ilnur
28.04.2017
16:59:31
а зачем своя либа понадобилась?)

andretshurotshka?❄️кде
28.04.2017
16:59:51
других нет(

Дмитрий
28.04.2017
16:59:56
Есть

Но я не могу об этом говорить

Google
Дмитрий
28.04.2017
17:00:14
До сих пор глаз дёргается((

andretshurotshka?❄️кде
28.04.2017
17:00:38
Monday Begins on Saturday
28.04.2017
17:01:40
а зачем своя либа понадобилась?)
Ну на Go была только одна нормальная, но она не поддерживала каналы и мегагруппы. А я только Go месяц назад начал учить и ради fun'а решил её форкнуть и запилить всё по-нормальному. Не уверен, что получилось.

Короче это была моя попытка в Golang разобраться. Итог: https://github.com/shelomentsevd/mtproto

Дмитрий
28.04.2017
17:03:43
Пока разберешься что как работает кучу всего перекопаешь.
Я изучил оптимизацию в V8, нестандартную криптографию, бинарные протоколы, воркеры, TypedArrays, asm.js и жутко упоротый функциональный язык от братана дурова, матемматика, который посчитал, что описывать api на самоделе с dependent types — это хорошая идея

Monday Begins on Saturday
28.04.2017
17:04:00
На самом деле просто в телеграмме не хватает спам-ботов которые будут читать переписку в каналах и стучаться тебе в личку с абсурдными объявлениями по увилечению всего и вся?

Дмитрий
28.04.2017
17:05:03
На самом деле просто в телеграмме не хватает спам-ботов которые будут читать переписку в каналах и стучаться тебе в личку с абсурдными объявлениями по увилечению всего и вся?
Я наоборот сразу решил, что раз такая либа нарушает баланс сил, то первым же делом надо выпустить на её основе бота, который будет банить всю эту чернь прямо пачками ?

Monday Begins on Saturday
28.04.2017
17:05:24
только они в чаты ходят
А чего не ходят?

Хотя протокол вроде уже разобран

Monday Begins on Saturday
28.04.2017
17:07:21
А чего не ходят?
а блин. частицу "не" упустил

andretshurotshka?❄️кде
28.04.2017
17:13:55
Monday Begins on Saturday
28.04.2017
17:15:15
Ооо это как надо упороться чтобы писать сервер телеграма
Ну это на крайний случай задача. Когда делать совсем нечего будет. Подозреваю, что там надо всю библиотеку перелопачивать для написания сервера.

Дмитрий
28.04.2017
17:15:21
Сериализацию с dependent types на языке без дженериков)

Mike
28.04.2017
17:18:03
Сериализацию с dependent types на языке без дженериков)
А нах тебе дженерики, если интерфейсов достаточно? в целом это те самые дженерики и получаются

Дмитрий
28.04.2017
17:18:34
Кастанёшь зависимые типы через interface{}?)

Google
Mike
28.04.2017
17:20:11
type Serializer interface { Serialize() string } и просто для своих типов переопределяешь Serialize() и потом пишешь в своей либе сериализации что она на вход Serializer принимает. конец

Дмитрий
28.04.2017
17:20:30
Погоди, это типы

Они объединяются в тайп классы

Всё это создаётся каррированными конструкторами типов

Перегруженными, разумеется

Mike
28.04.2017
17:21:29
ну так, ты потом делаешь типа type MyType struct {...} func (m *MyType) Serialize() string {...} и все, его уже спокойно сериализовать можно чем хочешь

или я тебя не понимаю

ну то есть

я бы понял, если бы ты сказал, что dependent types без генериков охуеешь делать

Дмитрий
28.04.2017
17:22:56
А над всем этим уже находятся зависимые типы, которые декларируют, что отношение между этими сущностями — тоже отдельный тип

Mike
28.04.2017
17:22:58
но если ты их уже сделал, то сериализовать их не проблема

Дмитрий
28.04.2017
17:23:21
Ты офигеешь делать их и с ними

Monday Begins on Saturday
28.04.2017
17:23:22
Кастанёшь зависимые типы через interface{}?)
https://github.com/shelomentsevd/mtproto/blob/master/types.go#L5 - интерфейс https://github.com/shelomentsevd/mtproto/blob/master/api.go#L274 - пример сериализации https://github.com/shelomentsevd/mtproto/blob/master/api.go#L20831 - пример десериализации файл api.go генерируется скриптом на python: https://github.com/shelomentsevd/tl2go

Mike
28.04.2017
17:23:31
)))

ну короч тут я согласен

Monday Begins on Saturday
28.04.2017
17:23:44
всё работает, но есть заебы кое-какие

Mike
28.04.2017
17:23:45
я про сериализацию несогласен был

Monday Begins on Saturday
28.04.2017
17:25:33
всё работает, но есть заебы кое-какие
С выходом новой версии API все заново генерировать. Я сейчас думаю, что лучше отказаться от идеи описания всего API, оставить структуры и минимальную документацию как этим пользоваться и всё.

Google
Monday Begins on Saturday
28.04.2017
17:32:02
описание всего API всмысле документация?
Не. https://github.com/shelomentsevd/mtproto/blob/master/mtproto.go#L356 - вот типичный вызов метода для API телеграмма который я уже сделал. По сути они все одинаковые, ты просто передаешь в канал m.packetToSend определенную структуру с параметрами и на выходе получаешь другую структуру. Вот думаю просто показать в README как это делать а методы типа выше удалить оттуда.

Иначе просто замучаешься всё это делать. Там например от версии к версии ещё порядок полей может измениться или их кол-во и придется всё переписывать заново, т.к. (де)сериализация зависит от порядка и их кол-ва.

Mike
28.04.2017
17:35:09
короч пора в чатик про го идти реакт обсуждать

Monday Begins on Saturday
28.04.2017
17:36:09
генерируй из схемы
Ну вот да. Это как вариант, сделать генерацию получше

Дмитрий
28.04.2017
17:36:33
Иначе просто замучаешься всё это делать. Там например от версии к версии ещё порядок полей может измениться или их кол-во и придется всё переписывать заново, т.к. (де)сериализация зависит от порядка и их кол-ва.
Из схемы можно вообще кучу информации извлечь, я сделал автоматическую сортировку полей по схеме, сделал defaults значения для типов, можно опускать ненужные поля, теперь работаю чтобы париться о типах ещё меньше)

Admin
ERROR: S client not available

Дмитрий
28.04.2017
17:37:33
Затем чтобы юзер не парился, в каком порядке там поля в схеме)

Модуль сам расставит как надо, да ещё и пропущенные аргументы заполнит

Vlad
28.04.2017
17:38:37
Это я в час Go lang попал? ))

Monday Begins on Saturday
28.04.2017
17:38:45
Сорян за Golang. Я просто увидел что тут тему telegram api обсуждают

Mike
28.04.2017
17:39:32
Это я в час Go lang попал? ))
го Clojure обсуждать параллельно, пусть им обидно будет

andretshurotshka?❄️кде
28.04.2017
17:40:16
Будем Idris с TL обсуждать тогда ? @ZeroBias

Mike
28.04.2017
17:40:43
можно еще шлюх тамбовских, но кажется, это уже совсем оффтопик

с другой стороны что угодно лучше, чем очереное jss vs styled components

Artur
28.04.2017
17:42:41
Mike
28.04.2017
17:42:57
а, да, было тут что-то такое

Google
Mike
28.04.2017
17:42:58
точно

Дмитрий
28.04.2017
17:43:14
jss-components vs styled-styled

andretshurotshka?❄️кде
28.04.2017
17:43:46
prejss-components vs styled-prejss

Mike
28.04.2017
17:43:58
jss vs components

Котяй Негодяй
28.04.2017
17:49:59
Чё я снова пропустил?

Mike
28.04.2017
17:50:45
кто-то написал либку, чтобы jss как styled components писать

и кинул сюда репку

Котяй Негодяй
28.04.2017
17:51:05
Но зачем?

Mike
28.04.2017
17:51:19
вопросы к сове и ко

мб они еще объяснят зачем jss вообще нужен

но пока у них ниоч выходит

Котяй Негодяй
28.04.2017
17:51:51
Они настолько по-разному работают, чтобы это имело смысл?

Mike
28.04.2017
17:52:04
смысл насколько я понял в инкапсуляции

но мб нет

Котяй Негодяй
28.04.2017
17:52:13
Mike
28.04.2017
17:52:35
всем привет) зарелизили styled-jss - интерфейс styled-components, скорость и фичи jss)) буду рад фидбэку)) https://github.com/cssinjs/styled-jss

на втыкай

Котяй Негодяй
28.04.2017
17:52:43
Вот был бы автокомплит для JSS.

Mike
28.04.2017
17:53:53
никто тебе не мешает плагин свой для VSCode и идеи написать с автокомплитом =))

Котяй Негодяй
28.04.2017
17:54:12
Мешает.

Страница 1224 из 5115