Каков правильный тип пантомимы для эзотерических языков

Что такое правильный пантомимный тип эзотерических языков?
Я везде гуглил, я даже пытался спросить у Чака Норриса, но нигде не нашел ответа.

Я пробовал это для Brainfuck:

application/brainfuck
application/x-brainfuck
application/x+brainfuck
x-esoteric/x-brainfuck
chuck-norris-choice/brainfuck
x-you-lost-the-game/x-fuck-your-brain
42/++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.

Но ни один из них, похоже, не работал.


person m93a    schedule 15.06.2014    source источник


Ответы (2)


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

Тип носителя верхнего уровня

Насколько я вижу, вы можете выбрать два варианта: text и application:

text

Согласно Разделу 3:

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

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

В Раздел 4.1.4 упоминается следующее о нераспознанных подтипах:

Нераспознанные подтипы «текста» следует рассматривать как подтип «обычный», если реализация MIME знает, как обрабатывать кодировку.

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

application

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

Раздел 4.5.3 касается нераспознанных типов приложений:

Ожидается, что в будущем будут определены многие другие подтипы «приложения». Реализации MIME должны как минимум рассматривать любые нераспознанные подтипы как эквивалентные «application/octet-stream».

Читая соответствующий раздел (Раздел 4.5.1), мы узнаем, как приложения должны обрабатывать потоки октетов:

Рекомендуемое действие для реализации, которая получает объект «приложение/поток октетов», состоит в том, чтобы просто предложить поместить данные в файл с отменой любого Content-Transfer-Encoding или, возможно, использовать его в качестве входных данных для указанного пользователем процесс.

Если это кажется наиболее логичным способом обработки ваших данных, когда они не распознаны, тогда application для вас.

Подтип

Выбрать подтип намного проще. Раздел 6 описывает экспериментальные типы носителей:

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

Таким образом, ваш подтип должен быть X-brainfuck.

Резюме

У вас есть два варианта:

  1. text/X-brainfuck
  2. application/X-brainfuck

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

person Community    schedule 26.11.2014
comment
@ m93a Первоначально я не собирался давать полный ответ, но увлекся чтением. XD К сожалению, RFC не являются хорошим стимулом для юмора: только напряжение глаз. - person ; 28.11.2014

Я понятия не имею, почему вы считаете, что application/... является подходящим типом пантомимы для текстового файла.

Одним общепринятым типом MIME для .bf является text/x-brainfuck. Это язык, а не исполняемый файл.

person Andon M. Coleman    schedule 16.06.2014
comment
Я так не думаю. Например. JavaScript также представляет собой обычный текст, но правильный MIME-тип — application/javascript. Я думаю, что это как-то связано с удобочитаемостью для человека. Я бы предпочел application или chuck-norris-choice... - person m93a; 16.06.2014