powered by simpleCommunicator - 2.0.29     © 2024 Programmizd 02
Map
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Функциональное программирование в VB
19 сообщений из 19, страница 1 из 1
Функциональное программирование в VB
    #39789131
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется вполне можно реализовать эту современную парадигму в VB6.
Для примера:
Implementing Functional Programming in Visual Basic 6
Функции высшего порядка
Функторы в VB

Еще немного дожать и будет функциональный язык?
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39809016
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eolt,
ВБ6 и ВБА конечно братья, спору нет, с трех ссылок 2-я относительно ВБА
там сказано:
Я работаю с Excel VBA в течение последних нескольких лет, и я часто чувствую, что доступ к указателям на функции значительно облегчит мне жизнь, когда дело касается общего программирования.
можете пояснить о чем это он?
как по мне то если бы микрософтовцы дали такой инструмент как GoTo "НЕпеременная" и GoTo переменная
то вба от этого сильно бы выиграл
а что вы юзаете, когда эффективней по условию перейти в нужное место кода? спс
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39811867
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EoltМне кажется вполне можно реализовать эту современную парадигму в VB6.
Для примера:
Implementing Functional Programming in Visual Basic 6
Функции высшего порядка
Функторы в VB

Еще немного дожать и будет функциональный язык?
Функционально программирование (по Душкину) преследует такие задачи
как формальное доказательство теорем, генерация кода по некоторому DSL
или просто по нативному коду, описание парсеров и грамматик
и прочее похожее.
Оно (ФП) обладает свойствами чистоты функций (pure functions) которые гарантируются
компиллятором и умением работать с бесконечными списками и ленивыми структурами (lazy)
данных.

Я очень сильно сомневаюсь что какие-то пункты из этого возможно реализовать на VB
без создания нового VB или очень сильного изменения.

Вводить указатель на функцию или константу или список (List) в бейсик - это не означает поддержать
ФП - парадигму. Эти штуки есть почти во всех ЯП но это ИХ не делает нисколько ближе к ФП.

По поводу Basic. При его разработке изначально не ставились вообще такие задачи.

Более того. Бейсик позиционировался как очень простой императивный язык который
школьники осваивают за 2-3 урока (кроме разве что особенностей
организации I/O и памяти).

Вобщем 99% функциональщину определяет идея языка и культура того сообщества которое
его использует.

В бейсике идея - чисто императивная и все функциональные плюшки будут скорее всего забыты
или будут использованы бездарно или бесполезно. Опять-же по причине культуры сообщества.
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39813334
ldfanate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторкак по мне то если бы микрософтовцы дали такой инструмент как GoTo "НЕпеременная" и GoTo переменная
то вба от этого сильно бы выиграл

Не совсем понятно, накой вообще в бейсике goto, да ещё и динамические ?
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39814913
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ldfanate,
Не совсем понятно, накой вообще в бейсике goto, да ещё и динамические ?
имеются куски кода, которые обрабатываются очень быстро-нет претензий
но я программирую от случая к случаю и поэтому, чтобы наяву прочувствовать что делает код
делаю его пошагово нажимая эф8, и в этот момент начинаешь понимать насколько бы сократилось выполнение кода, имея в арсенале динамические goto
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39814920
iMrTidy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

А Функциональное Программирование тут при чем?
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39814944
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iMrTidy, можно и извиниться, что не в ту тему написал, можно создать новую тему, воз то и ныне там.....от этих телодвижений нужное вряд-ли появится....
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39815524
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа, "Run to Cursor" - чем не устраивает? все очень динамично.
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39815538
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alecko,
знаком только с Run Sub, погуглил о предложенном, это же обманка:
"осуществляет выполнение всех операторов от текущего оператора и вплоть до того оператора, в котором сейчас находится курсор"
смысл применяемого мною, есть текст, обработка идет в цикле по количеству слов
то есть в цикле обрабатываемое слово имеет ДвеПоследниеБуквы, например оно равно "ет"
вот и требуется в функции в коде перейти в то место, где есть метка Е: так как "ет" начинается на Е, если в процедуре будут такие прыжки то будет гут, согласен, что можно создать функцию
FunctionE и чтобы уходило туда, но тогда будет 33 функцию, не хочу так делать, нет смысла....
на мой взгляд
а то, что предложено, возможно если пробовать пошагово, возможно и быстрей нажимая Контрол+Эф8 чем просто Эф8, но ведь при выполнении макроса по задуманному сценарию выполнение нужного так прыгать в нужное место не будет
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39816226
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,
"Run to cursor" - это возможность перейти к проблемной части быстро
если нужно оценить работу в конкретном случае, то можно например так
Код: vbnet
1.
If right(str,2)="ет" then stop

и пошли пошагово смотреть
или, если работаете в цикле, можно так: дошли до i=95, затем снимаем маркер с If j=238 и переходим туда
Код: vbnet
1.
2.
3.
4.
5.
6.
for i=0 to ubound(mess)
If i=95 then stop
for j=0 to ubound(mess2)
' if j=238 then stop
next j
next


есть debug.assert
вобщем хватает возможностей.
а есть ещё err.Raise, шикарная Call Stack... и пр.
или debug.print с полным отчетом по всему циклу
динамические можно сделать используя err.Raise - будет прыгать туда куда надо, тогда когда надо-причем речь идет может идти о другой процедуре.
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39816264
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alecko, спасибо буду думать, если что будет непонятно, напишу
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39816778
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonОно (ФП) обладает свойствами чистоты функций (pure functions) которые гарантируются
компиллятором и умением работать с бесконечными списками и ленивыми структурами (lazy)
данных.


Не знал о таком. Но все равно ФП язык компилируется в x86-код в итоге. Поэтому думаю можно выразить какие-то элементы ФП и на VB6.
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39816801
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЯ очень сильно сомневаюсь что какие-то пункты из этого возможно реализовать на VB
без создания нового VB или очень сильного изменения.


На обычном Си реализуют ФП
А он попримитивнее VB будет. Думаю на VB тоже можно написать ФП-фреймворк.
Все нужное для этого есть.

- Указатели на функции
- Хвостовая рекурсия
- Иммутабельность
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39816803
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Продолжаешь упорствовать
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39816810
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так написать ФП фреймворк можно, начало к примеру тут
По-моему все основные проблемы решаемы. Надо только приложить усилия.
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39817185
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ФП это не фреймворк.
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39824571
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
похожее
Функциональные интерфейсы… в VBA
https://habr.com/ru/post/455347/
...
Рейтинг: 0 / 0
Функциональное программирование в VB
    #39824585
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофапохожее
Функциональные интерфейсы… в VBA
https://habr.com/ru/post/455347/

Круто. Там ФП по-сути уже рабочее
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Функциональное программирование в VB
    #40079370
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Функциональное программирование в VB
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]