LINUX.ORG.RU
Ответ на: комментарий от den73

Ныне веду разработку хранилища данных.

Изюминка в том, что архитектуру, создаваемого хранилища может задать, создающий его (и конечно изменить в любое время).

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

anonymous
()

отсюда и чуть ниже по треду ссылки на реализацию ассемблера на схеме через define-syntax, кажется в каком-то из вариантов была статья из трёх частей и ещё пример на гитхабе; ещё другой вариант, где прямо #lang asm6502 реализовали на PLT Scheme (-> DrScheme -> Racket)

в общем, лучше смотреть на примерах (почему ЯОП, почему Racket) – там кстати статья про текстовый процессор типа Skribe, Scribe в Racket, Skribe в другой Scheme, Skribillo в GNU Guile тоже довольно интересная штука (ЕМНИП, синтаксис в texinfo оттуда)

ещё книжку про Book Of Shen Марка Тарвера про Shen/Qi типизированный лисп/sequent calculus перечитываю, довольно занятное чтиво.

там он начинает с истории всего этого, как он дошёл до жизни такой. движок подобный он оказывается писал с середины 90х под CL, потом переписывал в Qi поверх CL, потом Shen поверх всего.

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

в общем, напрашивается на то чтобы взять например Attempto controlled language, OpenCyc и попытаться засунуть его в Shen, сравнить реализации (хотя он там сам пишет что вроде бы не очень быстро по сравнению с обычным нормальным прологом, в Attempto, OpenCyc вроде бы делали наоборот, лисп ради KLIF через пролог движок).

в общем, с примерами различных DSL под Shen поверх Yacc и пролога который туда встроен там тоже довольно интересно.

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

сама книжка The Beautiful Racket тоже интересна в контексте примеров DSL и например Pollen – средства вёрстки типа Skribe/Scribe/Skribillo/…/(…/TeX/Lout/neatroff/….)

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

например, взять AsciiDoc изначальный который ещё маленький который ещё на питоне (а не тот самодостаточный AsciiDoctor что на руби и жабе) – и сделать входной reader для AST для Skribilo например, с разметкою AsciiDoc-овой.

у него фич побольше, например поддерживается DocBook и через него ODT. аналогично или pandoc-ом в FB2/EPUB/OEBS.

книжки например через DocBook перегонять или как-то так.

в такой вот подобный лисп.

ещё в этом смысле интересен SILE: Simon’s typesetter который на С и на Lua. там XML-подобный синтаксис из коробки. и CaSILE где есть стили для генерации EPUB/FB2.

и gpp препроцессор. там из коробки TeX/XML/C препроцессорные синтаксисы, и можно добавить свой (например, лисповый в виде S-выражений).

в общем, Skribe-подобный формат и всякие там Pollen/Skribe/Scribe/Skribillo – более перспективен для конвертации подо всё.

а AsciiDoc просто нормальный человекочитаемый синтаксис.

который тоже напрашивается сделать как DSL например в том же Racket через #lang AsciiDoc

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

python:

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

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

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

ППКС. прослезилсо.

уж лучше бы лисп или пролог изучали. или например, Shen или Poplog.

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

На Питоне можно написать любую программу. На любом языке можно написать любую программу. Люди пишут тетрисы на sed, 3D-графику на Powershell и TLS на Javascript, а также занимаются машинным обучением на Форте. Всё это позволяет гордиться человечеством, но не имеет никакого отношения к практическим вопросам о том, какие языки нужно учить и на каких языках нужно писать.

спасибо тебе, добрый человек.

буду знать как дёргать куду с тензорами из форта.

ещё один повод будет откопать mind.AI на форте и потыкать что-то из него.

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

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

The AI Mind

is the software implementation of a theory of mind based on Chomskyan linguistics – the rules and structures of thought in natural human language.

внезапно, вот такой былинный EPIC FAIL: Ибипио пираха : еще раз об индейцах, которые не умеют считать

«Язык, мышление и картина мира индейцев пираха(н)»

TL;DR: язык, в котором нет понятия рекурсии, числительные только «много»/«несколько», нет понятия завтра, прошедшего и будущего времени. зато (возможно), есть что-то другое.**

<BUTTHURT-MODE> и да – это ЕСТЕСТВЕННЫЙ ЧЕЛОВЕЧЕСКИЙ язык </BUTTHURT-MODE>, на котором говорят живые люди

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

