Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.59/70: Рейтинг темы: голосов - 70, средняя оценка - 4.59
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65

Отладка кода (программы) во FreeBasic

21.02.2024, 01:11. Показов 19136. Ответов 224

Студворк — интернет-сервис помощи студентам
Уважаемые программисты. Подскажите - как производится наладка отладка (не редактирование) программы (кода) во FreeBasic.
В QB это делалось просто. В меню Debug командой toggle breakpoint метится строка до которой проверить.
После запуска идет проверка, отмечаются ошибки, проблемы.
У меня во FreeBasic этот метод не работает. Программа на метку не реагирует, действия не совершаются. Прошу помощи.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.02.2024, 01:11
Ответы с готовыми решениями:

Компиляция программы Qbasic в Freebasic
По мере надобности компиляции одной из старых программ, написанных давным давно в Qbasic, установил Freebasic (OS Ubuntu). Пытаюсь...

Грамотная отладка программы, подмога в структуризации кода
Сразу прошу прощения, если ошибся разделом. Написал программу. Она простая. Она сжимает выбранную папку в zip и кладёт куда нужно. ...

Отладка программы в Delphi(нужно подредактировать текст чужой программы)
Взял у одногруппника похожую, на свою программу, нужно переделать под свое задание. А я сам чайник, и не могу понять, что там лишнее, а...

224
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
29.02.2024, 16:01  [ТС]
Студворк — интернет-сервис помощи студентам
The trick,

Да как Вам угодно. Мне бы было интересно пообщаться на эту тему. Если Вы давно изучаете то можете продемонстрировать наверное что-то что было бы интересно. Можно создать отдельную тему для этого.
К сожалению, должен быть осмотрителен. Есть то, что нельзя публиковать, по разным причинам. Если получится озвучить, что в планах - вполне можно было бы это чудо показывать. И непонятны пока последствия этих показов. Не обязательно безобидных. Общаться могу на любые темы не только как слушатель. Вот в программировании как раз слабоват.

Добавлено через 18 минут
Mikle Quits, Да я задолбался управляться а окном ответа. Особенно с цитированием. Большие циататы вообще неуправляемы. Эти символьные атрибуты автоматом ставятся, вручную не умею. короче сгодня много текста попортил

Добавлено через 12 минут
Mikle Quits,
А клавиш будет сколько угодно

я в предыдущих кое что написал. Повторю. Да сколько угодно вначале, потом оптимальное количество выберется. Это будут не ноты а как бы ступени развития мелодии от спокойного до активного. Звуки будут нести функцию только окраса музыки. Тоже развитие красоты. Эмоции будут создаваться порядком(последовательностями, или единовременным озвучиванием)
клавиши можно будет нажимать любые В пределах тональностей, (если это будет некий физический инструмент, что менее желательно, сами клавиши будут ограничителями возможностей.) Музыкальные законы нарушены не будут. Только несколько будет изменена краска мелодии.
А мажу это я сейчас - заколебался ответы писать -цитировать, то окно убежит не вернуть, то тексты повреждаются.
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.02.2024, 17:44
Mikle Quits, а ты не пробовал тарелки (Crash/Ride) моделировать так?
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
29.02.2024, 19:38
Цитата Сообщение от volchv Посмотреть сообщение
Потому в желании - иметь возможность оформлять звук так как делают это синтезаторы но без привязки к нотам, любые частоты.
Выход из равномерно темперированного строя требуется очень узкому кругу музыкантов.
Это либо какая-то редкая арабская музыка, либо атональная.
Кстати у библиотеки Squall таки есть интерполяция. Можете её взять за основу, ресемплинг там есть.
Но нужно будет на каждые пол октавы иметь по семплу и делать муторные расчёты для ресемпла,
чтобы ноты чередовались и это не выглядело фигово.

Цитата Сообщение от volchv Посмотреть сообщение
Поэтому вопрос - возможно ли в Open GL загрузить математику этого куба и таким образом производить в нём указанные действия.
Это API визуализации, там дофига чего можно, расширения, шейдеры всякие. Если надо что-то
серьёзно делать, например хочешь свой 3D-движок, то как пишет Замабувараев - надо изучить
работу с матрицами, т.к. в одну матрицу можно засунуть много операций, хотя на деле может
хватить и формулы поворота вокруг одной оси, применяя её последовательно к центрованному
объекту - будем получать вращение объекта. Мне в своё время очень помогли брошюры
по планиметрии.

