Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Концепция языка программирования

15K
22 апреля 2010 года
Vertecs
116 / / 21.06.2008
Сразу представлю небольшой фрагмент кода:
Код:
DrawLine( Здесь описывается определение функции, причём скобкой отделяется имя
x1 0.0    не только от аргументов, но и служит началом строки комментариев. На
y1 0.0    остальных строчках описываются, собственно, аргументы используемые в
x2 0.0    качестве источников вводных данных. А так же их тип со значениями по
y2 0.0    умолчанию.
):        Когда все аргументы описаны заключением в скобки, двоеточие начинает
.lastX ?? описывать свойства функции и её состояние с прошлого момента вызова,
.lastY ?? которые должны объявляться как неопределённые при описании функции.
        (#x2 y2#) Если x2/y2 умещается в числовом значении и являются числами,
                dx = x2 - x1 вычисляем длину отрезка по осям x и y, объявляя
                dy = y2 - y1 попутно ещё несколько локальных переменных
                (|dx| > |dy|) Вычисляя модули определяем наибольшее значение в
                ........len = |dx| качестве абсолютной длины отрезка из dx/dy.
                ........len = |dy| Пунктированием завершаем блок ИСТИНА и ЛОЖЬ
                dx / len Теперь делим переменные dx и dy для получения нужных
                dy / len коэффициентов интерполирования вектора на растровой
                lastX = x1 + 0.5 матрице. Попутно иницируем значения основного
        ........lastY = y1 + 0.5 цикла вывода группы пикслей в ряд одной линии
        (len--) Заметим, что постфиксный декремент - двойной минус и слитно
                DrawPixel(lastX, lastY)
                lastX + dx, lastY + dy Допускается и такая запись.
........true
Основная цель: Создать язык с синтаксисом, ближе к естественному субъективному восприятию. Так, когда мы читаем книгу по высшей математике, зрительно автоматически отделяем общий текст от группы формул. Или читаем технический журнал, отделяя электрическую схему или чертёж от общего текста. Ну, вы поняли...
Представленный выше шаблон я вынашивал несколько лет. Но только сегодня разрешил ряд проблем(концептуальных). Ещё работал над проблемой символьной избыточности. Не для экономии памяти, а для дисциплины и читабильности.
Первый момент: Так, операторные скобки заменены на отступ табуляцией. В любом красивом коде фрагмент в скобках {...} и так форматируется отступом. А иногда - нет, что затрудняет читабильность. А если символы скобок упразднить и заменить на явный отступ, то он станет уже десциплиной!
Второй момент: Никаких зарезервированных слов нету, есть только конструкции на основе табуляции. В этом примере конструкция уже напоминает блок-схему:
 
Код:
Блок первого уровня
                Блок второго уровня
                        Блок третьего уровня
        ^---------------continue до первого уровня
                ^-------continue до второго уровня
        .---------------break по первый уровень
                .-------break по второй уровень
где символами явно указывается на какой уровень следует перейти.
Третий момент: Комментариями считается всё то, что не поддаётся алгоритмическому конструированию. Это очень сильно влияет на аккуратность.

Вот ряд примеров различной сложности:
Код:
(какое-либо условие)
                Блок операций, выполняемый, пока условие истино
                Допускается произвольное число строк, конструктивных вхождений
        ________Подчёркивание отделяет блок цикла от блока, который должен был
                выполниться, если цикл вообще не совершался. Однако, в данном
                блоке допускается совершить любые действие и попытаться цикл
                запустить вновь. Но только одной попыткой!
        ........Если цикл перезапускать не следует, блок завершается пунктиром
Тем самым, описанная конструкция работает как сложный комплекс сочитаний таких
стандартных операций, как do-while и if-else. Ниже описанно устройство данной
конструкции:
        (condition--)
                any_function(value)
                value + condition
представляется как:
        while(condition --) {
                any_function(value)
                value += condition
        }
Пример 2:
        (condition--)
                any_function(value)
        ........value + condition
представляется как:
        while(condition --) {
                any_function(value)
                value += condition
                break
        }
оптимизируется в:
        if(condition --) {
                any_function(value)
                value += condition
        }
Пример 3:
        (condition--)
                any_function(value)
        ________value + condition
                -condition
        ........value = 0
представляется как:
        if(!condition) {
                condition --
                condition = -condition
                value = 0
        } else {
                while(condition --) {
                        any_function(value)
                        value += condition
                }
        }
Пример 4:
        (condition--)
                any_function(value)
        ________value + condition
                -condition
                value = 0
представляется как:
        if(!condition) {
                condition --
                condition = -condition
                value = 0
        }
        while(condition --) {
                any_function(value)
                value += condition
        }
Пример 5:
                any_function(value)
        ________value + condition
        (condition --)
представляется как:
        do {
                any_function(value)
                value += condition
        } while(condition --)
Пример 6:
        (condition--)
        ========0
                value = 0
        ........any_function(value)
        ========1
                value = 1
        ........any_function(value)
        ========2 4..6
                value = 2
                any_function(value)
        ========3
                value = 3
                any_function(value)
        ========
                value = -1
представляется как:
        switch(condition --) {
        case 0:
                value = 0
                any_function(value)
                break
        case 1:
                value = 1
                any_function(value)
                break
        case 2:
        case 4: case 5: case 6:
                value = 2
                any_function(value)
        case 3:
                value = 3
                any_function(value)
        default:
                value = -1
        }
Остальные комбинации запрещены и останавливают работу парсера.


Пробная действующая модель языка выполнена в JS на HTML в качестве парсера. Все теги, типо <select> и т.д. описываются табуляцией, т.е. если отступ табуляцией закончился, тэг автоматически закрывается...

Ваши комментарии?
5
22 апреля 2010 года
hardcase
4.5K / / 09.08.2005
Чем это лучше уже существующих языков с синтаксисом на отступах: Python, Nemerle, F#, Boo?
5
22 апреля 2010 года
hardcase
4.5K / / 09.08.2005
Кстаи не вида никакая идея языка. Какая система типов и типизация, какой подход к управлению последовательностью действий, какой подход к управлению памятью и т.п. А синтаксис - это уже вторичное.
307
22 апреля 2010 года
Artem_3A
863 / / 11.04.2008
мои комментарии: С++ круче, С# удобней, NASM быстрее, Lisp рекурсивней. а представленное дело в топку.:D
253
22 апреля 2010 года
Proger_XP
1.5K / / 07.08.2004
Присоеденяюсь к hardcase, подобные языки уже существуют.

В добавление, у вас, как кажется, } или end заменены подчёркиванием - по-моему это неудобно. Нужно ещё будет считать, сколько точно поставить знаков, вместо того, чтобы просто написать } или end.
Плюс, нормальные IDE сейчас оптимизируют написание кода так, что добавление скобок, begin/end и пр. делается автоматом. Это, может, не повышает читабельность, но оная приобретается без проблем со временем.

Вообще, попытки преобразить текстовые файлы в "красивенькие с графикой" уже не раз предпринимались - посмотрите хотя бы на вики. Но здесь уже нужно что-то совсем свежее, нежели просто перетасовка каких-то языковых элементов. Даже Smalltalk как ни крути не имеет революционный синтаксис... ИМХО.
5
22 апреля 2010 года
hardcase
4.5K / / 09.08.2005
Цитата: Proger_XP
Плюс, нормальные IDE сейчас оптимизируют написание кода так, что добавление скобок, begin/end и пр. делается автоматом. Это, может, не повышает читабельность, но оная приобретается без проблем со временем.

Ага, автоформатирование рулит. ;)

Цитата: Proger_XP
Вообще, попытки преобразить текстовые файлы в "красивенькие с графикой" уже не раз предпринимались - посмотрите хотя бы на вики.

Кошмарный ужас там начинается когда приходится размечать приличных размеров таблицу. :D

253
22 апреля 2010 года
Proger_XP
1.5K / / 07.08.2004
Цитата: hardcase
Кошмарный ужас там начинается когда приходится размечать приличных размеров таблицу. :D


Угу. Ещё отдельная песня про то, как там задаются шаблоны - какая-то смесь XML, HTML, CSS и вообще непонятно чего.

 
Код:
<!--        TODAY'S FEATURED ARTICLE; DID YOU KNOW        -->
{| id="mp-upper" style="margin:0; background:none;"
{{#if:{{Main Page banner}}|<tr id="mp-banner"><td colspan="3" style="text-align:center; font-size:100%; background-color:#F2E6CE; padding:0.2em; border:1px solid #BFB1A3; color:#000; font-weight:bold;">{{Main Page banner}}</td></tr>
}}

Какие-то #define наподобии Сишных, даже комменты есть, что по идее против самой идеи вики.
Когда видишь более-менее читабельную для человека разметку вики смешанной с этим чудом, то уши в трубочку сворачиваются.

Мораль простая: для несложных проектов и доков вики годится, а для чего-то навороченного масштабов Википедии лучше HTML пока ничего не придумали.

Тоже самое относится и к языкам программирования - не надо из них стремиться сделать яркий конструктур, по-моему, или по крайней мере без попыток использования оного в серьёзных проектах..
8.4K
22 апреля 2010 года
z0rch
275 / / 02.09.2008
Цитата: hardcase
Кстати не вида никакая идея языка. Какая система типов и типизация, какой подход к управлению последовательностью действий, какой подход к управлению памятью и т.п. А синтаксис - это уже вторичное.



Цитата: Vertecs
Основная цель: Создать язык с синтаксисом, ближе к естественному субъективному восприятию.



т.е. насколько я понял - вы просто хотите сделать другую оболочку для существующего языка, которая будет на ваш взгляд более естественной?
сомневаюсь что это далеко пойдет, разве что полезно для самоудовлетворения, раз уж вы сказали:

Цитата: Vertecs
Представленный выше шаблон я вынашивал несколько лет.


и напоследок:

Цитата: Vertecs

Ещё работал над проблемой символьной избыточности. Не для экономии памяти, а для дисциплины и читабильности.


это очень субъективное мнение, что из "мало символов" => "++читабельности"
возможно кому-то привычнее(а ведь так определяется читабельность?) видеть { }, а кому-то слова begin end.

15K
23 апреля 2010 года
Vertecs
116 / / 21.06.2008
Не спорю, что идея превосходная.
Просто на одном из форумов прочитал примерно следующее: "я новичок в js..." тра-ла-ла... и в конце "js придумали для html вёрстки, почему не могли использовать более простой язык? в html то не нужны крутые механизмы, это же просто язык разметки и js должен просто обрабатывать простые события на странице"...

Я подумал, а почему действительно? Почему нет языка-оболочки над любым другим? Именно для начинающих.
Над Си, над ассемблером? Вы говорите, подобные языки есть. Но я забыл написать всего одно слово. Должно быть
Концепция оболочки языка программирования.

Для ассемблера я давно такой написал. Типо Sphinx C--, но проще. Транслятор разбирает блоки формул из сотен строчек и генерирует десятки тысяч строк с мнемониками и метками.
5
23 апреля 2010 года
hardcase
4.5K / / 09.08.2005
Цитата: Vertecs
Не спорю, что идея превосходная.


Так где идея-то?

Цитата: Vertecs
Просто на одном из форумов прочитал примерно следующее: "я новичок в js..." тра-ла-ла... и в конце "js придумали для html вёрстки, почему не могли использовать более простой язык? в html то не нужны крутые механизмы, это же просто язык разметки и js должен просто обрабатывать простые события на странице"...

JS к HTML притянут за уши, к примеру в нем нет нормальных инструментов для работы с DOM - именно потому существуют фреймворки типа JQuery.

Цитата: Vertecs
Почему нет языка-оболочки над любым другим? Именно для начинающих.

Потому что это нафиг никому не нужно. Особенно для новичков. Есть языки, в которые можно встроить другие языки DSL.

Цитата: Vertecs
Для ассемблера я давно такой написал. Типо Sphinx C--, но проще. Транслятор разбирает блоки формул из сотен строчек и генерирует десятки тысяч строк с мнемониками и метками.

Это называется - компилятор.

253
23 апреля 2010 года
Proger_XP
1.5K / / 07.08.2004
Цитата: Vertecs

Я подумал, а почему действительно? Почему нет языка-оболочки над любым другим? Именно для начинающих.


Мне тоже интересно, чего тут на форуме так часто какие-то идеи предлагаю именно для начинающих. Один товарищ, помнится, сделал прогу, которая сама исправляет синтаксические ошибки в Delphi, плюс (странно) форматирует код, добавляет какие-то комментарии, нумерует его и т.д У вас вот новый язык "для начинающих".

Если все движимы благородной целью облегчить участь студенчества [COLOR="DimGray"](хотя куда уж больше облегчать в наше время)[/COLOR], то почему не учитывается факт, что сей контенгент, успешно пролетя все перепетии по освоению языка, и т.д. потом будет вам же морочить голову, почему он ничего не понимает в "Настоящем Си и винапи". Будете писать ещё одну оболочку?
Так ведь далеко не уедешь - сложные языки не просто так создавались сложными, так что магически сделать их простыми вряд ли получится. Нужна совсем новый взгляд на языки программирования.

Вообще, если по делу, то чем конкретно отличается "Концепция оболочки языка программирования" от любого компилятора или вообще любого языка? Тем, что она транслирует код одной формы в код другой? А зачем?

5
23 апреля 2010 года
hardcase
4.5K / / 09.08.2005
Вообще если хочется заняться разработкой языка, то всегда ждем: http://rsdn.ru/forum/nemerle/ и http://code.google.com/p/nemerle/
Как показывает практика в языке можно воплотить очень многое, даже идею этой самой "оболочки".
15K
23 апреля 2010 года
Vertecs
116 / / 21.06.2008
Хм. Ладно уж, скажу в чём дело...
Вот мы, я имею в виду касту программистов, часто используем программы несколько низкой или средней навороченности.
Я по сей день использую Volcov Commander 4.00 из-за возможности в нём легко и быстро редактировать Hex-Dump'ы, поковырять exe или avi, набить wav или mid с их RIFF или MThd заголовками с нуля!
Дело в том, что я не музыкант, а имеющийся набор редакторов меня не удовлетворяет.

Например, все знают Crack'и и Patch'и с музыкальным сопровождением? И там музыка в трекерном формате стиля "чип-тюн", с эффектами "бульканья", aperggio называется.
Так вот, меня мучал вопрос, а это "бульканье" в миди не возможно чтоли? Ни в какой из программ этого эффекта не достигнуть, а при экспорте из трекера в миди эффект просто игнорируется...
Но, покопавшись в дампе с помощью Volcov Commander, спустя пару суток и часы изучения протокола миди, мне удалось-таки сотворить чудо: Миди-композицию с эффектом aperggio!
Проверил даже на сотовом телефоне - работает! :)

