Hello World - але в алфавітному порядку


24

Це виклик звучить занадто просто, щоб його вже не було, тому повідомте мені, чи це дублікат.

Завдання

Друк Hello, world!

Правила

Ваш код повинен бути в "байтовому порядку". Це означає, що кожен символ / байт має більш високе або рівне байтове значення, ніж попередній символ / байт.

Виняток із цього правила - символи пробілу , які можуть виникати в будь-якому місці.

У звичайні лазівки не допускаються.

Редагувати : Використання вбудованих функцій / констант, Hello, world!дозволених до заборонено, заборонено.

Редагування 2 : Виведенням може бути (n анонімна) функція, що повертає рядок, вираз, що вирішує рядок, або будь-яким іншим способом, який, на вашу думку, слід дозволити.

приклад

HWє дійсним: 0x48 (H) <= 0x57 (W)
printнедійсний: 0x72 (r) > 0x69 (i)
але PRintдійсний:0x50 (P) <= 0x52 (R) <= 0x69 (i) <= 0x6e (n) <= 0x74 (t)

Оцінка балів

Це тому оцінка - кількість символів / байтів. Чим нижче оцінка, тим вище рейтинг.


9
Є багато мов з 1-байтовими вбудованими Hello World. Деякі можуть навіть надрукувати Hello World для порожньої програми.
Денніс

2
Дуже тісно пов'язані. (Різниця полягає в тому, що кожен дозволяє сортувати кожен рядок незалежно, і що він в першу чергу набирається за кількістю рядків.)
Мартін Ендер

@Dennis Додав додаткове правило через це! Спасибі
Чарлі

Досі тривіально в 23, Headsecks та Lenguage, але набагато довше, ніж пара байтів.
Денніс

Вихід за замовчуванням, як ans = Hello, world!це гаразд? В іншому випадку MATLAB і Octave не зможуть спробувати це ... disp, printfі evalвсі вони є в алфавітному порядку.
Стюі Гріффін

Відповіді:


15

WhiteSpace, 146 байт

Оскільки весь пробіл може зустрічатися скрізь, це лише програма для гольфу Hello World. Оскільки пробіли тут не відображаються належним чином, візьміть наступну програму та замініть всі .пробілами, >вкладками та ;новими рядками.

...;..>>..>.>.;..>>>>;...>;...>>>;...>..;..>>.>..;..>>..>.>>;..>>>>>>>;...>..;...>;.;...>>>.;..>>...>>;;..;.;.;>.>;...>>.>.>>;>...>;..;.;;;..>;;;;

Примітка

Я не займався гольфом, як це зробив LukStorms. Його відповідь можна знайти тут .


Це не в порядку байтів.
Меттью Рох

1
Дійсно, але пробіли не повинні були бути в порядку байтів; це могло з’явитися скрізь
Лука

3
Ой. Хороше зловживання правилами тоді
Меттью Ро

Саме так. Це також є причиною цього вікі спільноти.
Лука

15

Навушники - 124 82 ч

Дякуємо @MartinEnder, що вказав мені на менший привіт!

Гарнітура, здається, є правильною мовою для роботи, тому що її ебать за мозком, за винятком того, що вона займає кожен мод 8.

 +19AISYchpx£¨°»ÁËÐÞàèðøĀĈĐĘĦīİĸŀňŐŘŠŨųŻƀƈƐƘƠƪƲƺǁǏǒǟǣǫǴǸȃȈȐțȤȫȴȼɀɋɓɜɠɫɱɹʃʉʑʞʣʩʴʺ˂ˏ

Ви можете спробувати, зайшовши сюди: https://repl.it/G2I5/1 , а потім тут: https://sange.fi/esoteric/brainfuck/impl/interp/i.html


Вам потрібно опублікувати фактичний інтерпретатор Headsecks, який буде виконувати це, а не програму Python для перетворення в BF та BF-інтерпретатор. Оскільки програма містить не-ASCII, перекладач, на який ви посилаєтесь, потребує обробки програм, що не належать до ASCII.
mbomb007

@ mbomb007 там був перекладач, але зараз це 404 :( esolangs.org/wiki/Headsecks
Maltysen


@ mbomb007, що один обробляє кодові точки Unicode, але не дивні трюки, які використовує bf helloworld. Я спробую шукати ще одну, або просто відкатусь на свою більш ранню, довшу відповідь.
Мальтісен

Можливо, хтось повинен створити реалізацію, тоді Денніс поставить її на TIO. Також хтось повинен редагувати Esolangs. Я збирався, але idr моя інформація про вхід.
mbomb007

13

CJam , 784 байт

"	 







































	 




































































	 











































































	 











































































	 














































































	 











	 	 






















































































	 














































































	 

















































































	 











































































	 



































































	 
"
"	
"')`er~

Спробуйте в Інтернеті!

Нічого не вигравши при цьому кількість байтів, але це все-таки було цікаво зробити.

Пояснення

Перший великий рядок кодує, Hello, world!використовуючи лише пробіл. Кожен символ відображається на вкладці, пробілі та ряді каналів рядків, рівних його кодовій точці мінус 32.

Далі рядок транслітерується, замінюючи вкладки на 'та канали рядків на ). Це призводить до безлічі послідовностей буквеного простору з наступною деякою кількістю приростів. Рядок зрівняється ~, просуваючи пробіли і збільшуючи їх до належних символів.

Стек неявно виводиться в кінці програми.


5
Відмінна, нарешті справді розумна відповідь!
ETHproductions
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.