На каком языке программирования написан Reaper?

  • Автор темы Автор темы vip76
  • Дата начала Дата начала
синдром начинающего линуса торвальдса
тут главное за неделю не перегореть
это да )) ну не DAW, ну плейер для начала свой, потом мне хочется браузер аудиофайлов свой удобный, ну всякие такие мелочи для начала хоть )
 
Да и потом я так понимаю, что всё равно сейчас все языке больше практикуют использование сторонних модулей, без погружения в дебри разработки, что и С++ не делает совсем недостижимым в освоении, если не писать свою операционную систему и драйвера для железа )
Да нет, если задача не какая-то супер-распространенная, то кодить руками приходится достаточно много на всех языках. Есть либы, которые упрощают жизнь, но склепать свою DAW, соединив вместе пару десятков кубиков, не получится.
 
  • Like
Реакции: Alex Longard и vip76
синдром начинающего линуса торвальдса
тут главное за неделю не перегореть
Вот потому я и предложил человеку поиграться с Purebasic, порог вхождения очень маленький, писать можно все что угодно вплоть до драйверов))))
Единственный минус - нет OOP, но уже пара тысяч проэктов доказали что можно обойтись и структурно-процедурным стилем))))
 
  • Like
Реакции: vip76 и Greev
Со временем на досуг нормально
и если учитывать предыдущее сообщение про покорение очень высоких вершин то изучайте Rust, как альтернатива плюсам. Язык более молодой, меньше легаси херни, выглядит очень привлекательно для начинающего прогера. вон народ уже всякого наваял:
 
  • Like
Реакции: vip76 и Alex Longard
@Greev, Rust для начинающих- это головоломка))))Я с 12 лет перепробовал пару десятков языков не считая их диалектов, и то для меня Rust был чем-то нифига непонятным первые полчаса, хотяво многих языках я могу понять логику не читая мануалов по синтаксису.
 
  • Like
Реакции: Greev
Alex Longard ну может быть для вас он был головоломкой как раз из-за предыдущего опыта. Человек практически с чистого листа может по другому это воспринять, начать учить не отвлекаясь на привычки. Когда golang начинал учить мне очень не заходило первые пару недель, а про молодняк (без опыта в других яп) рассказывают что у них как по маслу. В среднем, например, java разработчика в go переучить практически невозможно ))), да он научится конечно же, но писать не будет или умрет от постоянного стресса. Привычки в программировании это о многом.
 
  • Like
Реакции: Zildjian и Alex Longard
@Greev, знаком с таким, я например для Reaper немогу воспринимать Lua, а на Eel2 спокойно пишу, так как он си-подобный. В Lua сбивает с толку то что он какой-то паскалеподобный и то что функции могут возвращать несколько значений. Привычка однако))))
 
  • Like
Реакции: Greev
В Lua сбивает с толку то что он какой-то паскалеподобный и то что функции могут возвращать несколько значений. Привычка однако))))
Благо есть выбор :) А с появлением ReaImGui можно и на питоне теперь писать полноценно интегрированные графические скрипты
 
  • Like
Реакции: Alex Longard
А с появлением ReaImGui можно и на питоне теперь писать полноценно интегрированные графические скрипты
да оно все баловство это скриптовое, уже указано на более масштабные планы (обработка потоков в реальном времени в том числе) для которых языки с GC без вариантов.
че то низнай rust поизучать, где бы еще время взять свободное за которое платили бы ))
вообщем хоть и тема на чем писан рипер, я лично за раст для новой дав от @vip76.
 
  • Like
Реакции: vip76
да оно все баловство это скриптовое, уже указано на более масштабные планы (обработка потоков в реальном времени в том числе) для которых языки с GC без вариантов.
Уже по кокосовому форуму мелькали две идеи но всем пофигу: встроить в Reaper нативную поддержку Soul или Chuck.
У них с многопоточностью все норм. Только вот меня как-то мучают сомнения как фаната ассемблера и максимальных оптимизаций: затраты на трансляцию и выполнение себя окупят по использованию ресурсов компа, или по принципу "главное чтоб выполняло дохрена функций а для скорости надо новый комп"...

Я, когда время появится, буду это осваивать: https://github.com/helgoboss/reaper-rs
Год назад потыкал исходники, нифига непонял и выкинул, лучше просто пользоватся Realearn и не заморачиватся на чем это было написано))))
Как по мне проще и понятней написать простейший плагин на плюсах чем распутывать вермишель в Rust.
 
проще и понятней
если понимаешь, как работают плюсы)))
Нет, минимальный пример расширения на плюсах я тоже смог собрать, примерно за те же 15 минут, что и минимальный пример на rust, но вот как работает линковка и как собирается хоть немного сложный проект я за 4-5 попыток подойти к плюсам так и не смог.

Ну и бесконечные портянки пространств имён, когда одна строка в full-HD монитор не влезает тоже мне в плюсах не нравятся.

А с cargo маяться не надо) Да и писать культурнее в итоге выходит.

Но всё это на вкус и цвет)
 
  • Like
Реакции: Greev и Alex Longard
@vip76, есть такой VST Host -
написан почти из кубиков и есть исходники - можно на примере поучиться, как минимум компилировать в рабочую прогу -
 
  • Like
Реакции: vip76 и Alex Longard
если понимаешь, как работают плюсы)))
Нет, минимальный пример расширения на плюсах я тоже смог собрать, примерно за те же 15 минут, что и минимальный пример на rust, но вот как работает линковка и как собирается хоть немного сложный проект я за 4-5 попыток подойти к плюсам так и не смог.
Я пользуюсь Mingw в консоли, для меня это самый удобный вариант, от visual studio отмахнулся еще в 2015 году.
Мне плюсы ненравятся, те же классы я могу эмулировать на чистом Си, но и то невижу необходимости. Из-за моих слабых компов я всегда стремился к максимальной скорости выполнения кода, а в плюсах увы идет ущерб в скорости ради быстроты разработки...

Ну и бесконечные портянки пространств имён, когда одна строка в full-HD монитор не влезает тоже мне в плюсах не нравятся.
Хм, я кроме std ничего практически неиспользовал, куда еще городить пространства)))) Ну если только не Juce в котором вложеные вызовы методов штук по десять на строку)))

@Aleksandr Oleynik, пусть человек попробует свои знания хотя бы на примере vst плагина что я скидывал, vsthost это еще тот геморой, особенно с синхронизациями по времени и потоками.
 
Вот линк на мою мусорку избранного, есть кучка полезных исходников по плагинам, фреймворкам, и Reaper. Исходники на разных языках, C++, Rust, Python, Jesusonic.
 
  • Like
Реакции: vip76
язык то по сути вторичен, идея первична.
По мне так плюсы есть максимальный баланс между низкоуровневым мясом и высокоуровневым "этот фреймворк умеет все"
Хочешь так пиши, хочешь сяк. Использовать супе рсложные супер моджерновый структуры языка из самых последних его версий - это сложность ради сложности (если у тебя не проекты в сотни тысяч строк)
PS про боли с пространствами имен тож не понял - не хочешь не пользуй, хочешь пользуй.

уж сколько было тех с++ киллеров, а а мир так и не перевернулся.
 
  • Like
Реакции: Alex Longard

Сейчас просматривают