Любые чертежи и рисунки я всегда делал стандартным Paint системы. Никаких Photo Shop и прочей навороченной гадости. Даже настроечную ТВ-таблицу за 4 часа однажды нарисовал.
Разве один я такой? Ведь есть же тут программисты, обходящиеся без дряни с наворотами!?
Среди моих знакомых есть такой человек. И в Paint рисует, и поражённый вирусом бинарник модифицирует в дампе так (переставляет местами пару команд), что ни один антивирус не находит! :-p

P.S.: Несколько лет назад надо было нарисовать чертёж, причём с алгоритмической точностью! Вы же знаете в GDI операцию PlgBlt? Именно она в Paint наклоняет рисунок на заданные углы. Однако Microsoft странно поступила и не позволяет в Paint этой операцией поворачивать рисунок на любой угол(вращать), тогда как в Си я с PlgBlt делал в два счёта: Переводишь углы в Sin и Cos, а затем передаёшь в функцию и всё!
Ну, я сел и стал мастерить свой Paint: точная копия интерфейса! Но глубина Undo/Redo - беспредельна. Запоминается лишь вся последовательность операций над Bitmap. Не ново...
А потом я подумал, что делать с алгоритмизацией???
И тогда придумал концепцию универсального языка-оболочки. Вот тогда-то эта идея и родилась...
Мне, как программисту, в Paint тесновато, а в Си достало "шаблонничать" и copy-paste'ть. И так проектов больше сотни. Причём, надо сделать что-либо, приходится в Си новый проект разворачивать! Разве вам это не знакомо? ;)
Вот я и задумал язык, который и рядового пользователя не будет напрягать, и программист с помощью него набьёт алгоритм прорисовки чертежа любой сложности.
Как в Эксель: Можно тупо таблицы расписывать и вычислять ручным калькулятором (фигею, но у нас так и делают). А можно описать порядок вычислений и ячейки сами будут вычисляться.
Вот я этот язык для Paint так и задумывал: Не программисту там ничего сверхъестественного не найти. А кто знаете базовые принципы, тот легко опишет алгоритм с выбором кистей и перьев, с поворотами параллелограммов и заливкой любым шаблоном.
И начиналось всё как:
Код:
It is an commentary in beginning in your PaintScript!
Brush[] Let's we making an binary array
0xCC, 0x66, 0x33, 0x99, 0xCC, 0x66, 0x33, 0x99 It is an bytes of our brush

