LINUX.ORG.RU

История изменений

Исправление wandrien, (текущая версия) :

И ещё, пока не удобно своё собирать

Теперь удобно.

  • Все системно-специфичные вещи, связанные с инициализацией, теперь уехали в include/.
  • Теперь точка входа в программу как в zig: либо _start() (при работе без std либы), либо std.start() (при работе с std либой). std.start() выполняет базовую инициализацию и затем вызывает main().
  • В src/samples/ положил осмысленные примеры. Мусорные примеры удалил.
  • make.sh теперь собирает все примеры в src/samples/, какие найдёт. Можно просто добавить своё и запустить сборку.
  • make.sh теперь можно указывать действия в командной строке. Например, ./make.sh build_compiler – чтобы просто собрать компилятор, не гоняя тесты и все дополнительные штуки, которые выполняет дефотная цель build_all. Или ./make.sh build_samples, чтобы (пере)собрать примеры.

Всё, что относится к std либе, в будущем будет переделываться, начиная от конкретных наименований типов данных, и заканчивая способом подключения кода в проект. (Будет импорт модулей вместо include.)

Но в целом порядок в коде немного навёл в плане того, что где лежит.

Собственно примеры:

Исправление wandrien, :

И ещё, пока не удобно своё собирать

Теперь удобно.

  • Все системно-специфичные вещи, связанные с инициализацией, теперь уехали в include/.
  • Теперь точка входа в программу как в zig: либо _start() (при работе без std либы), либо std.start() (при работе с std либой). std.start() выполняет базовую инициализацию и затем вызывает main().
  • В src/samples/ положил осмысленные примеры. Мусорные примеры удалил.
  • make.sh теперь собирает все примеры в src/samples/, какие найдёт. Можно просто добавить своё и запустить сборку.
  • make.sh теперь можно указывать действия в командной строке. Например, ./make.sh build_compiler – чтобы просто собрать компилятор, не гоняя тесты и все дополнительные штуки, которые выполняет дефотная цель build_all. Или ./make.sh build_samples, чтобы (пере)собрать примеры.

Всё, что относится к std либе, в будущем будет переделываться, начиная от конкретных наименований типов данных, и заканчивая способом подключения кода в проект. (Будет импорт модулей вместо include.)

Но в целом порядок в коде немного навёл в плане того, что где лежит.

Собственно примеры:

Исправление wandrien, :

И ещё, пока не удобно своё собирать

Теперь удобно.

  • Все системно-специфичные вещи, связанные с инициализацией, теперь уехали в include/.
  • Теперь точка входа в программу как в zig: либо _start() (при работе без std либы), либо std.start() (при работе с std либой). std.start() выполняет базовую инициализацию и затем вызывает main().
  • В src/samples/ положил осмысленные примеры. Мусорные примеры удалил.
  • make.sh теперь собирает все примеры в src/samples/, какие найдёт. Можно просто добавить своё и запустить сборку.
  • make.sh теперь можно указывать действия в командной строке. Например, ./make.sh build_compiler – чтобы просто собрать компилятор, не гоняя тесты и все дополнительные штуки, которые выполняет дефотная цель build_all. Или ./make.sh build_samples, чтобы (пере)собрать примеры.

Всё, что относится к std либе, в будущем будет перелываться, начиная от конкретных наименований типов данных, и заканчивая способом подключения кода в проект. (Будет импорт модулей вместо include.)

Но в целом порядок в коде немного навёл в плане того, что где лежит.

Собственно примеры:

Исправление wandrien, :

И ещё, пока не удобно своё собирать

Теперь удобно.

  • Все системно-специфичные вещи, связанные с инициализацией, теперь уехали в include/.
  • Теперь точка входа в программу как в zig: либо _start() (при работе без std либы), либо std.start() (при работе с std либой). std.start() выполняет базовую инициализацию и затем вызывает main().
  • В src/samples/ положил осмысленные примеры. Мусорные примеры удалил.
  • make.sh теперь собирает все примеры в src/samples/, какие найдёт. Можно просто добавить своё и запустить сборку.
  • make.sh теперь можно указывать действия в командной строке. Например, ./make.sh build_compiler – чтобы просто собрать компилятор, не гоняя тесты и все дополнительные штуки, которые выполняет девотная цель build_all. Или ./make.sh build_samples, чтобы (пере)собрать примеры.

Всё, что относится к std либе, в будущем будет перелываться, начиная от конкретных наименований типов данных, и заканчивая способом подключения кода в проект. (Будет импорт модулей вместо include.)

Но в целом порядок в коде немного навёл в плане того, что где лежит.

Собственно примеры:

Исходная версия wandrien, :

И ещё, пока не удобно своё собирать

Теперь удобно.

  • Все системно-специфичные вещи, связанные с инициализацией, теперь уехали в include/.
  • Теперь точка входа в программу как в zig: либо _start() (при работе без std либы), либо std.start() (при работе с std либой). std.start() выполняет базовую инициализацию и затем вызывает main().
  • В src/samples/ положил осмысленные примеры. Мусорные примеры удалил.
  • make.sh теперь собирает все примеры в src/samples/, какие найдёт. Можно просто добавить своё и запустить сборку.
  • make.sh теперь можно указывать действия в командной строке. Например, ./make.sh build_compiler – чтобы просто собрать компилятор, не гоняя тесты и все дополнительные штуки, которые выполняет девотная цель build_all. Или ./make.sh build_samples, чтобы (пере)собрать примеры.

Всё, что относится к std либе, в будущем будет перелываться, начиная от конкретных наименований типов данных, и заканчивая способом подключения кода в проект. (Будет импорт модулей вместо include.)

Но в целом порядок в коде немного навёл в плане того, что где лежит.