Size: a a a

2021 January 03

GK

Georgy Komarov in pro.vim
Andrey
у нас в унике, пока рассказывали смешали и си и с++
Это два разных языка. Скорее всего, вам преподавали плюсы, чтобы научить основам алгоритмов, ООП и всего этого.
источник

A

Andrey in pro.vim
Georgy Komarov
Это два разных языка. Скорее всего, вам преподавали плюсы, чтобы научить основам алгоритмов, ООП и всего этого.
Ну да, он своего рода спидранер в области образования :). 4-5 пар рассказал про язык и начал про алгоритмы
источник

GK

Georgy Komarov in pro.vim
Andrey
Ну да, он своего рода спидранер в области образования :). 4-5 пар рассказал про язык и начал про алгоритмы
Это нормально для вводного курса. Вас ведь учат программировать, а не языку C++.
источник

GK

Georgy Komarov in pro.vim
В принципе, для обучения сойдёт любой императивный язык, поддерживающий основные коллекции/контейнеры в стандартной библиотеке. Просто чтобы не писать бойлерплейт руками.
источник

A

Andrey in pro.vim
Georgy Komarov
В принципе, для обучения сойдёт любой императивный язык, поддерживающий основные коллекции/контейнеры в стандартной библиотеке. Просто чтобы не писать бойлерплейт руками.
ну у нас практика в автоматической проверочной системе, а там почти все задачки чуть олимпиадные, поэтому нужна скорость
источник

A

Andrey in pro.vim
как он сказал, паскаль - мертвый, питон - медленный
источник

GK

Georgy Komarov in pro.vim
Andrey
ну у нас практика в автоматической проверочной системе, а там почти все задачки чуть олимпиадные, поэтому нужна скорость
Понятно. Да, тогда плюсы хорошо подходят.
Правда на некоторых платформах, устанавливают лимиты на память/время в зависимости от языка. Кажется, в яндекс.контесте для пайтона ставили чуть выше ограничения.
источник

A

Andrey in pro.vim
Georgy Komarov
Понятно. Да, тогда плюсы хорошо подходят.
Правда на некоторых платформах, устанавливают лимиты на память/время в зависимости от языка. Кажется, в яндекс.контесте для пайтона ставили чуть выше ограничения.
Эту платформу он написал, но он совсем против питона на олимпиадках и т.д. :)
источник

SS

Sergey Skvortsov in pro.vim
Georgy Komarov
Подсветка плюсов — штука непростая. Обязательно нужна доп. информация о контексте. Поэтому тут либо treesitter, либо семантическая подсветка от LSP.
treesitter ровно так же не сильно лучше будет
источник

GK

Georgy Komarov in pro.vim
Sergey Skvortsov
treesitter ровно так же не сильно лучше будет
Понятно. Ну да, treesitter пока ещё сыроват. Я пробовал где-то год назад: он постоянно крашился и отключал подсветку.
источник

SS

Sergey Skvortsov in pro.vim
Georgy Komarov
Понятно. Ну да, treesitter пока ещё сыроват. Я пробовал где-то год назад: он постоянно крашился и отключал подсветку.
Он принципиально не может нормально подсвечивать плюсы
источник

SS

Sergey Skvortsov in pro.vim
Не из-за сырости
источник

GK

Georgy Komarov in pro.vim
А почему?
источник

SS

Sergey Skvortsov in pro.vim
Georgy Komarov
А почему?
У него нет нужной информации
источник

GK

Georgy Komarov in pro.vim
Sergey Skvortsov
У него нет нужной информации
Я думал, там полноценный фронтенд для плюсов, со всей информацией.
источник

SS

Sergey Skvortsov in pro.vim
Georgy Komarov
Я думал, там полноценный фронтенд для плюсов, со всей информацией.
Такое в настоящем мире возможно построить только поверх clang и это будет требовать каких-то ручных действий (получается LSP, да)
источник

GK

Georgy Komarov in pro.vim
Сейчас открыл реализацию подсветки на Scheme и удивился 🤔
источник

GK

Georgy Komarov in pro.vim
66 строк
источник

GK

Georgy Komarov in pro.vim
Как же оно вообще работает.
источник

SS

Sergey Skvortsov in pro.vim
Например,
void foo() {
   a * b;
}

treesitter парсит как определение указателя

void Class::method() {
   x_ = 1;
}

treesitter не может понять, что такое x_, кроме как "наверное, имя какой-то переменной"
источник