Хуевое название, вангую что духи машины покинут пеку опа-триптофага и тред не взлетит.
Насчет книжек и наборов тем cs-борщехлеба: TAPL Advanced Topics in Types and Programming Languages The art of Metaobject protocol Лекции лауреатов премии тьюринга Комбинаторная логика Дискретка Лямбда исчисление ЯП и методы трансляции Learn Php in 21 Days PHP frameworks
>TAPL >Advanced Topics in Types and Programming Languages >The art of Metaobject protocol >Лекции лауреатов премии тьюринга >Комбинаторная логика >Дискретка >Лямбда исчисление >ЯП и методы трансляции Потом осознаешь, что все это НИНУЖНО и начинаешь >Learn Php in 21 Days >PHP frameworks
>>939680 Лол, как будто щекотание скобками не может быть хобби. А вообще поссал на промытого американской культурой, который считает что обязательно должно быть хобби, отличное от работы. Небось еще всякими книжками по мотивации и достижению успеха балуешься? Сегодня сверэффективно прошел день?
>>939509 Лучше обмазываться CS и на работе, и дома. Среди computer scientist'ов, как и среди математиков, занятие тривиальными прикладными задачами за доширак считается зашкваром. В крайнем случае, если выбора нет, можно сделать всю работу за 20 минут, а остальное время наворачивать TAPL.
>>940470 Из университета. Потому что гуманитарная шляпа. Два курса на эрудиции просто тянул, на сессии приходил иногда готовился даже, а потом тупо на сессию однажды не пришёл и всё. Не жалею, поскольку подзалупный Мухосранск. Сижу вот питона наглаживаю параллельно ещё, с C собираюсь познакомиться ещё, как дочитаю Лутца. Алсо дискретка ещё на очереди. Дальше не знаю, что делать, видно будет, а то ШКУРА НЕУБИТОГО МЕДВЕДЯ не нужна.
>>941231 Книжка о структуре и интерпретации компьютерных программ. Нужна, чтобы разбираться в структуре компьютерных программ и чтоб выработать умение их интерпретировать.
Как факториал через хвостовую рекурсию посчитать я и без sicp'а знаю, а вот эту еболу с быстрым возведением в степень хуй пойми как сделать, все мои решения оказывались с ошибками, вчера набухался, сейчас снова буду пробовать.
Это когда рекурсивный вызов функции стоит последней операцией в теле. В этом случае его можно заменить на цикл, в котором будет выполнятся тело функции, вместо того, чтобы явно вызывать ее каждый раз. Например, тот же факториал: f(0) = 1, f(N) = N f(N-1); может быть переписан через хвостовую рекурсию так f(1, Acc) = Acc, f(N, Acc) = f(N-1, NAcc); и может быть оптимизирован компилятором в цикл
>>941874 > и может быть оптимизирован компилятором в цикл Не совсем так. Компилятор просто в стеке переписывает входные параметры на новые и прыгает на начало процедуры.
>>941895 Суть хвостовой рекурсии в том, что не тратится память на сохранение контекста всех предыдущих вызовов функции т.е. можно взять ту же функцию и заменить ее параметры новыми не сохраняя параметров предыдущих вызовов. С нормальным порядком память будет расти от количества итераций что в принципе похоже на ситуацию без оптимизации хвостового вызова, но это другое и связано с разрастанием невычисленных аргументов. Тут уже все зависит от стратегии редукции(когда делается force для выражения, что это такое дальше в сикпе про ленивые вычисления) и можно по другому оптимизировать, например делать ограничение глубины дерева "ожидающих" вычислений, при достижении лимита форситься вычисление и вся эта хуита сокращается.
>>941922 ЗНАЕШЬ МАТЕМАТИКУ, ТЕОРИЮ КАТЕГОРИЙ, ДЕСЯТОК ЯП, ДИСКРЕТКУ, ЛЯМБДЫ-ХУЯМБДЫ, ПИ КАЛЬКУЛУС @ БЫДЛИШЬ НА ПХП ПОД ПЛЕТЬЮ ХОЗЯИНА @ ПОТОМУ ЧТО ПОХУЙ
>>941163 Потому что был слишком ленив, чтобы интерпретатор схемы поставить. Сегодня, наконец, дошли руки, достало то, что питон в хвостовую рекурсию не может.
>>941928 Я так понял, понятие "хвостовой рекурсии" применяется относительно итеративного процесса, формально выраженного рекурсивной процедурой, а если сам процесс рекурсивный, то в любом случае же память надо выделять на запоминание всех обращений функций, вложенных самих в себя, и в случае нормального порядка вычислений какого-нибудь рекурсивного процесса я не про хвостовую рекурсию выскочила бы ошибка, потому что интерпретатор бы в первом случае обращения к функции, вложенной в себя, сказал бы "ну бля я конкретные значения вычислить нимагу подстановкой иди нахуй((((". Верно ведь? Я просто пытаюсь закрепить, а то ебануться можно. Неделю назад начал всё это.
>>941936 Зато если займешься исследованиями, и напишешь годных статей, могут позвать работать в MIT как профессором, а там уже заебись для такого как ты будет.
>>941975 >Я так понял, понятие "хвостовой рекурсии" применяется относительно итеративного процесса, формально выраженного рекурсивной процедурой Да, все верно > в случае нормального порядка вычислений какого-нибудь рекурсивного процесса я не про хвостовую рекурсию выскочила бы ошибка, потому что интерпретатор бы в первом случае обращения к функции, вложенной в себя, сказал бы "ну бля я конкретные значения вычислить нимагу подстановкой иди нахуй((((". Верно ведь? Нет, если рекурсия не бесконечная, то все равно на каком-то этапе закончится, как правило рекурсивные функции содержат какое-то условие связанное с аргументами и в зависимости от него вызывают саму себя или возвращают какое-то значение. Если понадобится нераскрученое значение, оно просто вычислится, не будет такого что оно не сможет подставить че-то там. Возьми какой-нибудь простой алгоритм типа вычисления суммы списка или ебучих факториалов и пошагово на листике запиши как он выполняется с апликативным порядком и с нормальным. Для программиста все это практически одинаково, разве что нормальным порядком инода будет меньше вычислений и можно делать разные хаки именно с бесконечно рекурсивными функциями/стуктурами, но зато гораздо сложнее предсказать потребление памяти.
>>944131 Ракету ставь в любом случае т.к. там есть схемка. Хдтп что-то вроде вводной по программированию на схемe и сильным упором на тестирование. Можешь навернуть если сикп туго идет, но в целом книга не особо годная в плане уникального и интересного контента
>>941936 >ЗНАЕШЬ МАТЕМАТИКУ Математика проста, как сатиновые трусы. Просто в школе её ебанутые тёти плохо объясняли, по-видимому, и потому многие решили, что она сложная.
>>941375 спасибо за линки первую книженцию впервый раз вижу другую книгу томпсона читал, а эту вижу в первый раз а по поводу мартина-лёфа я читал саму диссертацию не знал, что есть ещё и в формате книги
Обращаюсь к ветеранам Сикпа и вообще всему горевшим по CS. Какой у вас был эффект от книжек? Они помогли вам в освоении программерского ремесла? Как поменяли они ваше мировозрение и чему вы оттуда научились?
>>947201 Начал лучше понимать пхп, теперь начальник не стегает меня плетью за проебаные дедлайны, а посоны уважают за умение наговнякать функциональные иммутабл коллекции и ленивое выполнение кода. Соответственно и зарплатка подросла на 3500 тысячи российских долларов т.к. нахватался умных слов и заявил что приму оффер на позицию скала лид архитектора, если не повысят.
Micrcrosoft automatically downloads Windows 10 on PCs running Windows 7 or Windows 8.1 (between 3.5GB and 6GB), even if users have not opted-in: http://archive.is/CEvKh
> Over 82 billion photos viewed. > Gamers spent over 4 billion hours playing PC games. > 44.5 billion minutes/month spent in Microsoft Edge. > Over 2.5 billion questions asked of Cortana since launch. > Windows 10 now active on over 200 million devices.
>>953941 Никак, она не нужна для этой книги. Точнее все что надо там есть. Будет сложно сходу понять, а замотивировать себя разбираться в этой хуйне еще сложнее. мимо 3.3 левел из >>953974
Сап, программач. Читаю sicp. Смутило упражнение 1.7: The good-enough? test used in computing square roots will not be very effective for finding the square roots of very small numbers. Also, in real computers, arithmetic operations are almost always performed with limited precision. This makes our test inadequate for very large numbers. Explain these statements, with examples showing how the test fails for small and large numbers. An alternative strategy for implementing good-enough? is to watch how guess changes from one iteration to the next and to stop when the change is a very small fraction of the guess. Design a square-root procedure that uses this kind of end test. Does this work better for small and large numbers? Вот процедура: (define (sqrt x) (sqrt-iter 1.0 x)) (define (sqrt-iter guess x) (if (goodenough? guess x) guess (sqrt-iter (improve guess x) x))) (define (average x y) (/ (+ x y) 2)) (define (goodenough? guess x) (< (abs (- (square guess) x)) 0.001)) (define (improve guess x) (average guess (/ x guess))) (Define (abs x) (Cond ((< x 0) (- x)) (else x))) (Define (square x) (* x x))
Почему тест фейлит на маленьких числах мне понятно, но почему "inadequate for very large numbers" я не понимаю. В распоряжении лишь онлайн интерпретатор, так как двачую с яблока. https://scheme.cs61a.org/editor.html и этот интерпретатор выдает "FormatException: Invalid integer" при попытке выполнить процедуру sqrt с оче большим числом, типа: 9999999999999999999999999999999999 Вроде с сильно большим числом должно зацикливаться? Я переписал goodenought? как: (define (goodenough? guess x) (And (< (Abs (- guess (improve guess x))) (/ guess 100000)) (< (abs (- (square guess) x)) 0.001))) Тут иначе http://sicp.sergeykhenkin.com/2007/08/15/sicp-exercise-solution-1-7/ , приемлем ли мой вариант?
>>953941 Отчасти двачую вопрос. Есть что-то типа sicp, но по математике? Такой энтри левел фундамент. Что-то, что учит как правильно думать о математических процессах, чтобы когда пойдет хардкорный матан ты не вывихнул себе извилины мысля неэффективными конструкциями с низким кпд.
>>954247 Google, дифференциальные уравнения диффузии и теплопроводности и вообще дифф. уравнения. Google, linear algebra and its applications pdf и вообще вся линейная алгебра, включая графику.
>>954234 Нет не приемлем, так как ты, по сути, усилил то что было. А для больших чисел, смотри у тебя есть текущее значение х = y + eps (где y точное значение корня) и при x^2 = y^2 + 2yeps+eps^2, для достаточно больших чисел погрешность 2yeps+eps^2 весьма большая. У товарища на которого ты дал ссыль вообще неверно считает, вбей весьма большое число и сравни со стандартной функцией. Вообще это задача ни к информатике, ни к дискретной математике не относится, это вычмат.
>>954753 Что есть eps? Нигде в книге до этого упражнения это понятие не упоминается. Вот меня это и смущает. Каким образом сферический ньюфаг в вакууме должен: "Explain these statements, with examples showing how the test fails for small and large numbers."? Когда речь идет об очень больших числах.
Анон, есть один вопрос: Если бы тебе ресетнули все проффесиональные знания, и оставили лишь знания об источниках знаний, учебниках, курсах и подобном, какие учебники годнота, какие мусор. Какой список учебников по математике ты составил бы для средней школы? Просто я подозреваю, что я мыслю о математических процессах очень неэффективно и неправильно. Хочу поправить фундамент, так сказать. Особенно интересует есть ли годные англоязычные учебники по математике переведенные на русский?
>>957280 в школе нужно оставить только алгебру - чтобы осваивали прост математические действия, ну чтобы народ мог сдачу посчитать в магазе, больше не надо выкинуть все начала анализа, тк хватит уже плодить инженеров их и так дохуя заодно можно выкинуть геометрию и астрономию - ненужная хуйня добавить вместо них уроков физкультуры
>>964472 Нет, в ит без английского никуда. Рано или поздно придется читать на английском, все усилия, которые ты затратишь на перевод, окупятся в дальнейшем. На крайний случай есть гугл переводчик, он неплохо переводит.
>>964472 Я думаю, что сицп лучше читать на русском чтобы сконцентрироваться на содержании и задачах, а не заглядывать в переводчик каждый абзац. А вкатиться в технический английский можно и на книжках по конкретному языку.
>>978401 Это какая то жуткая лош. Всего 1000? за за такое время не раскуплена? Я, в самом то деле, могу не опасаться что в моей мухосрани кто-то сицп купит раньше, чем у меня появится лишние 1800 р.
>>978710 Ну ты можешь сказать мол да даже если появиться группа людей, то они явно будут фреймворки учить, а не древние книги читать. Но тут смотри, двач тоже хайпиться неплохо, и когда множество хайпа айти в твоем городе пересечется с множеством хайпа двача в твоем городе, то на пересечении с большой вероятностью может появиться человек, который живет в твоем городе, и который зайдет на нулевую /pr/, увидит тред по сицп, и пойдет купит ее в книжном. Так что либо вайпай этот тред и сливай его с нулевой , либо копи деньги побыстрее.
я стану спецем по кодингу, если прочитаю эту книгу? из специальных знаний - только батл-реп и тексты оксимирона, ничего больше не вчил, хочу быть проггером и зарабатывать нормально
>>983960 Начни с другой книги, более доступной. Когда проработаешь пару лет программистом, тогда и читанешь эту для систематизации знаний (можешь не читать, много не потеряешь). Иначе ты отобьешь себе желание программировать.
>>984405 >Иначе ты отобьешь себе желание программировать. А я вот наоборот приобрёл себе желание программировать от этой книги. До неё было типа ну джава-хуява, учебные задания хуё-моё, класс транспорт, наследуем от него автомобиль и т.п. Уныло блять. А когда стал читать эту книжку то меня сразу захлестнуло про МАГИЮ ПРОГРАММИСТ ЭТО ПРИКИНЬ ВОЛШЕБНИК ВОТ ТУТ У НАС АБСТРАКЦИЯ ДАННЫХ ИЗ ПРОСТОГО CONS CAR И CDR А ВОТ ИЗ НАШЕГО ГОВНОЯЗЫКА МЫ ВЫЛЕПИЛИ ЯЗЫК ДЛЯ СИМВОЛЬНОГО ДИФФЕРЕНЦИРОВАНИЯ И ЯЗЫК ДЛЯ РИСОВАНИЯ ГРАФИКИ. Было клёво.
Здарова всем. В прошлом треде кто-то спрашивал по поводу построения процесса разработки. Дескать системности не хватает, мысли разлетаются и решение задачи получается через чур хаотичным. Тех, кто узнал себя советую прочитать Дьёрдь Пойа "Как решить задачу". Книга не про программирование, а про математику и решение математических задач. Но подходы к решению схожи, поможет разгрести бардак в голове.
Это американская поговорка, и из нее можно сделать любопытное наблюдение, что для какой-то части населения США "умный" имеет значение "предприимчивый" или "хитрый". Также, у них там идет пропаганда в том плане, что все зависит от человека и если у него какие-то проблемы, то только потому что он глупый, ленивый, мало работает, алкоголик, наркоман, не купил страховку, невнимательно прочел договор и тд, и виноват в них в любом случае только он сам. Очень удобная точка зрения для правящего класса и элиты. Тут можно еще вспомнить совет чиновника про то, что надо было заниматься бизнесом. Чиновнику невдомек что если все будут руководителями бизнесов, им негде будет брать сотрудников
Извините за оффтоп.
То, что поговорка неверна, легко опровергается на примере некоторых известных ученых, живших в бедности.
Поясните, пожалуйста, за задачу 1.11. Нихуя непонятно как это реализовать итеративно. В прошлых задачах с итерациями проблем не было, а тут полный стоп. Смотрел эту же задачу на си - все равно непонятно что и зачем. https://gist.github.com/ga2arch/1611663
>>1010598 >написал клиент HN для ведра >есть питонолиба для стриминга радио >еще 93 репозитория различной степени годности . . . >не можешь решить задачу для первокурсников Чет проиграл с тебя.
>>1010955 Тогда извиняюсь перед тем аноном, в след.раз буду читать посты внимательней. А вообще, я тоже так и не решил ту задачу в первый раз, просто взял и списал с ответов. Нахуя? Не знаю, относился как к школьным задачам. Потом возратился, и попровал понять все по настоящему. Получилось , и задачу смог решить. Рекомендую прочитать про invariant quantity iteration/loop invariant, поможет.
>>939344 (OP) Тоже хочу вкатиться в CS, чобы не быть хуем пpостым, что можно почитать, дабы вещи из SICP не вызывали лишних вопpосов, на кого оно вообще pасчитано?
>>1011454 бамп вопросу авторы нашли говорили что LISP позволяет сосредоточиться на программировании, а не на синтаксисе, но теперь получается так, что приходится сосредотачиваться на математике, вместо программирования.
>>1014413 Простые задачи получаются хорошо. Просто часто бывает так, что решаешь какую-то задачу, напрягаешь мозг, долго двигаешься к решению, сдаешься, смотришь в ответы, ожидая, что там в какой-нибудь мелочи накосячил или что немного нехватило до решения, а оказывается, что ты вообще какую-то хуйню делал, вообще не туда рыл. А автор сотворил что-то такое, до чего бы еще тыщу лет додумывался причем при помощи сторонних ресурсов. Хотя вроде изучаемая в данный момент тема не выглядит такой трудной и что ты ее вроде как понял.
>>983960 >хочу быть проггером и зарабатывать нормально Для этого забудь про сикп. Нормально зарабатывают только системные программисты (пишут драйвера) и ембеддеры (пишут под микроконтроллеры). Поэтому скрой этот тред раз и навсегда. Сначала выучи ассемблер - есть официальный мануал интела, его надо выучить наизусть. Потом приступай за чистый Си, затем за С++, потом VHDL и Verilog.
>>1030339 >>1030341 Весь тред засрали со своими тупыми вопросами и советами, решу полностью первую главу, создам новый тред и буду онанировать на сикп.
>>1030342 А я уже решил первую главу. Так чем мне поможет тапл? Прочесть-то я его прочту, ибо интересно. Но хочется еще узнать о практических профитах.
>>1030442 Никаких, это да. Знаю кучу людей которые днем 6-8 часов пишут код за деньги, а после работы/на выходных обмазываются хаскелем, теориями категорий, прочим матаном, и заебись живут, на конференции там ездят. А если нормально так за пару лет прокачаешься в cs, то работу поинтереснее сможешь найти, что только плюс, ибо будет больше настроения и мотивации после работы читать больше лит-ры. А если начнешь чувствовать себя перегоревшим, то просто откладываешь всё в сторону, можно уволиться и годик вообще не программировать, жить на сбережения, и увлечься чем-нибудь другим, фотографией/рисованием/музыкой и т.д. Через годик может снова захочешь вернуться в cs.
Описываю ситуацию : захожу я на программач смотрю в шапке какой язык выбрать, захожу на копепасту вижу что надо читать Sicp иду в интернеты качаю HomeLisp ну норм так , читаю 1 главу .Пишу (define size 2) и мне выдает... PairLis: Слишком много фактических параметров ==> ERRSTATE Что это за поебень я только на первой главе и я уже заебался искать в чем проблема
>>1032243 Это вроде другой курс. 6.001 — SICP 6.00 — вступительный для биологов и филологов. Типа: "Вам всё равно придётся по профилю писать проги для научных работ, вот вам питон, чтобы не париться."
>>1033022 Не требуется писать 20 различных сортировок На самом деле они поняли, что современные программисты собирают несколько готовых решений в одно, а не пилят их с нуля, поэтому часть алгоритмов для них не нужно
>>1040016 > несколько готовых решений в одно, а не пилят их с нуля, поэтому часть алгоритмов для них не нужно А как они должны выбирать каким готовым решением воспользоваться? По гугл-трендам? По опросам стаковерфлоу?
>>1040112 >А как они должны выбирать каким готовым решением воспользоваться? По тому, насколько оно подходит для задачи, очевидно же, тут нужен анализ готовых решений
>>1041310 Книги для быдла вообще, нахуй их читать, читнул доки по конкретному языку - и подаешь CV на работу, больше ниче нахуй не надо, не слушай этих олухов тут, они тебе еще посоветуют про алгоритмы почитать, поехавшие блядь.
Анон, я никогда ничего не доказывал, и у меня проблемы с пикрил. Подскажите литературу откуда я могу почерпнуть знания достаточные если не для решения этой задачи, то хотя бы для понимания чего от меня хотят.
>>1052629 "Что такое математика?" Куранта почитал, смутное представление о мат. индукции появилось, но хотелось бы чего-то более энтри левел, хоть книга и так очень энтри насколько я понимаю, я забуксовал с этой индукцией.
Приквел: https://people.eecs.berkeley.edu/~bh/ss-toc2.html
Курс Брайана Харви: https://people.eecs.berkeley.edu/~bh/ss-toc2.html
Слайды по лекциям: https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/lecture-notes/
Решения задач: http://community.schemewiki.org/?SICP-Solutions