LINUX.ORG.RU

Раз решил велосипедить, читай матчасть, что ли. драконову книгу, если упороться (она слегка заоблачная, но timeless), modern compiler design попрактичнее, ну или статейки какие-то хотя бы.

Вменяемый конпелятор ты не напишешь (сколько-нибудь годный), но в процессе осознания этого факта хоть качнешь скилл. Не бросай так сразу, а то тут тебе расскажут.

cdshines ★★★ ()

Когда человек быдлокодер или велосипедист - это плохо.

Когда человек быдлокодер и велосипедист - это ужасно.

PS: я не про то, что плохо самому писать компилятор (каждый программист должен написать мэлварь, калькулятор и компилятор), я просто в код глянул...

fornlr ★★★★★ ()
Последнее исправление: fornlr (всего исправлений: 1)
Ответ на: комментарий от fornlr

Когда человек быдлокодер или велосипедист - это плохо.
Когда человек быдлокодер и велосипедист - это ужасно.

Да ладно тебе. Большинство людей через это проходят. Велосипеды дают практику, а быдлокодинг — результат. А практика, поддерживаемая положительным результатом, подпитывает энтузиазм. А с энтузиазмом горы свернуть можно.

Stahl ★★☆ ()
Ответ на: комментарий от proud_anon

С точки зрения логики, не имеет, но здесь присутствует своеобразное противопоставление. Хотя возможно, что благодаря ему на союзы «и» и «или» в предложениях падает логическое ударение, благодаря которому OR превращается в XOR %)

batekman ★★★ ()
Ответ на: комментарий от Alexey1994

Эх, хотелось бы узнать где именно неудачные строки кода

Удачность кода обычно определяется не конкретными строками и общей архитектурой, планированием. //код не смотрел

По теме: Не слушай ругателей велосипедистов и не бросай, пиши. Никому твой компиллятор, конечно, не нужен, и пойдёт он в помойку, но получишь хорошую практику.

Psych218 ★★★★★ ()
Ответ на: комментарий от batekman

Вроде в русском языке «или» это «or», а не «xor»

В русском языке «или» может означать как «or» так и «xor». Зависит от контекста и «здравого смысла» (частая хрень в естественных языках).

Даже более того, «или» это чаще как раз «xor», а когда хотят избежать неоднозначности и чётко указать на «or», порой пишут «и/или», никогда не видел?

Psych218 ★★★★★ ()
Последнее исправление: Psych218 (всего исправлений: 1)
Ответ на: комментарий от Alexey1994

Те же строки, ну жесть же полная. Можно же открыть стандартную <string.h> и посмотреть там реализацию того же сравнения и прочее (пару строк же можно вместо портянки из 26).

Очень кстате рекомендую книгу «Техника оптимизации программ. Эффективное использование памяти - Крис Касперски»

Стара как то самое мамонта, да и название весьма не соответствует содержанию, ибо там вообще солянка из много чего. Но общие принципы «на подумать» весьма полезны.

fornlr ★★★★★ ()
Ответ на: комментарий от Psych218

Да, а в разговорах «либо».

Так-то да, на самом деле, «или» это «or» в основном, в описании каких-нибудь возможностей, когда предполагается, что слышащий/читающий выберет что-то одно.

«Сыра хочешь? — Спрашиваешь! — Или котлету? — Или котлету! — А чего больше? — А всего побольше, сыру побольше и котлет побольше!»

««Тебе чего намазать — меду или сгущенного молока?» — «И того и другого!» — «А хлеба можно вообще не давать!»»

Вот и подумалось

batekman ★★★ ()
Ответ на: комментарий от Psych218

Никому твой компиллятор, конечно, не нужен, и пойдёт он в помойку, но получишь хорошую практику.

а вдруг он начинающий торвальдс? сначала чисто для эксперимента, для себя, без особых амбиций, а потом, глядишь, и слава придёт всемирная. дорога в тысячу ли начинается с одного шага (китайская мудрость). программистами не рождаются, а начинать всё равно с чего-то нужно.
так что, «пишите, Шура, пишите». польза не в том, что сейчас конкретно реализовано, а в практике и понимании. готовый код скопипиздить любой дурак может. а прочитать все книжки в мире всё равно не получится. так что практика - лучшая школа для программиста. чтобы не только чужими результатами пользоваться, а свои мозги развивать.

Iron_Bug ★★ ()
Ответ на: комментарий от Alexey1994

архитектурные проблемы лучше искоренять сразу. приделывание костылей приводит к переусложнению кода и, в итоге, приходится всё-таки переделывать, но уже гораздо больше.

Iron_Bug ★★ ()
Ответ на: комментарий от Iron_Bug

программистами не рождаются

В это можно сколь угодно долго верить и утешать себя. Не рождаются только посредственностью, а вроде как торвальдс не посредственность.

anonymous ()
Ответ на: комментарий от Alexey1994

Если есть желание, можешь попробовать свои силы в разработке совершенно нового языка, когда закончишь. Вот мой проект:

https://bitbucket.org/budden/l2

И тут есть несколько тем про него (см. мои темы).

den73 ★★★★ ()
Ответ на: комментарий от Iron_Bug

полностью согласен, сначала писал всё на char* в надежде переписать в будущем на что-нибудь динамическое, в итоге 5 дней потратил на переписывание, сейчас использую «велосипед» давно написанного string.h (как интерфейс он вполне пригоден, параллельно разрабатывается string в котором вместо одного char используется массив на n элементов char). Та же ситуация была и с деревом, для реализации стека мне понадобилось количество переменных внутри функции. Реализацию дерева, в котором хранятся переменные, я брал из K&R, поэтому пришлось поместить корень дерева в отдельную структуру вместе с длиной, при этом осталась возможность написать AVL дерево не меняя интерфейс

Alexey1994 ()
Ответ на: комментарий от anonymous

я как раз ни во что не верю (атеист, циник, такая вот фигня). поэтому все утверждения мои чисто прагматичны и исходят из практических соображений. торвальдс, как и все дети, родился без всяких навыков к программированию. что касается генетики, то мы в генах получаем только умение кусаться и лазить по деревьям (что-то типа того). увы, любой человек рождается банальным приматом. ну а всё остальное - лишь вопрос образования и целеустремлённости (которая тоже есть продукт образования, на самом деле, потому что мозг от природы весьма ленив).

Iron_Bug ★★ ()

задание: 1. выкинь экзешники из репозитария. репозитарий для исходников. читай тут как добавить бинарные релизы https://github.com/blog/1547-release-your-software 2. добавь поддержку любой системы построения (build system) рекомендую meson

Хорошее дело для портфолио.

anonymous ()

znenyegvkby

Stanford University, конечно, не дал миру ни одного хорошего программиста :)

Это происходит вопреки, а не благодаря. Если ты про статус его выпускников, то естественно корочка стенфорда более престижна, чем нонейм универа, естественно связей больше и пропихнут тебя преподы повыше(история ниже - привет). В этом мире определяет всё имя и вера.

Вы не об этом случаем. И только не нужно сейчас кричать «это не его личные наработки и т.д. и т.п.». Ученые вне социума вообще редкость.

Да о всех. Куда не плюнь везде суют имена. Кнут - это бренд, как и кто-либо ещё.

Ну, возможно, в вашем понимании он протирает штаны именно потому, что в больше степени ученый, нежели программист? Задайтесь вопросом.

А ежели он не программист, то какое отношение он имеет к программированию?

Вы знаете, профессору, которого тянут из одного университета в другой вообще сложно заниматься кодингом.

Естественно, ибо это бренд. От этого зависит статус универа. Никому не интересен кнут - всем интересен бренд. Смени он завтра фамилию и надень парик с корочкой «колхозного вуза» - ему максимум что сделают - это укажут на дверь, даже не смотря в его работы, а если и посмотрят - ничего там не увидят.

Ты действительно этого не понимаешь? Это как пригласить «поющую» голову из телевизора на корпоратив - всем насрать на то, что и кто эта голова - это статус. Это показатель, что я могу купить кого угодно.

Точно так же и выстеплениями и прочим. Есть сходка и на неё пригласили кнута или ещё кого-то, думаешь кому-то он нужен? Нет. На него пойдут адепты из-за статуса «я сходил на кнута», а статус сходки подымится - «у нас есть кнут».

Но, как это не удивительно, тем не менее ему это не помешало написать пару вещей

Это примитивщина. Кнут написал только неведомую херню хрена пойми на чём, которую никто не видел. Дальше он к ней никакого отношения не имеет.

В целом уровень осведомлённости балаболов в теме крайне показательна.

это наиболее крупные, поверьте, он писал код, если вы вообще об этом

Мне не надо верить - мне надо видеть, а кода никто не видел. Тем более код 20летней давности за код не считается, ибо тогда уровень был такой, что любая обезьяна могла писать код. А любой текущий пхпист был бы богом в то время.

которыми, к слову - умудряются пользоваться и до сих времен. Хотя, изначально, это были больше научные проекты.

Какими?

anonymous ()
Ответ на: комментарий от anonymous

Ну, сходу, если долго не соображать, то Robert Sedgewick, из Adobe Systems.

Это такая же говорящая голова - ребёнок кнута. Сидит от там чисто из-за имени + хоть немногой компетенцией он обладает. Ах да, остальные головы - http://www.adobe.com/in/leaders/board-directors.html - выкатывая их достижения.

Или вы действительно считаете, что крупные компании в силиконке набирают профессоров просто так? Как вы выражаетесь - форфан?

Да, ведь он там не работает говорящей головой, а не руководителей направлений/лабораторий/разработок, хотя какие там разработки в адобе-помойке.

Спешу вас просветить - без этих самых профессоров, ПО данных компаний, как раз и находилось бы на уровне нашего 1C-ширпотрепа :D

Дак их ПО итак ширпотреб, не? «без профессоров» - посмеялся. Можно мне увидеть работы седжвика на тему? Не бесполезное балаболсьство, а именно работы на тему? Нету их.

Адобе, как и любая помойка - это агрегатор, никакого отношения к разработкам и вообще к чему-то она не имеет. Скупается всё что можно, а потом пилиться и рекламируется.

А ведь Седжвик начинал с того, что просто защищал дисcертацию по быстрой сортировке, как раз под крылышком у Кнута.
дисcертацию по быстрой сортировке

Если бы это написали про меня - я бы удавился со стыда за такое. Это равносильно «диссертация по таблице умножения».

как раз под крылышком у Кнута

Знаю, знаю. Я про это уже выше писал - нонейм взял и взлетел, только из-за имени кнута.

Я, конечно, не в восторге от Adobe продуктов в большой степени, но масштаб их фирмы оцениваю по достоинству.

Адоб это агрегатор - это логично. То же самое, что и маздайсофт и прочие куллстори.

Если честно, я запарился уже насиловать гугл. Вы действительно считаете что Стэнфорд не дал миру ни одного нормального программиста? Это при учете, что он всегда в топах в USA на 2-3-4 месте. (редко скатывается ниже).

Причём тут не дал. Помойка то же дала миру программистов - из этого ничего не следует.

Он должен был дать на порядки больше, чем иные, ибо там великий кнут, а везде нонеймы, но почему-то это не происходит. Рождаютсят олько говорящие головы.

Рейтинг универа оценивается по его статусу и только ему. Остальное никому не интересно.

anonymous ()
Ответ на: комментарий от anonymous

Я не в коем случае не хочу обидеть нашу страну в этом плане, ведь я сам здесь живу, и планирую жить и работать всю жизнь, но не могу не признать тот факт, что ненавистный вам «пендостан», по сути, и контролирует IT-сферы на данный момент.

Ога, прям я об рашке иного мнения и только пиндостан мне ненавистен. Мне ненавистен(вернее мне насрать) пиндостан не тем, что в нём что-то есть, а в рашке нет - в нём есть на 70% клоунада. Рашка хоть и жопе, но такой убогости в ней нет - я готов любить её только за это.

Промывка мозгов, пропаганда и говорящие головы - это основа пиндосской культуры. Ит-сферы там нет - там есть наработки 60-70-х на которых паразитируют до сих пор, впаривая как что-то новое. Остальная ит-сфера - это бабки, пиндостан это такой же агрегатор как адобе. Да, в прошлом и адобе и пиндостан что-то делал - культура чего-то деланья там развита, в отличии от рашки, где развита помойка.

В этом суть - главное, чтобы ты верил не в персоисточник, не в пацанов, которые делают фотошоп, а в агрегатор - это основа пропаганды.

Это как телеканал, которым приписывают авторство всего на нём уникально исходящего - похрен, что это заказуха у левых пацанов. Телеканал же показал, а адобе же впарила.

К сожалению, большего я привести вам не смогу. Если вы считаете мои аргументами не убедительными, тогда не имеет смысла обсуждать что хорошо, а что плохо.

Ты мне лучше скажи - ты реально настолько наивный, либо ты меня тралишь?

Ты ещё скажи, что пепси спонсирует фотбул парашу ради «спорта», а не ради пиара и рекламы. А кеды абабиас рекламирует мисси потому, что он эксперт в беге, а John Robert Thompson, Jr. в найке не потому, что у найка 100% баскетбольного рынка в пиндостане, а он по совпадению «пиндоский баскетболист» и говорящая голова.

А по поводу GNU C Programming Tutorial не сказали ни слова.

А что по нему говорить - туториал как туториал. Проблема книжки ретчи и кернигана не в том, что она плохая - нет, он хорошая, но она не актуальная и в целом слабая. Собственно как и этот уториал.

Только вот это туториал не превращают в икону, как книгу.

anonymous ()
Ответ на: комментарий от slackwarrior

Гауссово распределение с тобой как-то резко несогласно. Большей частью именно что рождаются посредственностью :)

Нет, посредственность это состояние по умолчанию. Здесь же под «рождением» понималось рождение с чем-то изначальным, нестандартным.

anonymous ()
Ответ на: комментарий от anonymous

Здесь же под «рождением» понималось рождение с чем-то изначальным, нестандартным.

Ну вот, кэпа закосплеить не получилось — начинается переопределение словаря для тихой подмены понятий :) Некоторые так и пишут простыни в бложэках, с дивана рассуждая о чем-угодно: «посредственность — это не отличимость от нормы... отличимость — это отклонение... это — это местоимение... тире — слева от того что вы щас читаете». Плохой, негодный косплей кэпа.

slackwarrior ★★★★★ ()