Цитата Сообщение от volchv Посмотреть сообщение
На нашем то мало кому понятно, что я хочу сделать.
В том то и дело, по описанию тут мало кто что понял, то ли это научная графика, то ли
просто какая-то демка для расслабления.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
И никакого ООП.
4GL это те реалии в которых мы живём до тех пор, пока он не потребуется.
Его использование это вопрос чисто идеологической потребности, никак не моды.
Львиная доля программ осиливается на элементарном 3GL.
А потребность возникает на огромных объёмах кода(> 30-50 т. строк) и в командах
больше одного человека. И создавали его не затем, зачем его используют сейчас 99%.
Вся фишка этих поколений ЯП в том, что не умея делать хорошо на более раннем -
не получится даже начать на более позднем. Точнее начать то начинают, но как
получается это нам тоже известно. В небольших программах оно скорее гадит, а если
чувак ещё и занимается излишним абстрагированием - то мы имеет тот же макаронинг,
точно так же неразгребаемый.

Добавлено через 12 минут
Цитата Сообщение от The trick Посмотреть сообщение
Ну на мой слух все эти натуральные строи и прочий микротонал звучат неблагозвучно
Помню давно, на ютубе, видел какое-то видео, где дядька перестроил фо-но, и нажимая всякую белиберду
получал более менее благозвучные абстракции. Наверное автор посмотрел это видео и хочет так же.
По сути конечно он прав РТС искусственный, просто ухо большинства людей привыкло к нему
и более менее осмысленно может считывать муз. образы. Другой строй скорее всего даст какую-то
"инопланетную" не особо понятную людям музыку, хотя по сути это обычный питч и казалось бы,
всё будет всё равно зависеть от слуха пишущего. В общем пусть экспериментирует, это как минимум
интересно.
0
 Аватар для Mikle Quits
1023 / 312 / 18
Регистрация: 21.01.2023
Сообщений: 548
29.02.2024, 19:41
Цитата Сообщение от The trick Посмотреть сообщение
а ты не пробовал тарелки (Crash/Ride) моделировать так?
Если так же делать не 1D, а 2D массив, соответственно просчитывать не 2, а 4 соседних звена, выходят неплохие колокола:
https://disk.yandex.ru/d/_BIXEKp_3LqV4s
Crash/Ride пока удачных не добился, а вот хайхэт ничего так:
https://disk.yandex.ru/d/iEtDyjMuWvSETA
1
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
29.02.2024, 19:49
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Львиная доля программ осиливается на элементарном 3GL.
Осиливается понять)). И поддерживать. ООП уже не рулит. Мейерс, апологет ООП написал статью-откровение, в котрой высказал утверждение, что методы вынесенные за пределы класса более инкапсулированы, чем публичные методы класса. Более того: доказал это. А раньше считалось всё наоборот. Вот почему ООП доживает последние дни. Вот почему в С++ и другие языки вводят элементы метапрограммирования, функциональные элементы. Наблюдается уход в сторону. Приходит понимание, что поддерживать программы очень трудно, когда все настолько запутанно в иерархиях классов, что поддерживать это невозможно. Да и данные есть просто данные, и только тогда они становятся объектами управления, а функции работы с этим данными становятся объектно-ориентированными!
Ведь весь мир состоит не из объектов, а из функций, весь мир есть одна большая Функция..
Взять basic. Помните там были процедуры, переход на которые происходил по gosub? Казалось бы: фу какая древность? Даже имен не было у них, и у них была одна глобальная область видимости. А как же сейчас стало модным пихать во все мэйнстрим языки так называемые анонимные функции, лямбда-выражения, которые могут сохранять свой контекст, а значит их можно возвращать из других функций. Это называется "замыканием". Конечно это разные вещи, но в бейсике эти функции и так видели свой контекст, и его не надо было сохранять. Вот так вот.. Вот как все стало извращено. А сколько памяти жрут эти концепции уже мало кого заботит.
Если те же gosub процедуры обернуть в настоящие процедуры, то мы получим еще один механизм упрощения кода. В Паскале можно определять другие процедуры. А бейсик может иметь процедуры-помощники с именами-метками без аргументов. Если её контекст чисто статический (т.е. переменные которыми она пользуется лежат НЕ на стеке), то её также можно возвращать, т .е. пользоваться ей извне процедуры-обертки. Хотя не знаю для чего это может понадобится.
То есть: инструменты делают сложными сознательно или подсознательно, чтобы привязать к себе, а значит качать бабло на поддержке.
Извините за оффтоп.
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.02.2024, 20:25
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Помню давно, на ютубе, видел какое-то видео, где дядька перестроил фо-но, и нажимая всякую белиберду
получал более менее благозвучные абстракции. Наверное автор посмотрел это видео и хочет так же.
По сути конечно он прав РТС искусственный, просто ухо большинства людей привыкло к нему
и более менее осмысленно может считывать муз. образы. Другой строй скорее всего даст какую-то
"инопланетную" не особо понятную людям музыку, хотя по сути это обычный питч и казалось бы,
всё будет всё равно зависеть от слуха пишущего. В общем пусть экспериментирует, это как минимум
интересно.
Да есть такой стиль - микротональная музыка. Я слушаю вот этого человека, да звучит немного необычно, но все равно чего-то особенного в этом нет. Лично мне кажется что просто немного не строит инструмент.



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

