Pull to refresh
154
0
Никита Прокопов @tonsky

Пользователь

Send message
Я думаю, идеально, как всегда, попросить исходники и работать в том же тулинге, что и автор шрифта. Я взял trial version RoboFont, им декомпилировал otf в ufo и в нем же рисовал лигатуры, прописал feature liga и экспортил обратно в otf. Я в шрифтах слабо разбираюсь, но как программист подозреваю что там куча информации могла потеряться в таком процессе реверс-инжиниринга. Мозилла выкладывает исходники Fira Mono в UFO, но я не смог ни одним редактором их открыть к сожалению.
Ага, он у меня и до этого стоял рабочим шрифтом.
Ну я пока из принципиального наткнулся только на разное значение /= в Хаскелле и во всех остальных языках. Понятно что на J наверное на таком шрифте не попрограммируешь :)

Плюс, сами по себе лигатуры не навязывают никакой семантики. Как раньше >> выглядел одинаково в семантически разных контекстах, так и сейчас будет выглядеть одинаково.

Про закрывающие скобки в C++, вроде бы есть практика их специально разделять пробелом чтобы не смущать компилятор неоднозначностями?
можно ссылку как это примерно выглядит?
Можно сделать тройное равно для == и четверное для === :)
Не решает. Нужен еще один дополнительный ряд кнопок. На самом деле программисты это куча народу и если они за правильно сделанной ориентированной на них клавиатурой в очередь выстроятся, вот и бизнес готов. Люди вон страдают что в русской раскладке запятую приходится с шифтом набирать, а у программиста спецсимвол или скобка каждые пять букв встречаются. Если убрать из уравнения шифт, руки просто порхать начнут, и усталость раза в полтора снизится.
Ага, из -> стрелка кривая получается, и в := двоеточие со знаком равенства не выровнено. В принципе, часть лигатур в Fira Code и Hasklig это просто тюнинг межбуквенного расстояния/выравнивания для двух символов если они рядом стоят.
Это кстати совсем не бредовая мысль. Я бы хотел нажимать скобки и все символы из ряда шифт+цифра одной кнопкой а не комбинацией из двух. Как программисту, это бы мне кучу усилий сэкономило.
Да фигня, ASCII не надо менять — unicode уже достаточно хорошо поддерживается везде. Единственная проблема это удобно их вводить. Я использую типографскую раскладку, постоянно и очень естественно ввожу правильные кавычки, длинные тире, стрелки, никаких революций для этого не требуется. В языках кое-где можно сделать биндинги на юникодные символы (Хаскель их нативно понимает, в Clojure def/defmacro и вперед), но это украсит только мой личный код, даже коллег я не уверен что смогу уговорить.
Проблема в том что в Haskell это комбинация «не равно», а во всех других языках — «разделить и присвоить». Поэтому я такую лигатуру делать не стал.
Сделают рано или поздно, я уверен, явно же они не просто так эту движуху затеяли
Да, но in a good way. Потом обратно уже не хочется.
В реальном мире цель работы программы — это менять свое состояние и состояние вокруг, т.е. сайд-эффекты. Кложа прагматичный язык, и не пытается этот факт скрыть или как-то пристыдить, в ней все нормально и с императивными конструкциями, и с мутабельным состоянием. Т.е. всё что есть в обычных языках тут тоже есть. Но, у них даже более удобные и безопасные конструкции для работы с ним предусмотрены помимо обычных get/set! (напр., atom-ы). Концепция языка предполагает, впрочем, что работа с мутабельным состоянием делается редко и явно. Это особо не усложняет программирование, но программа получается проще в понимании и надежней.
Пожалуйста :)

Надо сказать, у вас круто получилось, даже не верится что столько можно сделать без опыта в Кложе.
akka это всё-таки не lightweight threads, а тред пул с тяжеловесными тредами. Разница, например, в том, что нельзя залокаться в середине обработки сообщения на IO — надо освобождать тред
Да, реально такой (9pt). Это ретина. На обычном мониторе тоже вроде неплохо.
LightTable

Конфиг можно взять тут www.dropbox.com/sh/5rjga7f077n00tf/AABuLHwdUJFmlSKizcb3E6bVa?dl=0

Там темная и светлая тема, светлая более доведенная до ума, потому что я на нее в какой-то момент переехал.

Information

Rating
Does not participate
Location
Новосибирск, Новосибирская обл., Россия
Date of birth
Registered
Activity