LINUX.ORG.RU

Thalassa CMS 0.1.20

 , ,


1

6

Вышел очередной релиз Thalassa CMS, сочетающей генератор статического HTML и CGI-программу для поддержки пользовательских комментариев. Thalassa CMS написана на C++ и, по заявлению автора, не имеет внешних зависимостей, не использует СУБД и не генерирует страниц со скриптами.

В новый релиз включены исходные тексты ytid.cgi - веб-приложения, позволяющего выбрать экземпляр invidious для просмотра видео с YouTube (по тексту ссылки на YouTube).

Thalassa CMS распространяется на условиях Croco's Individualistic Free Software License.

>>> Подробности

anonymous

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 4)

Ответ на: комментарий от zurg

посмотрел исходники: количество ручной возни с new delete и сырыми указателями зашкаливает, автор по какой-то причине игнорирует существование контейнеров стандартной библиотеки; есть даже такое

   while((rc = read(fd, buf, sizeof(buf))) > 0) {
        int i;
        for(i = 0; i < rc; i++) {
            if(!parser.FeedChar(buf[i])) {   // fixed by unsignedness
                res = false;
                goto quit;
            }
            if(!read_body && parser.InBody())
                break;
        }
    }
quit:
    close(fd);
    return res;

goto quit? это в плюсах-то, их же буквально для того и придумали чтобы подобным не заниматься, хотя про деструкторы вроде бы знает

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

как раз на попытке собрать «модный браузер лагранж» я в своё время и сломался

А вы попробуйте клиент Amfora, компилится в статический бинарник за пару секунд, нужен лишь make и компилятор го

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

Градус неадеквата выше, да. Вам нравятся сумасшедшие? Может быть, вы сам немного не в своём уме? Тогда, вам - туда. Выслушают самые странные ваши фантазии, дадут консультации, и всё это с техническим налётом.

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

Да, обсуждение СВО тоже присутствует

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

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

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

Про быдло неудивительно, многие из регистрантов там забанены на ЛОРе.

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

Я то же самое могу сказать в твой адрес.

Чувак, не позорься. См. сюда http://stolyarov.info/books/programming_intro/e2 том 2, глава 8.3 «управление оперативной памятью», там в том числе разобрано подробно, что такое страничная адресация (ну так, на всякий случай: задача, работающая в страничном пространстве, сама про страницы не в курсе, представляешь? для неё это именно что линейное адресное пространство, притом сугубо однородное). И страничную модель больше с сегментной не путай, а то остатки сегментирования из x86_64 выпилили двадцать лет как, а сама эта модель, взятая в чистом виде, окончательно вымерла лет сорок назад.

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

Этим должен заниматься любой провайдер

Провайдер деньги вообще-то получает с клиента. Ещё и рекламу клиенту подсовывать за его же деньги - для этого есть ровно одно слово: беспредел.

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

Ещё и рекламу клиенту подсовывать за его же деньги - для этого есть ровно одно слово: беспредел.

Только если в договоре провайдер обязался не показывать клиенту рекламу. Если такого обязательства нет, то этот беспредел называется капитализм.

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

Если такого обязательства нет, то этот беспредел называется капитализм.

В капитализм можно играть вдвоём. Например, сменить провайдера - ровно то, что я и предлагаю сделать.

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

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

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

за любую рекламу вообще нужно уголовку заводить по хорошему

Ну оно так, безусловно, только государство пока что этого не поняло. И не поймёт, пока его не сменят на другое.

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

Подавляющее большинство рекламы заказывает совсем не государство.

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

Да, несомненно, практически любая реклама (кроме разве что рекламных каталогов, которые когда-то почтой присылали по запросу) представляет собой именно насилие.

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

любой провайдер

Внезапно не любой. Я находил фирму, которая всем этим занимается. И там с ней работают не любые провайдеры, можно прям на официальный сайт зайди и посмотреть список. Название фирмы - Quiet Media. Ссылка на официальный сайт выше в этой теме.

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

задача, работающая в страничном пространстве, сама про страницы не в курсе, представляешь?

Представляю.

для неё это именно что линейное адресное пространство

Чушь собачья

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

Я и говорю: по недосмотру. Это легальный способ заработка, и я не верю, что в руководстве провайдера сидят альтруисты

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

Это легальный способ заработка

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

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

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

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

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

Если тебе есть что сказать, то скажи и там тоже. Вот и распространение.