Добавлено через 3 минуты
Mikle Quits, неплохо. Ну райды и креши видел генерировали не физическим моделированием, а субтрактивным синтезом. http://www.mcld.co.uk/sc_cymbals_1.mp3
1
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
29.02.2024, 22:48
Цитата Сообщение от The trick Посмотреть сообщение
Лично мне кажется что просто немного не строит инструмент.
Да нестроевич есть, но прикольный.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
Если те же gosub процедуры обернуть в настоящие процедуры, то мы получим еще один механизм упрощения кода.
Обычные процедуры это развитие GOSUB, более выгодное со всех точек зрения. И именно QB тут стрельнул
и "научил" многих правильному мышлению, где всё не в куче, а обособлено, т.н. чёрные ящики или
попросту декомпозиция. С появлением процедур GOSUB мгновенно устарел и использовался лишь для
ON событий, что позже было заменено указателями на функции обратного вызова(callback-и).

Цитата Сообщение от CoderHuligan Посмотреть сообщение
(т.е. переменные которыми она пользуется лежат НЕ на стеке
Так работали функции DOS системы, ты им отправляешь в регистре параметры, она далает работу.
Имеет смысл чисто на ассемблере при построении своих низкоуровневых API. В остальном это
GOSUB-подобное уже отжило своё. Гибкости самого банальнейшего QB с его областями видимости
переменных хватает почти на любой алгоритм. Хочу чтобы люди понимали, когда говорю о QB, не
имею в виду DOS и всё вот это старьё, имеются в виду чисто языковые средства описания алгоритмов.

Добавлено через 1 час 28 минут
Цитата Сообщение от CoderHuligan Посмотреть сообщение
ООП уже не рулит.
Всё там рулит, просто и мозги надо перевести ещё на уровень выше, при этом иметь крайне
хорошее понимание корректного абстрагирования. Ну и это проекты совсем другого масштаба.
Всё дерьмо в том, что все или почти все обучающие видео по кодингу начинаются с "пишем класс".
Прикинь в пустую голову, минуя все процессы становления головы сразу начинают вливать 4GL.
Человек не понимает как человечество к этому пришло и просто как обезьяна повторяет, позже он
что то начинает догонять, но уже слишком поздно, в бошке уже запечены те или иные постулаты.
В прошлых обсуждениях уже показывал десятистрочное абсолютно дебильное абстрагирование,
если обучает такой вот "конь в вакууме", то мы ничего хорошего не получим по итогу из свежей
головы, это сразу крах. Речь о том, что есть принципы и аспекты которые не всегда напрямую
связаны с парадигмой, структурной, процедурой и прочими, а являются плодом получения
проектного практического опыта который тем богаче, чем сложнее проект и чем больше кругозор
кодера(т.е. проекты на ЯП разных поколений), ну и здравый смысл никто не отменял(адекватное
взвешивание всех за и против, включая пользу для окружающих, а не только личное обогащение).
0
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
29.02.2024, 22:56  [ТС]
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Это API визуализации, там дофига чего можно, расширения, шейдеры всякие. Если надо что-тосерьёзно делать, например хочешь свой 3D-движок, то как пишет Замабувараев - надо изучитьработу с матрицами, т.к. в одну матрицу можно засунуть много операций, хотя на деле может хватить и формулы поворота вокруг одной оси, применяя её последовательно к центрованному
объекту - будем получать вращение объекта. Мне в своё время очень помогли брошюры
по планиметрии.
Пока понимание не срослось. Возможности метода с матрицами понятны. Не понятно как прописать под три десятка точек внутри обозначенного куба с возможностью наблюдать за их последующем поведении во времени при угловых поворотах всего объекта. Будет понятно, когда попробую.
Кстати, придумал для наглядности пример. В , допустим, стеклянную банку налит прозрачный гель из эпоксидной смолы, засыпано некое (25) количество горошин. Размешано, до равномерного распределения в этой среде. Смола встала.И вот всё что в этой банке теперь можно изучать, приняв во внимание, что горошины могут меняется как по форме так и содержанию, по определённым законам. При этом какую то часть изменений прётся реализовывать самому - геометрические параметры, некоторый характерный математический параметр. Поведение, состояние, все формы изменений "горошин", что будут наблюдаться и есть суть интереса.

Цитата Сообщение от The trick Посмотреть сообщение
У него полно всяких экспериментов и с размерами и с частотами. Я пробовал тоже такое делать, ну фиг его знает - не звучит, либо я просто не знаю теорию по микротоналу.
Да есть такой стиль - микротональная музыка. Я слушаю вот этого человека, да звучит немного необычно, но все равно чего-то особенного в этом нет. Лично мне кажется что просто немного не строит инструмент.
Мы обсуждаем здесь две темы и пытаемся их сдвинуть. Мои собеседники выводят на обсуждение разные примеры чего то пока не распространённого необычного, но в рамках всё тех же законов современной музыки. Вся эта музыка демонстрируется на современных инструментах. Какие бы звуки они не извлекали, соответственно, реализуют (даже какофонии звуков на инструментах) все те цифровые соотношения звуковые, которые заложены в тот самый темперированный строй. Я же хочу реализовать применение этих самых - красивых, фантастически разнообразных звуков по иному закону, который я имею в распоряжении. Он создаёт колоссальные возможности по реализации музыки. Подвижка будет в том, что создавать музыку сможет даже ребёнок, по сиюминутным - настроению, активности, потребности. Там не нужна будет вся та солома, из которой выстроены современные муз законы, которую вынужден изучать и следовать им музыкант. Причём законы уводящие от природы звуков. Первоначально инструментом может быть только компьютер (реализовывается математика) с выводом на озвучивающую аппаратуру (колонки и иное). В дальнейшем (техника молниеносно развивается) это будет носимый аппарат в формате плеера видимо с кнопочной клавиатурой и возможностью записывать вытворяемое. А может быть с ёмкостным преобразователем управления командами озвучки, как когда то это делалось при игре на Терменвоксе - электронный муз инструмент советских времён.
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.02.2024, 23:24
Цитата Сообщение от volchv Посмотреть сообщение
Пока понимание не срослось. Возможности метода с матрицами понятны. Не понятно как прописать под три десятка точек внутри обозначенного куба с возможностью наблюдать за их последующем поведении во времени при угловых поворотах всего объекта. Будет понятно, когда попробую.
Кстати, придумал для наглядности пример. В , допустим, стеклянную банку налит прозрачный гель из эпоксидной смолы, засыпано некое (25) количество горошин. Размешано, до равномерного распределения в этой среде. Смола встала.И вот всё что в этой банке теперь можно изучать, приняв во внимание, что горошины могут меняется как по форме так и содержанию, по определённым законам. При этом какую то часть изменений прётся реализовывать самому - геометрические параметры, некоторый характерный математический параметр. Поведение, состояние, все формы изменений "горошин", что будут наблюдаться и есть суть интереса.
Это все делается элементарно через аффинные преобразования и проекцию. Вот, вот и вот примеры. Задается облако точек через координаты, трансформируется через матрицу преобразования и результат умножается на матрицу проекции. Это все можно оптимизировать для частных случаев - то что сделано в вышеуказанных примерах.

Цитата Сообщение от volchv Посмотреть сообщение
Мы обсуждаем здесь две темы и пытаемся их сдвинуть. Мои собеседники выводят на обсуждение разные примеры чего то пока не распространённого необычного, но в рамках всё тех же законов современной музыки. Вся эта музыка демонстрируется на современных инструментах. Какие бы звуки они не извлекали, соответственно, реализуют (даже какофонии звуков на инструментах) все те цифровые соотношения звуковые, которые заложены в тот самый темперированный строй. Я же хочу реализовать применение этих самых - красивых, фантастически разнообразных звуков по иному закону, который я имею в распоряжении. Он создаёт колоссальные возможности по реализации музыки. Подвижка будет в том, что создавать музыку сможет даже ребёнок, по сиюминутным - настроению, активности, потребности. Там не нужна будет вся та солома, из которой выстроены современные муз законы, которую вынужден изучать и следовать им музыкант. Причём законы уводящие от природы звуков. Первоначально инструментом может быть только компьютер (реализовывается математика) с выводом на озвучивающую аппаратуру (колонки и иное). В дальнейшем (техника молниеносно развивается) это будет носимый аппарат в формате плеера видимо с кнопочной клавиатурой и возможностью записывать вытворяемое. А может быть с ёмкостным преобразователем управления командами озвучки, как когда то это делалось при игре на Терменвоксе - электронный муз инструмент советских времён.
Я не понимаю что Вы хотите сказать. Если Вы рассказываете не о темперированном строе, то это микротонал - их в общем случае бесконечное количество. То о чем я выше написал, забейте в ютуб микротональная музыка там будут все эти и неравномерно темперированные строи, и натуральные, и нейтральные трезвучия и прочая дичь. Если Вы говорите про что-то другое - то объясните пожалуйста конкретнее, т.к. не только я Вас не понимаю до конца.
1
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
01.03.2024, 13:09
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Обычные процедуры это развитие GOSUB, более выгодное со всех точек зрения. И именно QB тут стрельнул
и "научил" многих правильному мышлению, где всё не в куче, а обособлено, т.н. чёрные ящики или
попросту декомпозиция. С появлением процедур GOSUB мгновенно устарел
Ну а зачем тогда придумали inline процедуры? Зачем тогда разрабы до сих пор юзают макросы? Ничего не нужно? подавай нам все универсальное? Более того вводят коорутины..
И кстати, если посмотреть на стандарты бейсика, в том числе гостовский стандарт, то там есть gosub. Стандарт должен поддерживать данную фичу. Иначе это не будет соответствовать стандарту, а значит бейсиком не является. Пусть будут функции с прологом, пусть будут без пролога и эпилога. У разраба будет выбор.

Добавлено через 1 час 6 минут
Иначе каждый создатель своего языка может назвать его бейсиком или c++. Для чего создаются стандарты? Есть стандарт на minimal basic, есть на full basic, есть по ГОСТ. Если хочешь назвать язык бейсиком, то будь добр обеспечь ядро в соответствии со стандартом. А создатели FB поступили наоборот. Создали отдельные опции компиляции. При этом нельзя смешивать "новый" код со "старым". Получилось, что в одном языке сразу нечто похожее на Си и бейсик, которые не уживаются вместе.. И "легкий" режим не спасает.
0
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
01.03.2024, 16:12  [ТС]
The trick, Мда, как еще объяснить....
Нет той музыки о которой я говорю, потому что она основана на определённом законе. Не на музыкальном. Это система, затрагивающая что угодно - физику, математику, колебания, сейсмологию, теорию катастроф, биологию, физиологию....Куда ни плюнь... В ней музыка - одно из явлений. Описывать данную информацию к сожалению еще не время, да и зачем.
Есть задача - оформить звуковой ряд красивыми звуками. Частично эта задача, похоже, решается методом подсказанным Замабумараев. Wav звуки во фрути лопс. Еще не пробовал, не знаю, насколько это будет производительно, рационально .
Но вот в желаниях всё же иметь инструмент, без всевозможных промежуточных действий извлекать то о чём здесь говорю.

Добавлено через 25 минут
Цитата Сообщение от The trick Посмотреть сообщение
Это все делается элементарно через аффинные преобразования и проекцию. Вот, вот и вот примеры. Задается облако точек через координаты, трансформируется через матрицу преобразования и результат умножается на матрицу проекции. Это все можно оптимизировать для частных случаев - то что сделано в вышеуказанных примерах.
Да, это близко к нужному. Первый пример с конусом уже что то позволил бы посмотреть. Если, как вы сказали, возможно и "облако точек" реализовать в этой системе, то было бы наверное здорово. Тексты (коды) присутствовали программ, видел. Суть их возможно реализовать в FB ? Ну, как займусь, наверное наберусь наглости, если что, попробую консультироваться.

Добавлено через 5 минут
The trick, Короче, есть ощущение, что дело начинает двигаться. Я уже здесь мучал людей вопросами о выводе звука программой на FB. Худо бедно кое каких успехов добился. Можно продолжать двигаться дальше.
0
 Аватар для Mikle Quits
1023 / 312 / 18
Регистрация: 21.01.2023
Сообщений: 548
01.03.2024, 19:28
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Ну а зачем тогда придумали inline процедуры?
Inline процедуры синтаксически не отличаются от обычных процедур, и зона видимости переменных в них своя, а не общая. Их компилятор "инлайнит" для производительности.
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Для чего создаются стандарты? Есть стандарт на minimal basic, есть на full basic, есть по ГОСТ. Если хочешь назвать язык бейсиком, то будь добр обеспечь ядро в соответствии со стандартом.
Так это и не Basic, а Free Basic, Visual Basic, Dark Basic и т. д. Это другие названия, языки схожи с бейсиком, и названия схожи, но другие. Вот в СИ есть очень жёсткий стандарт, но есть СИ#, в котором его и не пытаются соблюдать, и ничего?
Этак в стремлении вернуться к истокам можно вернуть Read, Data, обязательную нумерацию строк.
Цитата Сообщение от volchv Посмотреть сообщение
она основана на определённом законе. Не на музыкальном
Кем определённом? Где можно почитать определение? Пока хоть приблизительно не напишешь определение, разговор бессмыслен.
2
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
01.03.2024, 19:39
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Ну а зачем тогда придумали inline процедуры?
Было в прошлом веке когда компиляторы не умели оптимизировать. В 21 веке оптимизирующий компилятор уже плюёт на все ключевые слова вроде INLINE и встраивает функцию самостоятельно. Поэтому в современном мире ключевое слово вроде INLINE это теперь избыточное усложнение, визуальный мусор.
Цитата Сообщение от CoderHuligan Посмотреть сообщение
У разраба будет выбор.
Выбор между хорошим кодом (функции) и макаронингом (goto, gosub)? Не должно быть такого выбора, стандарт языка и компилятор должны запрещать плохой код.
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Иначе каждый создатель своего языка может назвать его бейсиком или c++
Не может. У бесика verbose синтаксис, а у си вместо синтаксиса используются закорючки, псевдографика и ASCII‐арт.
0
0 / 0 / 0
Регистрация: 21.12.2014
Сообщений: 65
01.03.2024, 23:30  [ТС]
Mikle Quits,
Цитата Сообщение от Mikle Quits Посмотреть сообщение
Кем определённом? Где можно почитать определение? Пока хоть приблизительно не напишешь определение, разговор бессмыслен
Определения из работы, не публикованной, из иной сферы. Суть её не может выносится на рассмотрение, такое бывает. Я здесь пару раз сказал это. Даже наводящие формулировки. Увы. Здесь вы все прекрасно помогаете без лишних подробностей, уже это получается. Может когда нибудь случится к показу.

Относительно музыки. На заре её создания люди занимались теми самыми натуральными строями. Теми, что в естественном виде существовали и реализовывались примитивными инструментами.
Сейчас возможно воссоздать музыку природы в совершенстве. Математика и компьютер. Темперированный строй облегчил, обогатил взаимодействие с музыкой, но увёл от совершенства. Компьютер позволяет вернуться к истокам.
Математическое решение есть, упрощающее музыкальные инструментальные проблемы. А современная тенденция - зту проблему неимоверно раздувает. Гриф гитары для микротональной игры.
Миниатюры
Отладка кода (программы) во FreeBasic  
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
02.03.2024, 00:50
Цитата Сообщение от CoderHuligan Посмотреть сообщение
И кстати, если посмотреть на стандарты бейсика, в том числе гостовский стандарт, то там есть gosub. Стандарт должен поддерживать данную фичу. Иначе это не будет соответствовать стандарту, а значит бейсиком не является.
Ты про этот: https://meganorm.ru/Index2/1/4... 826945.htm ?
Его срок действия закончился в 94-м году.
Мало того что он безбожнейше устарел за 35 лет. Его создавали когда винды в том виде, в котором
мы её знаем ещё не существовало. Поэтому данный стандарт уже не актуален и далёк от любых
современных стандартов и реалий. Чтобы назвать диалект бейсиком достаточно реализации и здравого
смысла, никто не обязан ныне соответствовать устаревшим стандартам. Например PureBasic не соответствует
этому стандарту, но является одним из топовых компиляторов на текущий момент.
FreeBasic тоже не соответствует данному стандарту, потому как режим FB(он работает по умолчанию)
не поддерживает ни ON эвентов, ни твоего любимого GOSUB ни ещё пачки того, что там указано.
Стандарты вообще не для того создавались чтобы "именовать либо не именовать" основное их назначение
получить стабильность на определённое кол-во времени. В то время стабильность была, далее все насрали
на стандарты какого-то там Бейсика, появился интернет и широкие массы узнали, что там упырёнок Эдсгер
пролепетал, многие сделали неверный вывод. Языки совершенствуются, принципы совершенствуются,
идеологии совершенствуются. Мы должны уважать старое, но думать о качестве, удобстве, комфорте будущего,
искать грамотные ходы и решения, это должен быть не слепой ревизионизм, а осмысленный.
0
Эксперт по электронике
7203 / 3380 / 346
Регистрация: 28.10.2011
Сообщений: 13,303
Записей в блоге: 7
02.03.2024, 01:36
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Например PureBasic не соответствует этому стандарту
Ну может на на 100%, но это и не удивительно, т. к. язык развивается, но в нем есть упомянутые, goto, gosub, read, data и т. д. Разве что номеров строк нет. Этот подход к переходам сильно устарел. Метки более информативны в этом плане.
Цитата Сообщение от Quiet Snow Посмотреть сообщение
не поддерживает ни ON эвентов
А разве они есть в стандарте?
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
02.03.2024, 01:59
Цитата Сообщение от locm Посмотреть сообщение
А разве они есть в стандарте?
Бегло прошёлся, как ни странно, но есть(ON ERROR). Единственное, что у меня не получилось найти это
протокола МГС от 12 марта 1993 года, где якобы снимаются сроки действия. Хотел лишь
найти подтверждение тому, что не создавали никаких новых стандартов и просто умыли руки.
В общем-то понимая, какой кирдык творился в 93 году можно "понять и простить".
А по факту авторы и не рассчитывали этот документ на бессрочное пользование, о чём
там и написано, т.е. неформально язык просто похоронили таким способом.
Ну и международный стандарт ISO, который наш включал, - отозвали. Мы понимаемс...
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
02.03.2024, 11:39
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Единственное, что у меня не получилось найти это
протокола МГС от 12 марта 1993 года, где якобы снимаются сроки действия.
Значит не снимаются. А РФ есть правоприемница СССР. Поэтому до сих пор актуален.
Цитата Сообщение от Mikle Quits Посмотреть сообщение
Inline процедуры синтаксически не отличаются от обычных процедур, и зона видимости переменных в них своя, а не общая.
Единственное отличие - отсутствие автоматических локальных переменных. Но видимость что у тех что у других одна: глобальная. И как бы неплохо иметь в арсенале процедуры, которые используют стек только для адреса возврата, а не для параметров. А лучше всего и от стека избавиться если каждая процедура будет иметь свое скрытое поле для адреса возврата. А если надо рекурсию, то у нас есть функции.
Цитата Сообщение от Mikle Quits Посмотреть сообщение
Так это и не Basic, а Free Basic, Visual Basic, Dark Basic и т. д. Это другие названия, языки схожи с бейсиком, и названия схожи, но другие
Ну да. Но если в названии присутствует слово basic то хотя бы надо обеспечить ожидания того, что существует стандартное ядро, которое язык поддерживает. Так поступили создатели c++, включив в язык ядро Си. То есть по названию видно, что язык расширяет базовую функциональность.
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Мало того что он безбожнейше устарел за 35 лет.
Вот не уверен.. Выскажу свое мнение.
Именно он позволял создавать алгоритмы, т.е. приучал к алгоритмическому мышлению. Современные языки его убивают. В этом я уверен на все 100%. То есть для обучения алгоримизации basic подходит идеально.
Критике подвергают обычно метки строк. В книге Йодана о структурном программировании, автор упомянул разговор с одним проф программистом, который для имен процедур, переменных и т.д. использовал такие имена: f123, v34 и т.п. На вопрос почему так, он ответил: это позволяет тем, кто будет разбираться в коде чаще смотреть в документацию, так как имена часто не позволяют четко понять что делает та или иная функция. И он был прав, хотя Йодан и критиковал такой подход.
Добавлю, что подобный подход еще снимает с программиста нагрузки по выдумыванию имен идентификаторов. Что делает та или иная функция прописывают в документации на чистом русском (английском) языке. С метками может быть проблема, когда применяется renum, поэтому все ссылки в документации на числовые метки строк становятся невалидными. Тогда надо как-то заставить renum и в документации изменять все метки. Но лучше перед меткой, которую нужно задокументировать написать комментарий и ссылаться на него по его собственному номеру или как-то иначе.
Вообще же наличие строковых меток есть наследие интепретационного прошлого языка. Какие плюсы я тут вижу:
1. нумерация строк позволяет с первого взгляда на текст сказать: да, это есть программа для компьютера. Именно так она должна выглядеть.
2. позволяет избежать вложенности блоков, а значит упростить синтаксис и ужать текст программы. Переход из состояния в состояние (с метки на метку) в редакторе можно подсвечивать стрелками и переходить автоматически. Это легко реализовать.
3. не надо выдумывать имена меткам, которые самоочевидны и удерживать в памяти: а какие метки я уже навыдумывал. Конечно компилятор подскажет если будет дубляж, но всё же.
4. программист сосредоточен только на создании алгоритма и описание его работы, вся черновая работа возложена на компилятор, который переименовывает и пр.
5. упрощает сам компилятор и ускоряет его работу.
0
 Аватар для Mikle Quits
1023 / 312 / 18
Регистрация: 21.01.2023
Сообщений: 548
02.03.2024, 12:46
Цитата Сообщение от CoderHuligan Посмотреть сообщение
если в названии присутствует слово basic то хотя бы надо обеспечить ожидания того, что существует стандартное ядро, которое язык поддерживает. Так поступили создатели c++, включив в язык ядро Си. То есть по названию видно, что язык расширяет базовую функциональность.
Но так не поступили создатели Си#, в названии которого тоже присутствует слово Си, что я уже упоминал. Есть такая максима - "наш товар не обязан соответствовать вашим ожиданиям". Ожидания и обязательства - это разные вещи.
Цитата Сообщение от CoderHuligan Посмотреть сообщение
видимость что у тех что у других одна: глобальная
Видимость чего? Переменных, или процедур?
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
02.03.2024, 13:20
Цитата Сообщение от Mikle Quits Посмотреть сообщение
Видимость чего? Переменных, или процедур?
Переменных обьявленных в глобальной области, и процедур в той же области. Если есть возможность сразу прыгать в тело процедуры и выпрыгивать из него до return, то легко создать коорутины. А попробуйте это сделать не имея такой возможности. И что: устарели gosub?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.03.2024, 13:20

Отладка Кода
{ Console.WriteLine("Привет пользователь. Как тебя зовут?"); string name = Console.ReadLine(); ...

Отладка кода
Я на форуме давно... и вот стало мне жутко интересно, кто как код отлаживает... потому 99% начинающих вообще никогда не слышали про...

Отладка кода
Олимпиадная задача : вводятся N строк описания товаров (стоимость, время завоза и время вывоза), N строк описания запросов (время захода...

Отладка кода
программа для удаления повторяющихся элементов в строке flag::Int->->Int flag n=FALSE flag n(x:xs) = if x ==n then TRUE ...

Отладка кода
Помогите пожалуйста отладить код. Собрал вот такое #include<iostream> int Check(int a) { int b; for(b = a * a; a &&...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
140
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru