gavr_sas
167 subscribers
2.47K photos
164 videos
24 files
733 links
JB пропаганда
Download Telegram
ззамечательная идея, сюжетно ориентированный рогалик с мгновенной смертью, вот вам банк, можете там шото оставлять и это передастся следующему капитану
1) придется балансировать и не использовать все возможные ресурсы, оставляя шото на некст ран, например не продавать предыдущую пушку а закидывать в банк
2) глобальный метапрогресс является исключительно следствием твоего планирования
ничеси, я думал были самолетики камикадзе, а оказывается были еще и маленькие подводные лодки камикадзе!
кайтены

https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B9%D1%82%D1%8D%D0%BD
тупа рождаешься, 20 лет живешь, а потом твой мозк используют в качестве системы навигации для торпеды
нашел межславянские мемы https://t.iss.one/MSzajedno, ласкаво просимо

ваще ща задумался, помойму это отличный способ учить новый язык, особенно если бы мемы были бы реально смешными, надо бы поискать мемы на греческом,
но шото мне подсказывает что даже в какомнибудь паблике с таким названием они будут на англе
👍2
новый продукт JB Git Client, название еще не придумали
пока закрытая превью, регистрация уже закрылась тк кк все побежали
https://lp.jetbrains.com/closed-preview-for-jetbrains-git-client/
> Sorry, demand was higher than anticipated and the team is already getting tons of feedback.

А все пошло от просьб юзверов 9 лет назад https://youtrack.jetbrains.com/issue/IJPL-72504#focus=Change-27-12294721.0-0.pinned

ну кста рили, я вот разрабатываю на своем яп в vsc(потому что lsp) но когда нужен гит открываю тот же проект в идее
👍21
я узнал что существует банановый сироп, и можно просить добавить его в кофя
жизнь прошла не зря
А как резолвить body функций у которых должен быть выведен return type?

допустим ситуация
fun main() {
sas()
}

fun sas() = 42


шо делать как быть:
1) мы не можем заранее пройдясь по всем функциям узнать точные их сигнатуры, ведь они не полные
2) мы не можем просто начать резолвить тела в рандомном порядке, ведь может встретится экспрешон с вызовом еще не зарезолвленной функции

Решения два три,
1 Топологическая сортировка: попробовать сначала построить граф зависимостей между функциями и отсортировать его топологически, сначала резолвя функции без зависимостей итд
Сложно реализуется
Не поддерживает mutually recursive функцайки a -> b -> c -> a, короче сасать

2 Lazy резолвинг, обязательное условие - наличие точки входа(а что делать с либами?)

Имеем 2 структуры,
резолвнутое to Type
Стек того что резолвим се

короч не важно, суть что идем резолвить то что видим, увидили вызов sas, проверили что еще не резолвнут, резолвнули, а по стаку мы можем понять что не попали в ловушку a вызывает б а б вызывает а
gavr_sas
А как резолвить body функций у которых должен быть выведен return type? допустим ситуация fun main() { sas() } fun sas() = 42 шо делать как быть: 1) мы не можем заранее пройдясь по всем функциям узнать точные их сигнатуры, ведь они не полные 2) мы не…
3 самый ахуенный наш любимый ХиндиМинди ^_^

Hindley–Milner
1) собираем все декларации функций переменных в одну бог шлепа структуру, обычно изза этого в таких языках есть жесткое требование к определению до использования F# OCalm(форвард декларейшон как в С)

2) Присваиваем переменным воображаемые временные типы, аля тайп холы ⭕️ t0 t1 t2...

3) Генерим уравления/ограничения, исходя из контекста, например обычно в H&M нет перегрузки операторов, и + всегда означает 2 числа, из этого можно легко вывезти 2 любых t1 + t2, еще простой пример fun f(x), f(y), => x == y, аля аргумент должен быть того же типа что параметр функции

4) Унификация, ну это я уже выше описал по сути, решаем все ети уровнения, если решение найти невозможно — выдаем ошибку типа
очень конкретная схема развития любого програмиста
(за спам извени)
This media is not supported in your browser
VIEW IN TELEGRAM
идеи древних java людей
👏3
компухтар с подписью we used to be a proper profession
💋1
вот всегда бы так
Таких треугольников много, но эти конкретные 6 треугольников мои, мои треугольники — мои лучшие друзья, я должен научится владеть ими также как я владею своей жизнью
constexpr может быть как runtime так и ct
consteval is ct only

сука, это помойму какой то апогей дизайна, понятно что хуже только perl, но все же, назвать штуки практически наоборот
😨1