Черновая версия 1.0

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

Мы очень впечатлены и признательны за усилия команды TrumpScript (http://samshadwell.me/TrumpScript/), которая создала и реализовала один такой язык. Тем не менее, мы чувствуем, что есть достаточно места, если не острая необходимость, в дополнительных языках, особенно тех, которые могут быть созданы без надлежащего дизайна или планирования.

В этом документе описаны некоторые требования и принципы Трампа - компьютерный язык, или сокращенно TrumpCL.

Типы данных и примитивы

TrumpCL предлагает два новых нововведения в области типов данных.

Alt-Boolean

Тип данных alt-Boolean - это фундаментальный тип данных в языке, предназначенный для удовлетворения потребности в быстром изменении базовой логики реальности по мере необходимости. В отличие от логических выражений, которые определяются таблицами истинности, операции с типами данных Alt-Boolean определяются таблицами неверности.

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

Например:

Рассмотрим функцию модели климата, которая возвращает истину, если существует глобальное потепление.

Логическое C = isGlobalWarmingReal ();

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

Alt-Boolean C = false;

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

Поддержка огромных типов данных

Все числовые типы данных в TrumpCL поддерживают атрибут HUGE. Огромные значения позволяют результатам вычислений точно отражать желаемые кратные расчетным значениям.

Например:

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

T = O/3

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

@ огромный T = O / 3

T будет равно 1,5 миллиона (или больше) независимо от значения O.

Данные

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

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

Многопоточность

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

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

Иногда поток может давать результаты, которые, хотя и точны на других компьютерных языках, будут сочтены нежелательными в TrumpCL (например, не результат, который ожидался или желался при запуске потока). В этом случае исполнительный орган произвольно завершит поток (запустит поток) или попытается заблокировать любые каналы, которые используются потоком для связи. В крайнем случае конфликт может привести к утечке точных данных - это называется «твит». Руководитель обычно отвечает противоречивым «твитом», который отрицает это из первой беседы, помечая его как «Грустно!».

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

Среда разработки

Большинство сред разработки состоят из редакторов кода, компиляторов и различных инструментов тестирования и проверки ошибок. TrumpCL обладает уникальной способностью принимать код или существующие приложения на любом языке ввода и давать желаемые результаты. И приложения ввода, и желаемый результат определяются файлами .EO, которые содержат распоряжения, управляющие логикой.

Раскраска синтаксиса

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

Модульные тесты и проверка ошибок

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

Выполнение

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