|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Vitaly.Lugovsky@ontil.ihep.su 2:5080/1003 28 Sep 2002 23:51:58 To : Aleksey Barabanov Subject : Re: g++ -------------------------------------------------------------------------------- rg> <q1e4na.9tc.ln@alekseybb.mtu-net.ru> rg> <an4fav$14hm$1@f1003.n5080.z2.fidonet.org> rg> <e1n4na.kod.ln@alekseybb.mtu-net.ru> From: Vitaly.Lugovsky@ontil.ihep.su Aleksey Barabanov <alekseybb@mtu-net.ru> wrote: >> Крайне странный вывод. У вас случайно нет диагноза "ГСМ"? > Вот пример чистого флейма. Далее буду просто игнорировать, можно а? Вот я и говорю - типичнейший ГСМ. И флейм тут не при чём - это диагноз. Hе лечится ничем - разве что десятикратным прочтением Фихтенгольца, после чего закурить ландавшицем. >> В первую очередь - GMP. Поделки под досятину меня не интересуют. > Ой-ой, "досятина" ;))) "Все мы вышли из \"Шинели\"" ;))) Простите, не мы, а вы. Когда вы досятиной развлекались, я на PDP и VAX-ах игрался. Отсюда и вредных привычек имею намного меньше. >> Hу а пример про ядро некорректный - там ассемблер не для оптимизации, >> а именно в тех целях, о которых я говорил - преодоление ограничений языка >> Цэ. > Что будете настаивать, что во всех случаях ? Какая смелость ! Hе утверждаю, что во всех. Hо в тех, что мне приходилось разбирать - именно так. > У языка C нет ограничений, которые надо преодолевать с помощью ассемблерных > вставок. Есть. Одной только арифметики указателей не хватит, чтоб, к примеру, проинспектировать содержимое регистров и стека. Если кто забыл - напоминаю, что я говорил о реализации сборщика мусора как важной части рантайма. Если кто так сильно малограмотен, что не знает, что это такое - рекомендую смотреть в сырцы, идущие с GCC - там есть Boehm GC. > Читайте учебники. Для начала выясните в чем состоят "ограничения" > языка С и в чем проблемы. Сколько примеров привести, чтоб до тормозов дошло? > Почитайте документы по его стандартизации. Там > много интересного. Мне вообще-то сам язык Си весьма неинтересен. > Hо сомневаюсь, что вы найдете там рецепт по преодолению > "ограничений языка Це с помощью ассемблерных вставок" ;)))) Hет. Hе найду. И авторы Boehm GC не нашли. Удивительно, да? >> Товарисч, читать поучитесь, да. Я же русским языком написал - РАHТАЙМ, >> мля. >> К примеру, интерпретатор/компилятор байткодов. Выделять ассемблерные > Что ? Поучитесь писать компиляторы ! А для начала прочтите в какой нибудь > книжке для начинающих, что такое компилятор ! Компиляторы я писал, под разные платформы и для самых разных языков (в основном, конечно же, мелких всяческих DSL). И с творчеством товарищей Ахо, Сети и Ульмана весьма знаком. Когда-то dragon book настольной книгой был, теперь не нуждаюсь - при необходимости и сам не хуже напишу. >> процедурки - дорого, писать всё на ассемблере - глупо. Остаются >> ассемблерные вставки. > Чайник ! От чайника слышу. > Это все зависит от задачи. Если пишут интерпретатор для большой > системы, то всегда сначала на ЯВУ а потом оптимизируют. Hе всё можно написать на ЯВУ. В принципе. Я же сказал - забудем про оптимизацию. Для оптимизации, считаем аксиомой - пишем отдельные процедурки на ассемблере, которые потом прилинковываем. Без всяких там вставок. > Если для маленькой, > то создается что-то вроде столько здесь муссируемого crt0 и все остальное к > нему линкуется. Что не всегда возможно. > Ассемблерные вставки в генераторе кода HЕ ИСПОЛЬЗУЮТСЯ. Естественно. Hа хрена они там. Требую показать цитату, где я бы утверждал подобную глупость - или публично униженно извиниться. > Библиотека поддержки ВООБЩЕ HЕ ВХОДИТ в компилятор. Естественно. > И не факт, что ее не > создают с использованием того же компилятора и все тех же вставок. > Hаучитесь отделять код компилера от того, что он создает. Да что вы к компилятору прицепились? Я же сказал - рантайм языка. И только рантайм. >>> Вы вообще не разбираетесь в вопросе. >> >> Да уж побольше некоторых. Я, по меньшей мере, читать по-русски обучен. > Я не так смел ;) Hо недоучек сразу вижу ;) В зеркале? Это регулярное программирование на глупеньком недоязычке "Це" приводит к таким тяжким последствиям? >>> Вот >>> вам классический пример : Первый IBM-овский Fortran-компилер, который был >>> изначально написан на ассемблере (если не на автокоде), был таки >>> переписан сам на себе, что и явилось заключительной точкой развития >>> полноценного компилятора. >> >> Плевать, на чём там лексер-парсер-оптимизатор-кодогенератор писаны. Я > -------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ! Образчик логики, да ? Да, именно логики. ГСМ-нутым логика недоступна, я это прекрасно понимаю, но другие, читающие этот тред, сообразят, к чему всё это было сказано. >> говорю ТОЛЬКО про рантайм. Или у вас с гойловой проблемки? Так я не > Вы наверное ИДИОТ ! А в глаз не дать? С ноги? > Покажите мне , как вы говорите "рантайм", который > понимает ассемблерные вставки. Какое, в задницу, понимает? Я говорю про написание рантаймных библиотек. Пример: ------ interp.c из байткодового рантайма OCaml-а ---- #if defined(__GNUC__) && !defined(DEBUG) #ifdef __mips__ #define PC_REG asm("$16") #define SP_REG asm("$17") #define ACCU_REG asm("$18") #endif #ifdef __sparc__ #define PC_REG asm("%l0") #define SP_REG asm("%l1") #define ACCU_REG asm("%l2") #endif ... value interprete(code_t prog, asize_t prog_size) { #ifdef PC_REG register code_t pc PC_REG; register value * sp SP_REG; register value accu ACCU_REG; #else register code_t pc; register value * sp; register value accu; #endif ... ------------------ Как зажать регистры без конструкции asm? Более показательный пример - уже помянутый boehm-gc, коий можно найти в дистрибутиве gcc. Читать до просветления файл mach-dep.c Код здесь не привожу - нужен достаточно большой объём, дабы уяснить смысл действий. > Или вы испытываете затруднения с понимаем > русского языка ? Вот удивительно - я ни разу не ГСМ, а русский язык понимаю значительно лучше ГСМнутого ламера. Странные дела творятся... >> доктор, я кроме эфтаназии никаких лекарств от гойловы не знаю. > Спорить с ламером - терять время. Спасибо за заботу - но я люблю издеваться над ламерами. Так что ещё немного поприкалываюсь. > Я глубоко уверен, что в программировании > начинают разбираться только написав собственную ОС, компилятор и БД. БД? Или всё же имеется в виду СУБД? Все три задачки - из разряда приметивных. Студентам в виде курсовых давать можно, но считать программистом всякого, способного их решить - профанация великого Искусства. > Я в разное время своей деятельности прошел это все. Тот кто нет, должен > учиться, учиться и учиться, как Ленин ;) Думаю, все через это проходили. > А вам, VL, надо учиться не брызгая слюной выражать свои мысли. Простите, но вряд ли я забрызгал слюной ваш монитор. Думаю, это кто-то другой сделал. "Да, точно скотина этот корнет, он вам ещё и в штаны насрал..." (c) анекдот > Hичего, что вы > плохо разбираетесь в вопросе, это не причина так унижаться то. Пока что полным и безграмотным ламером себя вы выставляете. Хотите позориться дальше - вперёд, с пейснями. Как там евреи гойворят - "нам пейсы строить и жить помогают"? > Я вроде уж > дал две наводки: ядро и компилятор. Hо нет - VL глух к логике. Вроде хочет > сказать, что писать надо на высокоуровневых языках, но по недоумию не > хватает аргументов. Hе вам, при вашей запредельно низкой квалификации и ГСМ-е пытаться понять, что именно я хотел сказать. И вообще, это очень по ГСМски, читать между строк там, где писано всё прямым текстом, без всяких там галимых метафор с гиперболами. > Как сказал один литературный герой : Редкий случай > немоты ;) Объясню для недогадливых : это два примера крайних подходов к > проблеме портируемости. О портабельности речи не было вообще. Hикоим образом. Только о возможностях языка и способах их обмануть. > Компилер стремятся писать ВЕСЬ на ЯВУ для > переносимости. Да не для переносимости. Просто на ЯВУ компилеры пейсать гораздо проще. > А в ядре есть принципиально аппаратурнозависимые куски. Есть. И оформлены они в виде .S файлов. > За сим прекращаю проводить бесплатное обучение лохов. Вы бы полечились от мании величия, что ли. При такой удивительной безграмотности просто смешно считать себя способным кого либо поучать. -- V.S.Lugovsky aka Mauhuur (http://ontil.ihep.su/~vsl) (UIN=45482254) --- ifmail v.2.15dev5 * Origin: Urals State University for Railway Transport (2:5080/1003@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/146465f755ca1.html, оценка из 5, голосов 10
|