User Tag List

Показано с 1 по 10 из 173

Тема: Разработка программ и игр для ZX Spectrum на языках Оберон-семейства

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,681
    Спасибо Благодарностей отдано 
    2,711
    Спасибо Благодарностей получено 
    170
    Поблагодарили
    130 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    Действительно. Да и на Си не зачем. Потому что язык должен быть эфективным. Я вот в первом своем посте в этой ветке запамятовал сказать, что не только язык, но и среда разработки должна быть эффективной. Для Спека пишут на всяких Бэйсиках и ассемблерах по причине того, что это отлаживать хоть как-то можно. Вроде как, Форт еще позволяет отлаживаться хоть как-то. А на Си и Паскале не пишут, а балуются. Потому что вот ну никак вот не получается отладить по шагам написанный код, посмотреть значения переменных на рантайме, глянуть, что нарисовалось на экране, что несерьезно в больших проектах. А связку Оберон - Си - ассемблер вообще не понятно как отлаживать на целевой платформе.
    Вопрос действительно очень интересный и не имеющий одного простого решения. С одной, впрочем, стороны поймём, что масштаб Оберон-проектов для ZX пока что ограничен 48кб памяти, поэтому говорить о реально больших проектах не приходится. С другой – взгляды Оберон-сообщества на отладку Вам вряд ли понравится.

    Я использую для отладки ASSERT'ы, и debug-вставки с отладочной распечаткой.

    Код:
    MODULE Sets; (* portable *)
    
    CONST
      Debug* = TRUE;
    
    END Sets.
    Код:
    MODULE Grx; (* portable *)
    IMPORT Sets, Debug;
    ...
    
    PROCEDURE PutSprite* (x, y: SpriteCoords; spr: Sprite);
    BEGIN
      IF Sets.Debug THEN (* Это прямой аналог ifdef'а, однако если Debug = FALSE, то никакого лишнего кода в прогу не вставится *)
        CASE x OF 0..MaxX: CASE y OF 0..MaxY: ELSE Debug.Stop("Bad sprite coords!") END END;
      END;
      ...
    END PutSprite;
    
    END Grx.
    Для профилирования использую эмулятор Fuse. В качестве пошагового отладчика – эмулятор Владимира Кладова EmuZWin. Так и баги в кодогенераторе SDCC искал, так и свои проги дебажил. С третьей стороны, если создать Оберон-обвязку в стиле ZX, то появляется интересная возможность отлаживать кроссплатформенные Оберон-модули, подходящие и для ZX, внутри хост-Оберон-среды типа A2 или BlackBox. Это возможно. Надо разрабатывать инструментарий.

    Я также не против иметь готовый пошаговый отладчик Оберон-программ чисто для Z80. Осталось его написать.

    А ещё Вы удивитесь и не поверите, но на самом деле потребность в отладке в Оберон-программах не такая большая, значительно меньше, чем на Си. Помогает и охрана типов, и автоматическое управление памятью. Но это не про связку Ofront/SDCC.

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    А это вообще народная программерская забава такая - намешать в одном коде исходников несовместимых от разных комплектов библиотек, и объявить язык убогим за то, что он это позволил.
    Угу, а кто их объявил несовместимыми друг с другом? Это же "модули"!

    Цитата Сообщение от Raydac Посмотреть сообщение
    насчет препроцессоров, уже прошли те времена когда препроцессор надо было иметь именно встроенном в языке, можно просто взять и заюзать внешний, например мой http://code.google.com/p/java-comment-preprocessor/
    Именно!
    Вот. Игорю тоже пришлось.

    Raider, Raydac, можете поспособствовать регистрации на данном форуме ещё одного оберонщика и спектрумиста? Ибо он пробовал зарегистрироваться, но регистрация отключена администрацией. Типа намёк: не любят здесь неофитов. А я припёрся весь такой красивый.
    Последний раз редактировалось Oleg N. Cher; 14.03.2012 в 22:47.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Разработка ZXOOM
    от Andrew771 в разделе Игры
    Ответов: 666
    Последнее: 16.08.2011, 17:22
  2. Разработка ZXOOM
    от Andrew771 в разделе Графика
    Ответов: 666
    Последнее: 16.08.2011, 17:22
  3. Разработка БК-0101-10
    от CodeMaster в разделе БК-0010/0011
    Ответов: 61
    Последнее: 21.04.2011, 21:13
  4. Подскажите пожалуйста, На каких языках пишутся игры.
    от sevol в разделе Программирование
    Ответов: 168
    Последнее: 14.01.2011, 15:42

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •