Size: a a a

2021 May 23

DP

Dmitry Popov in dlang.ru
dmd в оба формата умеет, старый и "новый"
источник

U

UsernameAK in dlang.ru
я про него узнал уже потом
источник

U

UsernameAK in dlang.ru
когда перестал писать на D
источник

DP

Dmitry Popov in dlang.ru
pebkac
источник

ID

Iv@n Dereviankin in dlang.ru
Завязываться на LLVM - зло
источник

ID

Iv@n Dereviankin in dlang.ru
На опыте руста могу сказать
источник

ID

Iv@n Dereviankin in dlang.ru
Ибо время компиляции у раста сейчас одно из самых долгих среди вообще всех языков. Ну и нормальных альтернативных нету, так как разработчики сразу делают компилятор,а не стандарт для реализации оного
источник

Е

Евгений in dlang.ru
А откуда уверенность, что тормознутость компилятора rust из-за llvm?
Ldc тоже на llvm, но не тормозит так страшно.
источник

KF

Konstantin Firsov in dlang.ru
Как-то экспериментировал с запуском кода на ди без оси через bochs (на qemu тоже работало) с grub. Смутно помню, что ldc просто перестал компилить и вываливал ошибку, тогда я поменял его на dmd и все завелось, хотя, возможно, просто использовал не те флаги. Но с тех пор в основном dmd и пользуюсь.
источник

DH

Dark Hole in dlang.ru
А что надо было для запуска без ОС? Статический бинарник или ещё что-то?
источник

OB

Oleg B in dlang.ru
там вроде без чистого asm не обойтись, в dmd и ldc вставки ассемблера по разному сделаны
источник

DH

Dark Hole in dlang.ru
Даже с grub?
источник

OB

Oleg B in dlang.ru
хз
источник

KF

Konstantin Firsov in dlang.ru
Ядро на ди компилится в статическую библиотеку с betterC, отдельно загрузчик на ассемблере, который вызывает главный метод ядра все это кладется в директорию, из нее ld выдает бинарный файл, переставляя в начало загрузочные секции, чтобы все было Multiboot2, потом grub делает загрузочный образ через grub-mkrescue, на выходе получается iso, который уже грузит bochs\qemu. Конечно, чтобы обращаться к портам, разрешать\запрещать прерывания и т.п. нужны ассемблерные вставки в ди-коде.
источник

KF

Konstantin Firsov in dlang.ru
я выбрал самый простой метод запуска - через grub.
источник

KF

Konstantin Firsov in dlang.ru
Насколько я помню, часть кода я подсматривал тут https://github.com/docandrew/Fortress.  Но там вроде были какие-то баги, вроде с клавишами клавиатуры что-то было, то ли с нажатием, то ли выдавался неправильный код, не помню. Петом занимался давно и в betterC кодить не особо понравилось. Когда-нибудь снова к нему вернусь, кейс - простая игра через терминал.
источник

KF

Konstantin Firsov in dlang.ru
ради интереса даже попробую скомпилить свой старый пет, запустится ли с новым dmd...
источник

KF

Konstantin Firsov in dlang.ru
Ну что можно сказать, qemu стартует и вываливает ошибку, bochs стартует, но с лютейшими тормозами на каждое действие. Не помню, чтобы я ставил какие-то ограничения на виртуалку... в лог идет ошибка с FPU, вроде её не было раньше, хотя и не факт. Сама логика более-менее работает, но проект все равно нельзя назвать здоровым.
источник

KF

Konstantin Firsov in dlang.ru
источник

KF

Konstantin Firsov in dlang.ru
Хочу сравнить и потестить ldc, а кто работает с ldc, как там указать директории из которых нужно делать импорт?
источник