А смысл? Кроме них и полутора юзеров никто не прочитает.

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

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

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

Книги пишут потому, что не могут не писать. Глядишь, и с тобой кто придет. Будет на одного юзера больше. Интернет тоже с двадцати хостов начинался. Почитай первые RFC. Есть там какое-то не помню номер с исчерпывающим списком хостов.

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

Будет на одного юзера больше. Интернет тоже с двадцати хостов начинался.

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

Ты тут теперь неплохо заменяешь Антихриста.

Я бы сказал, ИО несмешного клоуна.

liksys ★★★★
()

Это не свободное ПО! Лицензия запрещает изменять и распространять измененную версию. Уберите это в другой раздел, не вводите людей в заблуждение.

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

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

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

Я бы сказал, ИО несмешного клоуна.

Крокодил мне друг уже лет 20, поэтому без комментариев.

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

Тут может сыграть случай.

Известному художнику нет смысла идти туда, где никто не будет созерцать. Модные лофты остаются нишевыми тусовками, которые никому не нужны за пределами собственно этих тусовок и никем снаружи не ценятся. За примером далеко ходить не надо - московский НИИДАР, который был уникальной экосистемой всяких творцов, просто-напросто снесли, чтобы построить очередной муравейник. Никто известный туда не пришел.

Крокодил мне друг уже лет 20, поэтому без комментариев.

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

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

Лицензия запрещает изменять и распространять измененную версию.

Что-то какое-то совсем топорное 4.2:

== 5. Permissions granted to the full licensees

[…] Besides that, full licensees, provided that they accept and obey all the conditions stated in the rest of this License’s text, are also granted the following permissions:

[…]

c) to modify the Work, thus creating works derived from the original Work, and use the modified version;

d) to create works derived from the original Work in other ways, such as by including the Work into a larger whole;

e) to distribute works derived from the original Work, provided that all terms and conditions stated in this License for such a distribution are strictly and unconditionally obeyed.

С другой стороны, если у корпорастов подгорает, это не может не радовать.

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

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

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

Сишку таки ж преподают в институтах, но преподавать её первым языком… Я не согласен. Тут даже Паскаль лучше

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

Извините, пожалуйста, я просто не понял, что ограничение к юридическим, а не физическим лицам идет. Тогда правильная лицензия!

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

Она линейная только в том смысле, что с точки зрения процесса она выделяется непрерывным блоком (но с точки зрения операционной системы это не так).

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

московский НИИДАР, который был уникальной экосистемой всяких творцов, просто-напросто снесли, чтобы построить очередной муравейник. Никто известный туда не пришел.

Это звериный оскал капитализма московского разлива. Во многих местах по-другому.

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

Поскольку я систематически программированию почти не учился, я — физик по первому незаконченному образованию, то у меня путь сложный. В школе информатики не было, мне приятель в 10м классе рассказал за вечер фортран, что мне сильно на первом курсе пригодилось лабы обсчитывать. Потом армия, где я в нарядах по ночам читал Кернигана и решал задачки на бумажке. Ну потом чего только не было, в диапазоне от PL/1 и пролога до С++ через ассемблер PDP-11 и Альфы. Поэтому, я за Паскаль только по причине того, что студенту надо рассказать про типы и про передачу параметров по значению и по указателю. Сразу С с его арифметикой указателя — это выстрел в голову. Ну не питону же сразу учить с его неявной системой типов.

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

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

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

Поэтому, я за Паскаль только по причине того, что студенту надо рассказать про типы и про передачу параметров по значению и по указателю. Сразу С с его арифметикой указателя — это выстрел в голову.

Господи, опять эти сказки про сложные указатели. Концепция указателей и их арифметики объясняется за десять минут на примере тетради в клеточку, и можно объяснить это далеко не на первом занятии.

Ну не питону же сразу учить с его неявной системой типов.

Почему бы и нет. В MIT вон курс есть соответствующий. Если цель - обучить алгоритмостроению и структурам данных, то питон отлично подходит.

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

  1. Сначала питон, алгоритмы и структуры, базовые понятия о том, как писать код, декомпозировать задачи и прочее.

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

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

Имея этот базис, дальше можно изучать ассемблер, сети/протоколы, теорию компиляторов и прочие замечательные вещи.

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

Господи, опять эти сказки про сложные указатели. Концепция указателей и их арифметики объясняется за десять минут на примере тетради в клеточку, и можно объяснить это далеко не на первом занятии.

Арифметику указателей можно и не сразу, а вот scanf(«%d», &i) и printf(«%d», <просто>i) приходится рассказывать почти сразу. И вот тут у людей возникает ступор. Я это понял быстро, а вот тот же Крокодил на своих студентах и репетируемых школьниках наелся. Это чисто из практики. Тут сложно по себе мерить. Объяснить быстро, а объяснить так, что бы поняли — к сожалению нет. Я, помнится, долго осознавал концепцию косвенной адресации в ассемблере PDP-11, мне пришлось голову сломать на этом. Хотя, понятнее и прямее пидипишной системы команд человечество не придумало. Ну вот альфовая, если только, но там PC недоступен. Крокодил неспроста пришел к своей точке зрения. На указателях почти наверняка можно понять, будет человек программистом или нет.

Почему бы и нет. В MIT вон курс есть соответствующий. Если цель - обучить алгоритмостроению и структурам данных, то питон отлично подходит.

Алгоритмам — возможно, структурам данных — нет. Структур нету :) И union'oв — тоже. И вся эта объектная ориентированность костыльная с вечным self только затемняет концепцию ООП. Опять же, для того, что бы понять питоновские генераторы надо хоть чуть-чуть погрузиться в функциональное программирование. Питон слишком синтетический и не последовательный, что бы быть первым языком. Надо усвоить хоть что-то парадигмально стройное, а потом погружаться в эклектику. Я бы вместо лиспа бы учил людей чему-то ML-подобному на следующих этапах, хоть питоновские генераторы начнут потом с пальцев стекать. Но это лично мои вкусы в ФП.

Крокодильский подход не единственно возможный, «но это, сука, работает».

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

Господи, опять эти сказки про сложные указатели. Концепция указателей и их арифметики объясняется за десять минут на примере тетради в клеточку, и можно объяснить это далеко не на первом занятии.

Если ты что-то понял сразу, то это не значит, что другие сделают так же.

Сначала питон

Кошмар какой.

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

Арифметику указателей можно и не сразу, а вот scanf(«%d», &i) и printf(«%d», <просто>i) приходится рассказывать почти сразу.

Для printf() арифметика указателей не нужна, для scanf() нужно только понятие указателя, которое сильно проще, чем арифметика над ним.

И вот тут у людей возникает ступор.

Значит вы плохо объясняете. Я уже сказал, как нужно: рисуете одномерную линейку клеточек, ставите над ними номера. Если в клеточку записать значение - это будет переменная. Если в другую переменную записать номер клеточки - это будет указатель. Всё. Я не одному человеку это объяснил, и люди это понимают.

Крокодил неспроста пришел к своей точке зрения.

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

На указателях почти наверняка можно понять, будет человек программистом или нет.

Тогда зачем вы пытаетесь подавать программирование на игрушечных языках тем, кто не в состоянии осилить такую простую вещь, как указатель?

Алгоритмам — возможно, структурам данных — нет. Структур нету :)

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

И union’oв — тоже.

Тоже синтетическая конструкция, для преподавания типов данных вообще не нужна.

И вся эта объектная ориентированность костыльная с вечным self только затемняет концепцию ООП.

Наоборот, self явным образом показывает, к чему идет обращение. В тех же плюсах это как раз неочевидно. ООП в питоне упрощенный, и в нем присутствуют все основные свойства этого самого ООП. Так что для базового понимания концепции это ровно то, что нужно.

питоновские генераторы

Нужны только на поздних этапах изучения языка, так что аргумент мимо.

Ваша проблема, как преподавателей, в том, что вы учите слишком абстрактным концепциям. Учите решать проблемы, давайте простые аналогии, а не теоретизируйте в поисках идеала.

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

Если ты что-то понял сразу, то это не значит, что другие сделают так же.

Именно поэтому я и говорю, что нужно десять минут, а не пять.

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

задача, работающая в страничном пространстве, сама про страницы не в курсе, представляешь? для неё это именно что линейное адресное пространство, притом сугубо однородное

@Croco не знает про hugepages, кек.

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

Я не преподаватель, я просто программист, 35 лет за монитором. Мы с Кроко просто как-то вместе работали. Там и подружились. У нас разные пути. Может вот на пенсии задумаюсь о преподавании, надо же кому-то рассказать о том, как я жизнь прожил :)

gns ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.