Что же случилось с молодым горячим евангелистом из Калифорнии на глинистых берегах Маиси? За все три разрыва Эверетт благодарит в предисловии к русскому изданию индейцев, чей язык и культуру он познавал все глубже и лучше. В 2005 году лингвист взорвал академическую среду статьей, а через три года вышла книга «Не спи — кругом змеи!», где те же самые научные тезисы обросли биографическими деталями.

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

Зато у пираха есть кое-что другое. В первую очередь так называемый принцип непосредственности восприятия, из которого следует, что индейцы живут здесь и сейчас — на таких максимальных показателях, что могут говорить лишь о том, что видели сами или со слов тех, кто видел. Поэтому они оказались неуязвимы перед проповедью Христа — истины миссионера разбивались о вопросы то ли детей, то ли гопников: «А ты сам его видел? А знаешь, кто его видел?». На этом фоне уже не столь экстравагантным кажется то, что они не рисуют, испытывают сложности с пониманием двухмерных изображений, обходятся без мифов и не помнят дальше, чем на пару поколений. А еще — не строят планов на будущее, не печалятся о прошедшем, не делают запасов еды, не знают, сколько у них детей и как их зовут, спят по чуть-чуть, когда захотят, а все оставшееся время смеются, хохочут и общаются с духами. Словом, Эверетт — возможно, в полемическом запале — утверждал, что нашел «грамматику счастья»; именно так называется документальный фильм австралийца Майкла О’Нила (2012) о приключениях ученого.

<lugovsky-mode>

не, ну а чо он, в натуре. каким-то своим васянским авторитетом пугает.

вот сам он, например, этого васяна видел? а суслика? а это мифическое завтра ?

ну то-то. а они есть, сто пудов.

</lugovsky-mode>

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

Ярослав Сергеев изобрёл «компьютер бесконечности»

статья Левковича-Маслюка в журнале «Компьютерра»

… TL;DR ….

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

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

?+1>?

Поясняя мотивы для разработки своей системы, Сергеев приводит пример арифметики, используемой одним из живущих в дельте Амазонки племен. Индейцы племени Пираха (Pirahг) считают так: один, два, много. Для них и 1 + 2 = много, и 2 + 2 = много. Что такое 3 или 4, они не представляют. Сергеев уверен, что этот примитивный способ счета очень важен для нас, потому что дает отличную аналогию с современным понятием бесконечности. Действительно, в системе счета Пираха операции много + 1 и много + 2 дают один и тот же результат: много. Нечто похожее мы имеем и в современной математике: ? + 1 = ? и ? + 2 = ?. Это сравнение наводит на следующую простую мысль: как индейцы Пираха не могут различить числа 3, 4, 5 и т. д. из-за неразвитости их системы записи конечных чисел, так и мы не можем различить бесконечные числа из-за неразвитости наших способов представления бесконечности. Именно поэтому возникают проблемы при вычислениях, связанных с бесконечно большими и бесконечно малыми величинами: невозможность их представления в памяти компьютера, необходимость введения понятия предела, неопределенные формы типа ? - ? и т. д., заключает Сергеев.

В основе конструкции Сергеева, призванной исправить дело, лежит гросс-единица (grossone), обозначаемая . Гросс-единица - это бесконечное число, равное по определению количеству элементов в множестве N натуральных (то есть целых положительных) чисел. Это определение надо понимать в дословном, буквальном смысле, то есть предполагать, что N имеет вид: {1, 2, 3, …, - 1, }. Другими словами, - это "самое большое натуральное число". Оно и выбирается в качестве основания новой системы исчисления. Ну а дальше - точно так же, как мы записываем числа в десятичной системе, а компьютер в двоичной, произвольные бесконечно малые и бесконечно большие числа представляют собой "записи" (records) вида:

                      (1)
В этой записи p - "гросстепени", а c - "гроссцифры". Отличие от десятичной или двоичной систем в том, что "гроссцифры" не фиксированные заранее, а произвольные "обыкновенные" числа, записываемые с помощью конечного числа знаков. "Гросстепени", в свою очередь, это либо записи вида (1), либо снова "обыкновенные" конечные числа. Таким образом, числа в форме (1) всегда представляются конечным числом символов. Конечность записи принципиальна для этой конструкции, подчеркивает Сергеев, - она призвана учесть тот факт, что и человек, и компьютер способны выполнить лишь конечное число операций. В этом, кстати, существенное отличие от нестандартного анализа, который дополняет бесконечностями обычное множество вещественных чисел, построенное с помощью бесконечных десятичных дробей (или эквивалентных конструкций).

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

….

картинки не грузяццо из архива «Компьютерры», надо или бумажную откопать или читать статьи в tex самого этого автора (там понятнее)

anonymous
()