User Tag List

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

Тема: "Умная линковка" в компиляторах

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

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

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

    По умолчанию

    Господа, что в сухом остатке.

    • Споры о точности формулировок являются неконструктивными. Обсуждение не-спектрумных средств разработки является оффтопиком. Вместо этого:
    • Нужно пролоббировать обсуждаемую нами "умную линковку" в сообщество разработчиков SDCC и tcc. Тогда вопрос об использовании smartlib станет неактуальным как минимум в контексте разработки на SDCC.
    • Надо разработать и адаптировать на SDCC побольше библиотек для ZX.


    Цитата Сообщение от Alcoholics Anonymous Посмотреть сообщение
    I prefer your method but I don't think you have solved the scoping issues?
    Ofront (and later, me) use name-mangling by such way:
    Код:
    MODULE Abc;
    IMPORT Fast, Compact, Standard, MyOwn; (* Different libraries *)
    
    CONST A=5; (* internal constant *)
    B* = 10; (* external/exported constant. the C-name is Abc_B *)
    
    PROCEDURE GetCompactMult* (): INTEGER; (* C name is Abc_GetCompactMult *)
    BEGIN
      RETURN Compact.Mult(A, B); (* Used compact-way *)
    END GetMult;
    
    PROCEDURE GetFastMult* (): INTEGER; (* C name is Abc_GetFastMult *)
    BEGIN
      RETURN Fast.Mult(A, B); (* Used fast-way *)
    END GetFastMult;
    
    END Abc. (* No conflict of names *)
    All the name conflict problems were solved by Josef Templ, the author of Ofront translator.

    Цитата Сообщение от Alcoholics Anonymous Посмотреть сообщение
    Maybe that's what everyone is talking about when they mention clang, etc. The automatic translation is not always easy to follow.
    You prefer C/asm coding. I prefer to code in Oberon and translate to C. Ofront is my assistant of this work - it translates Oberon to C automatically. And yes, C is closer to the low-level coding, and more suitable for coding for Z80 than Oberon - I know.
    Последний раз редактировалось Shadow Maker; 17.06.2014 в 20:18.

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

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

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

Похожие темы

  1. Ответов: 17
    Последнее: 26.12.2015, 23:22
  2. Ответов: 19
    Последнее: 30.09.2011, 03:08
  3. Ответов: 0
    Последнее: 15.08.2010, 14:38
  4. Ответов: 18
    Последнее: 27.08.2008, 20:27
  5. Ответов: 6
    Последнее: 20.11.2007, 11:29

Ваши права

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