Br1 = CreateBrush(Brush)
oldBr = SelectObject(Br1)
i = 0
    a = i * PI / 180
    MoveTo(320, 240)
    LineTo(320 + cos(a) * 100, 240 - sin(a) * 100)
    i + 15
    (i < 360)
SelectObject(oldBr)
DeleteObject(Br1)
5
23 апреля 2010 года
hardcase
4.5K / / 09.08.2005
Цитата: Vertecs
в Си достало "шаблонничать" и copy-paste'ть. И так проектов больше сотни. Причём, надо сделать что-либо, приходится в Си новый проект разворачивать! Разве вам это не знакомо? ;)

Просьба пройти по ссылке у меня в подписи. А также вот сюда.

15K
23 апреля 2010 года
Vertecs
116 / / 21.06.2008
Цитата: hardcase
Это называется - компилятор.

Вы считаете меня до такой степены некомпетентным???
Даже ассемблер - компилятор. А у меня - именно транслятор. Однопроходной, читает по строке текст файла и переводит формулы в мнемонику. Причём назад не возвращается, хранит лишь список открытых скобок. Т.е. именно транслятор, а не компилятор. Поток любой длины на лету переводит... Четыре года писал. На турбо-паскале, а последняя версия - js... Не путайте меня! ;) До компиляторов я не дорос/

Цитата: hardcase
Просьба пройти по ссылке у меня в подписи. А также вот сюда.

Я понял;)
Спасибо!

253
23 апреля 2010 года
Proger_XP
1.5K / / 07.08.2004
Цитата: Vertecs
А у меня - именно транслятор. Однопроходной, читает по строке текст файла и переводит формулы в мнемонику.


Иными словами, вы сделали для себя удобную обёртку для языка, на которой вам удобно писать. Это дело субъективное.
Советую прислушаться к hardcase - полноценных языков программирования со схожими принципами много, и они более-менее удобны всем.

3
24 апреля 2010 года
Green
4.8K / / 20.01.2000
Цитата: Vertecs

Любые чертежи и рисунки я всегда делал стандартным Paint системы. Никаких Photo Shop и прочей навороченной гадости. Даже настроечную ТВ-таблицу за 4 часа однажды нарисовал.


М-да...
А чего же ты не добавил "Дело в том, что я не художник, а имеющийся набор редакторов меня не удовлетворяет." ?

Настроечная таблица ТВ - это видимо верх компьютерной графики...

Цитата: Vertecs

Разве один я такой? Ведь есть же тут программисты, обходящиеся без дряни с наворотами!?


Угу... есть тут программисты обходящиеся без фотошопа. Как и есть наверное на свете художники, которые могут прожить без Volcov Commander.

Цитата: Vertecs

Среди моих знакомых есть такой человек. И в Paint рисует, и поражённый вирусом бинарник модифицирует в дампе так (переставляет местами пару команд), что ни один антивирус не находит! :-p


И бинхекс, и паинтец, и на миди игрец, прям!
У меня, кстати, есть знакомый, который кулаком гвозди забивает. Знаешь, что он про молоток говорит? "Дело в том, что он не плотник, но...

А рассказ про модификацию вирусов, что кстати называется "чисткой", так это, извините за выражение, паинтешь.

Цитата: Vertecs

P.S.: Несколько лет назад надо было нарисовать чертёж, причём с алгоритмической точностью! Вы же знаете в GDI операцию PlgBlt? Именно она в Paint наклоняет рисунок на заданные углы.


И как это не отбило твоей любви к этому убогому инструменту?
Для справки, чертежи обычно делают не в растровом, а в векторном формате.
А сл-но используются совсем др. инструменты.

Цитата: Vertecs

Ну, я сел и стал мастерить свой Paint: точная копия интерфейса!


Ну уж никто не сомневался, что так дело повернется.
А случаем, компьютер у тебя не собственноручно собран из подручных элементов менее навороченных, чем эта дрянь на транзисторах?

Цитата: Vertecs

Мне, как программисту, в Paint тесновато, а в Си достало "шаблонничать" и copy-paste'ть.


Так может пора закончить рисовать настроечные таблицы и заняться изучением C++ и какого-нибудь инструмента?

Цитата: Vertecs

И так проектов больше сотни.


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

Цитата: Vertecs

Как в Эксель: Можно тупо таблицы расписывать и вычислять ручным калькулятором (фигею, но у нас так и делают). А можно описать порядок вычислений и ячейки сами будут вычисляться.


Неожиданно ты упомянул этот инструмент... Я уж подумал, что гореть ему в аду вместе с фотошопом.
И приготоволся к описанию того, как правильно и здорово расписывать таблицы в notepad с помощью '|' и tab.

Цитата: Vertecs

Вот я этот язык для Paint так и задумывал: Не программисту там ничего сверхъестественного не найти. А кто знаете базовые принципы, тот легко опишет алгоритм с выбором кистей и перьев, с поворотами параллелограммов и заливкой любым шаблоном.


Только вот тому, кому это надо не будет описывать алгоритм, а откроет фотошоп.

Ну в принципе диагноз ясен - веломания.

P.S. жирным отметил фразы, которые должны стать крылатыми.

15K
24 апреля 2010 года
Vertecs
116 / / 21.06.2008
Покажите мне пожалуйста инструмент, в котором можно сделать мелодию с этим эффектом?
Вот послушайте (вручную набивал), работает и на сотовых телефонах...
307
24 апреля 2010 года
Artem_3A
863 / / 11.04.2008
Цитата: Vertecs
Покажите мне пожалуйста инструмент, в котором можно сделать мелодию с этим эффектом?
Вот послушайте (вручную набивал), работает и на сотовых телефонах...



ты не поверишь, но этот инструмент называется гитарой, неожиданно, да?

15K
24 апреля 2010 года
Vertecs
116 / / 21.06.2008
Цитата: Artem_3A
ты не поверишь, но этот инструмент называется гитарой, неожиданно, да?

Вы кряки/патчи с музыкой встречали?
Под "инструментом" я имел в виду СОФТ!
Музыку в стиле "чип-тюн" знаете? Там этот эффект называется аперджио: Три ноты разные быстро перебираются. Вот например эти четыре трека послушайте:

241
24 апреля 2010 года
Sanila_san
1.6K / / 07.06.2005
Мсье маньяк. Я никогда не рисовал настроечную таблицу, но в иллюстраторе макросами и копированием сваял бы её часа за полтора, из них час с четвертью - на отладку макросов, и минут 15 на всё остальное. А вот подвернулся мне давеча Paint.NET, и не нашёл я в нём макросов… поэтому пришлось возиться с фотошопом. В нём макросы были. А надо было всего-то нанести надпись с нужным эффектом на полсотни картинок. Фигли бы ручками не сделать?
241
24 апреля 2010 года
Sanila_san
1.6K / / 07.06.2005
Цитата: Vertecs
Под "инструментом" я имел в виду СОФТ!
Музыку в стиле "чип-тюн" знаете? Там этот эффект называется аперджио: Три ноты разные быстро перебираются.

За софт сойдёт любой MIDI-редактор, типа Sibelius'а, или вон у меня был NoteWorthy Composer, тоже MIDI сохранять умел, хоть и для другого предназначен.

А приём быстрого последовательного перебора трёх (и более) нот называется арпеджио (arpeggio). Не позорьтесь на весь форум.

5
24 апреля 2010 года
hardcase
4.5K / / 09.08.2005
Цитата: Sanila_san
А вот подвернулся мне давеча Paint.NET, и не нашёл я в нём макросов… поэтому пришлось возиться с фотошопом.

Насколько я знаю в Paint.NET можно прикрутить плагин, который позволяет фигачить код на C#. Думаю, если немного полазить в сети или на худой конец посмотреть на него рефлектором задача вполне реализуема и на нем.

241
24 апреля 2010 года
Sanila_san
1.6K / / 07.06.2005
Да у меня ещё старенький, версии 3.31.3043.25256, там макросов нет. К тому же в фотошопе искаропки работает самый быстрый способ автоматизации - просто запись действий. Не скажу, что такие макросы делают всё за меня, но рутинную часть работы они действительно делают раз в 15 быстрее.
15K
24 апреля 2010 года
Vertecs
116 / / 21.06.2008
Цитата: Sanila_san
За софт сойдёт любой MIDI-редактор, типа Sibelius'а, или вон у меня был NoteWorthy Composer, тоже MIDI сохранять умел, хоть и для другого предназначен.

Я с неё начинал и ща она установлена. Нету там таких наворотов

Цитата: Sanila_san
А приём быстрого последовательного перебора трёх (и более) нот называется арпеджио (arpeggio). Не позорьтесь на весь форум.

arpeggioFX.zip (525 байт, 2 просмотров) <-- Разве здесь не писано "арпеджиоЭфИкс? ;)

У меня есть трек, где арпедж звучит как балалайка-три струна. Так что где в мидяхах есть балалай-эффект? Киньте-ка одну, интересно ;)

А аперджио - ошибка-ловушка. Вот вы первый, кто заметил;)

5
24 апреля 2010 года
hardcase
4.5K / / 09.08.2005
Только какое отношение все это имеет к ЯП?
307
24 апреля 2010 года
Artem_3A
863 / / 11.04.2008
Цитата: Vertecs
Три ноты разные быстро перебираются.



да так даже я могу, про Алекси Лайхо вообще молчу, запилит и не заметит!:D

Подведу по всем вашим постам итог: вы страдаете тяжелым случаем скуки и по сему, придумываете себе всевозможные глупые занятия.

ЗЫ: и "треки" ваши полный отсос, слушайте, незнаю, металику, что ли!!!:D

ЗЫЗЫ:

Цитата:
Аперджио - не гитара


на гитаре можно играть все! доказано товарищем Алексио Лайхо и Рупом Латвала, когда они в мастер классе от Чилдрен Офф Бодом зарубили на двух эспах "Вивальди - Времена Года, Лето - Шторм".

241
24 апреля 2010 года
Sanila_san
1.6K / / 07.06.2005
Небольшой оффтоп: существует огромное число инструментов, на которых можно играть всё - но обязательно надо учитывать тот факт, что возможности у разных инструментов разные, а стало быть, на скрипке вы никогда не сыграете произведение, написанное для контрабаса, если не переработать сам нотный материал. Это называется переложением. Мне как-то довелось играть на скрипке композицию Danza, которое Мануэль де Фалья написал для фортепиано, а Фриц Крейслер переложил для скрипки. Чуть позже я услышал, как эту же композицию играет Пако де Люсия на гитаре. Произведение одно, а ноты совсем разные.

Точно так же Apocalyptica перекладывает для струнных хеви-метал, не повторяя точно ноты, но следуя общему звучанию и учитывая свои возможности. На фортепиано есть развитая полифония, но невозможно сыграть четвертитонный интервал. На скрипке есть некоторые возможности в полифонии, но нет низких нот. На тромбоне очень трудно играть некоторые мелодии, и вовсе нельзя взять хотя бы двойные ноты.

Миди - это просто описание, которое применимо к любому виртуальному инструменту. Поэтому эффект балалайки повторим там даже для тромбона, но нет никакого понта говорить, что такое можно сделать только ручками. То же самое прекрасно делается в сибелиусе шестьдесятчетвёртыми нотами.

Но это так, оффтоп для общего развития.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог