Output the Hebrew alphabet

24

2

Your task is to print this exact text:

אבגדהוזחטיכךלמםנןסעפףצץקרשת

(You are allowed to print a trailing newline)

SHA256 hash of the UTF-8 encoding of the text:

0ab6f1e0bf216a0db52a4a5a247f95cba6f51496de7a24dfd01f3985dfcf6085

Base64 encoding:

15DXkdeS15PXlNeV15bXl9eY15nXm9ea15zXnted16DXn9eh16LXpNej16bXpden16jXqdeq

Rules

  • You can't use a builtin outputting this text.
  • Standard loopholes are disallowed.
  • This is , so the shortest answer wins.

Good luck!

TuxCrafting

Posted 2016-10-21T17:04:04.167

Reputation: 4 547

5I noticed the code points are not directly in order. You have 1488, 1489, 1490, 1491, 1492, 1493, 1494, 1495, 1496, 1497, 1499, 1498, 1500, 1502, 1501, 1504, 1503, 1505, 1506, 1508, 1507, 1510, 1509, 1511, 1512, 1513, 1514. I don't know very much about Hebrew, so could you confirm this is indeed intentional? – James – 2016-10-21T17:27:21.767

@DJMcMayhem I noticed that too, that's probably what makes the challenge a challenge. – Magic Octopus Urn – 2016-10-21T17:29:15.853

11@DJMcMayhem Unicode list final letters before normal letters but in the text in the question normal letters are listed before. It was not really intentional, but at least it encourage answers that are not as boring as print(map(chr, range(x, y))) – TuxCrafting – 2016-10-21T17:29:57.507

Because Hebrew is an RTL language, I'm not sure what the exact text is. Could you please post a base-64 encoding of the UTF-8 bytes or something equally unambiguous? – Peter Taylor – 2016-10-21T22:06:13.473

@PeterTaylor Done – TuxCrafting – 2016-10-21T22:08:54.823

6אני מדבר עברית! – OldBunny2800 – 2016-10-22T03:34:58.903

1@OldBunny2800 גם אני :) – TuxCrafting – 2016-10-22T09:49:42.167

1Hebrew is hard, I can't make the SHA256 hash match even with a text editor… – Angs – 2016-10-22T13:41:51.723

@TùxCräftîñg Seriously though, I think "me too"/"thanks"/etc. comments are not constructive. – Erik the Outgolfer – 2016-10-22T16:23:36.490

6Aleph null, aleph one, aleph 2, ... – user41805 – 2016-10-22T18:21:00.060

A cryptographic hash allows checking whether the output string is correct, but if it isn't then it doesn't help to identify why not. – Peter Taylor – 2016-10-22T18:30:46.783

2@Angs That's because it really doesn't match. echo 15DXkdeS15PXlNeV15bXl9eY15nXm9ea15zXnted16DXn9eh16LXpNej16bXpden16jXqdeq | base64 -d | sha256sum produces f1d4b9c12a197912a4bdb80fb3e4d3fad5a0d9b7edd243fae7b2ab3450618036. – hvd – 2016-10-23T15:07:26.717

@DJMcMayhem I know some hebrew, I can explain that one..(and you can verify on charmap), some letters have 2 forms like in english every letter has two forms 'a' 'A' 'p' 'P' in hebrew only some do. . Unicode puts them adjacent, and the poster has put them the other way to how the unicode puts them. If you open charmap and enter 05d0 (the utf-16 code for the first letter), you see all the hebrew letters with their description e.g. kaf and final kaf or as unicode places them. final kaf, and kaf.. – barlop – 2016-10-24T06:50:09.667

Are trailing newlines allowed? – Mego – 2016-10-24T08:49:58.020

@TùxCräftîñg Well, when you say "print this exact text" and provide a hash and a base64-encoded version that don't include the newline, it's not particularly clear. – Mego – 2016-10-24T09:32:26.843

2Downvoted for asking us to output "this exact text" when, in reality, it requires the outputting of slightly different text. – Shaggy – 2017-06-21T10:22:00.097

Is the hash and base64 encoding with or without the trailing newline? – David Conrad – 2017-06-23T00:17:21.063

איך הולך אחינו? – sagiksp – 2017-07-09T23:38:18.847

""<>Alphabet@"Hebrew" in Mathematica. – alephalpha – 2017-12-27T17:15:12.950

Answers

25

MATLAB, 52 51 bytes

[cumsum([1488 'CCCCCCCCCDADDAEADCDAEADCCC'-66]) '']

Example use:

>> [cumsum([1488 'CCCCCCCCCDADDAEADCDAEADCCC'-66]) '']
ans =
אבגדהוזחטיכךלמםנןסעפףצץקרשת

Explanation

'CCCCCCCCCDADDAEADCDAEADCCC'-66 produces the array [1 1 ... -1 2 1 1 1], which contains the consecutive differences between the codepoints of the desired characters.

[1488 ...] prepends 1488, so the array is now [1488 1 1 ... -1 2 1 1 1].

cumsum(...) computes the cumulative sum: [1488 1489 ... 1514].

[... ''] concatenates with the empty string. This has the effect of converting to char (and is one byte shorter than char(...))

Luis Mendo

Posted 2016-10-21T17:04:04.167

Reputation: 87 464

19

Jelly, 22 21 20 bytes

27R+“¿ÇÑÞ摦2Ụ+1487Ọ

Try it online!

Idea

If we subtract 1487 from each code point, we get the array R that follows.

1 2 3 4 5 6 7 8 9 10 12 11 13 15 14 17 16 18 19 21 20 23 22 24 25 26 27

That's just the range from 1 to 27, but not in ascending order; the pairs (11, 12), (14, 15), (16, 17), (20, 21), and (22, 23) have been swapped.

If we take the ascending range and add 2 to 11, 14, 16, 20, and 22, we get the array A that follows.

1 2 3 4 5 6 7 8 9 10 13 12 13 16 15 18 17 18 19 22 21 24 23 24 25 26 27

This is no longer a permutation of the range, but if we stably sort the range by the values in that array, we can reconstruct the original array.

Code

27R+“¿ÇÑÞ摦2Ụ+1487Ọ  Main link. No arguments.

27R                   Yield [1, ..., 27].
           ¦          Conditional application:
    “¿ÇÑÞæ‘             At indices 11, 14, 16, 20, and 22...
   +        2           add 2 to the corresponding value.
                      This yields the array A from the previous section.
             Ụ        Grade up; sort the indices of the result by its corresponding
                      values. This yields the array R from the previous section.
              +1487   Add 1487 to each integer in R.
                   Ọ  Unordinal; convert integers to characters.

Dennis

Posted 2016-10-21T17:04:04.167

Reputation: 196 637

15

PowerShell v2+, 58 bytes (UTF-16)

'אבגדהוזחטיכךלמםנןסעפףצץקרשת'

PowerShell Unicode is UTF-16 unless explicitly specified otherwise, and then it's a crapshoot anyway since it's all UTF-16 in the background.

This just puts the literal string on the pipeline and the default Write-Output at the end of program execution prints it to screen.

The shortest I could get the ASCII version is 63

-join([char[]]'ABCDEFGHIJLKMONQPRSUTWVXYZ['|%{[char](1423+$_)})

Which takes the ASCII value of the string ABC... and adds 1423 to each char to get the appropriate string.

AdmBorkBork

Posted 2016-10-21T17:04:04.167

Reputation: 41 581

6Upvoted only because your ASCII version is clever. Must... support... clever... golfing! – wizzwizz4 – 2016-10-21T18:48:51.153

1It took me at least 5 minutes to realise that it wasn't the actual alphabet in the ASCII version. – caird coinheringaahing – 2017-12-26T03:24:52.940

11

05AB1E, 36 29 26 25 23 bytes

Saved 2 bytes thanks to Adnan

Uses CP-1252 encoding.

1488•’ÉÇW–moû•5Bvy<+Dç?

Try it online!

Explanation

1488            # push 1488 (accumulator)
•’ÉÇW–moû•      # push 2235174277545950437
5B              # convert from base-5 to base-10 (122222222230330403230403222)
  v             # for each digit in above number
   y<           # decrease it by 1
     +          # add to accumulator
      Dç?       # print a copy of accumulator converted from code point

Emigna

Posted 2016-10-21T17:04:04.167

Reputation: 50 798

Interpreting the big number as a base 5 number saves two bytes: 1488•’ÉÇW–moû•5Bvy<+Dç?. – Adnan – 2016-10-21T18:28:09.087

@Adnan: Ah of course. Great thinking! – Emigna – 2016-10-21T18:29:15.810

9

Brain-Flak, 172 bytes

This answer is based largely one DJMcMayhem's solution here so I recomend you check it out.

Like DJMcMayhem's solution this uses the -rA flag to reverse output and print to unicode.

(((((()()()()()){})))<(((({}{}{}()){({}[()])}{})){}{})>){({}[()]<(({})())>)}{}(((((()()())((((((((({}(((({}())[()])()())()())[()]))[()])()())())()())[()]))[()])()())())())())

Try it online!

Explanation

I made this answer by running a bunch of micro-optimizations over the original solution provided by DJMcMayhem. These optimizations while saving bytes, make the code unreadable and the algorithm obtuse. I, to be honest, do not really understand how or what my code does.

Perhaps someday I will understand how this works...

Post Rock Garf Hunter

Posted 2016-10-21T17:04:04.167

Reputation: 55 382

6

Python 3, 50 bytes

#coding:cp862
print('אבגדהוזחטיכךלמםנןסעפףצץקרשת')

The file must be created using the CP862 encoding or by reversing the following hexdump.

0000000: 23 63 6f 64 69 6e 67 3a 63 70 38 36 32 0a 70 72  #coding:cp862.pr
0000010: 69 6e 74 28 27 80 81 82 83 84 85 86 87 88 89 8b  int('...........
0000020: 8a 8c 8e 8d 90 8f 91 92 94 93 96 95 97 98 99 9a  ................
0000030: 27 29                                            ')

This could probably be ported to Python 2 (thus saving two bytes), but I lack the proper locale to test it. Python 3 dutifully prints an UTF-8 encoded version (or whatever is appropriate for the current locale) of the alphabet.

Verification

$ base64 > hebrew.py -d <<< I2NvZGluZzpjcDg2MgpwcmludCgngIGCg4SFhoeIiYuKjI6NkI+RkpSTlpWXmJmaJyk=
$ wc -c hebrew.py
50 hebrew.py
$ echo $LANG
en_US.UTF-8
$ python3 hebrew.py
אבגדהוזחטיכךלמםנןסעפףצץקרשת

Dennis

Posted 2016-10-21T17:04:04.167

Reputation: 196 637

5

CJam, 23 bytes

27,"%(*.0"{i_)e\}/'אf+

Try it online!

How it works

27,                     Push [0 ... 26].
   "%(*.0"              Push that string. Its code points are [37 40 42 46 48],
                        which are [10 13 15 19 21] modulo the length of the string.
          {     }/      For each character:
           i              Compute its code point.
            _)            Push an incremented copy.
              e\          Swap the integers of [0 ... 26] at those indices.
                  'אf+  Add all resulting integers to the first character of the
                        Hebrew alphabet.

Dennis

Posted 2016-10-21T17:04:04.167

Reputation: 196 637

4

Brain-Flak, 186 bytes

(((((((((((((((((((((((((((((((((()()()()()){})){}{}()){({}[()])}{})){}{})())())())())())())())())())()())[()])()())()())[()])()()())[()])()())())()())[()])()()())[()])()())())())())

This code is 182 bytes long, and I added 4 bytes for two command line flags: -r and -u

Try it online!

Many thanks to @Neil for this awesome integer metagolfer that created this sweet way of pushing 1488 (the code point of the first character)

(((((((()()()()()){})){}{}()){({}[()])}{})){}{})

Explanation:

Pushing large number in brain-flak is relatively difficult. However, since the act of pushing a number also evaluates to that number, we can push several numbers at the same time for massive byte savings. Here is a more concrete example. The innermost part (that I wrote above) in psuedo code is

push(1488)

This expression evaluates to 1488, so we wrap the entire thing in another push statement:

push(push(1488) + 1)

This pushes 1488 and 1489, as well as evaluating to 1489. So we wrap this:

push(push(push(1488) + 1) + 1)

which pushes 1488, 1489, and 1490, as well as evaluating to 1490. Repeat this step for each number we need to push.

However, since the increments aren't always 1, it's a little bit more complicated than that. Here is a more readable version:

(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
#Push 1488
(((((((()()()()()){})){}{}()){({}[()])}{})){}{})
())     # + 1
())
())
())
())
())
())
())
())
()())   # + 2
[()])   # - 1
()())   # + 2
()())
[()])   # - 1
()()()) # + 3
[()])   # - 1
()())   # + 2
())     # + 1
()())   # + 2
[()])   # - 1
()()()) # + 3
[()])   # - 1
()())   # + 2
())     # + 1
())
())

James

Posted 2016-10-21T17:04:04.167

Reputation: 54 537

I thought it is +1 for -r because the - doesn't count – NoOneIsHere – 2016-10-21T17:47:34.340

6@NoOneIsHere - doesn't count if it is already present from a different option (e.g. in perl -e). Brain-Flak doesn't have an existing option like that, so -, the option, and the space after all count toward the total. – Riley – 2016-10-21T18:01:44.887

@WheatWizard If I were to take that, then I wouldn't be able to write an explanation. It just looks like a jumbled mess of brackets to me. :P – James – 2016-10-21T20:40:00.923

Its a very small change. I just moved the two instances of ()()() to the beginning and put them down and up. – Post Rock Garf Hunter – 2016-10-21T20:46:11.737

4

JavaScript (ES6), 59 bytes

_=>"אבגדהוזחטיכךלמםנןסעפףצץקרשת"

Best I could do in ASCII was 80 79 78 bytes:

_=>String.fromCharCode(...[...0x377babbcf7f.toString(3)].map(c=>++n-c,n=1488))

If a character array is acceptable, 75 bytes:

_=>[...0x377babbcf7f.toString(3)].map(c=>String.fromCharCode(++n-c),n=1488)

Edit: Saved some bytes thanks to @IsmaelMiguel. Saved another byte thanks to @ETHproductions. If you use Firefox 30-57 then you can save another 2 bytes thanks to @ETHproductions using generator or array comprehensions:

_=>String.fromCharCode(...(for(c of 0x377babbcf7f.toString(3,n=1488))++n-c))
_=>[for(c of 0x377babbcf7f.toString(3,n=1488))String.fromCharCode(++n-c)]

Neil

Posted 2016-10-21T17:04:04.167

Reputation: 95 035

You can save a byte on your ASCII alternative by using 0x377BABBCF7F.toString(3). Combinig this with .map(), you can do _=>0x377BABBCF7F.toString(3,n=1488).split``.map(_=>String.fromCharCode(++n-_)) for 78 bytes. It returns an array of characters. – Ismael Miguel – 2016-10-21T21:41:47.697

@IsmaelMiguel Nice catch on the .. but we don't use split around here. – Neil – 2016-10-21T23:42:53.903

Nice. You can modify the char-array version slightly to get _=>String.fromCharCode(...[...0x377babbcf7f.toString(3)].map(c=>++n-c,n=1488)), 1 byte shorter than the current 79 bytes. – ETHproductions – 2016-10-22T00:01:36.003

@ETHproductions Bah, I had played around with String.fromCharCode(...) and had managed to convince myself that it would always be longer. In fact it saves 4 bytes on my base 2 solution (which is still 84 bytes because it takes more bytes to decode). – Neil – 2016-10-22T00:16:50.067

If you're willing to use array comprehensions, you can get 2 bytes off of each; string: _=>String.fromCharCode(...[for(c of 0x377babbcf7f.toString(3,n=1488))++n-c]), char-array: _=>[for(c of 0x377babbcf7f.toString(3,n=1488))String.fromCharCode(++n-c)) – ETHproductions – 2016-10-22T00:59:46.177

@ETHproductions Thanks, I've edited those in, but I changed the first to a generator comprehension because they're cooler ;-) – Neil – 2016-10-22T10:40:53.787

4

///, 27 bytes

ABCDEFGHIQSRTVUXWYbdcfeghiq

Try it online!

Output is encoded in CP424.

To verify it yourself:

$ echo ABCDEFGHIQSRTVUXWYbdcfeghiq | ./slashes.pl | python3 -c 'print(bytes(input(), "utf-8").decode("cp424"))' | base64
15DXkdeS15PXlNeV15bXl9eY15nXm9ea15zXnted16DXn9eh16LXpNej16bXpden16jXqdeqCg==

Mego

Posted 2016-10-21T17:04:04.167

Reputation: 32 998

What kind of code is this? I think it needs to be converted to UTF-8 for viewing purposes anyways. Not that it is necessarily invalid :P have a +1 – Erik the Outgolfer – 2016-10-24T16:18:16.383

@EriktheGolfer There is no need to convert it to UTF-8. That is not a requirement anywhere in the challenge. – Mego – 2016-10-24T18:50:06.990

I think you might attract downvotes then. Please note that, in your place, I would have included the UTF-8 version and a hexdump of the original... – Erik the Outgolfer – 2016-10-25T10:36:58.307

3

05AB1E, 28*2-1=55 bytes

"אבגדהוזחטיכךלמםנןסעפףצץקרשת

Try it online!

-1 byte thanks to Emigna + 28 bytes thanks to DJMCMayhem ;).

Magic Octopus Urn

Posted 2016-10-21T17:04:04.167

Reputation: 19 422

4I don't know what encoding 05AB1E uses, but I highly doubt those are one byte chars in whatever it is. – James – 2016-10-21T17:30:45.440

@DJMcMayhem I think TIO has a bug, those characters don't exist in CP-1252. – Erik the Outgolfer – 2016-10-21T20:37:43.213

@EriktheGolfer Most likely it uses UTF-8 for convenience and then the 05AB1E interpreter does the necessary internal conversion. That's what I do for V (which uses latin1). – James – 2016-10-21T20:39:15.520

@DJMcMayhem Here it is shown as UTF-8 I think, but it also supports CP-1252, which you can use to make your byte count lower. This is not pure CP-1252, though, so it must be run with UTF-8 strings. – Erik the Outgolfer – 2016-10-21T20:41:52.807

3

///, 54 bytes

אבגדהוזחטיכךלמםנןסעפףצץקרשת

Try it online!

There can't be any version more golfed than this :(

Erik the Outgolfer

Posted 2016-10-21T17:04:04.167

Reputation: 38 134

2

APL (Dyalog), 35 bytes

d←⍳27
d[⎕A⍳'KNPTV']+←2
⎕UCS 1487+⍋d

Try it online!

Uriel

Posted 2016-10-21T17:04:04.167

Reputation: 11 708

you can encode 11 14 16 20 22 as ⎕A⍳'KNPTV' – ngn – 2017-12-27T11:16:11.730

2

Scala/Groovy/Python 3, 9 ascii-chars + 27 2-byte chars = 63 bytes

print("אבגדהוזחטיכךלמםנןסעפףצץקרשת")

assuming UTF-8

Scala, 59 bytes

print("ABCDEFGHIJLKMONQPRSUTWVXYZ["map(x=>(x+1423).toChar))

x+1423 is the same as x-'A'+1488

corvus_192

Posted 2016-10-21T17:04:04.167

Reputation: 1 889

Polygot, it works in Groovy too; also, see my answer, bytecount is off. – Magic Octopus Urn – 2016-10-21T19:39:53.173

1also in python 3 (also python 2 but then the parenthesis aren't necessary) – user49822 – 2016-10-21T19:46:52.250

1@caruscomputing I'd be wary of editing another user's byte count because you assume a certain encoding. Are you sure Scala can or can only handle UTF-8? Also, the Hebrew alphabet has 27 letters, so 61 is wrong one way or another. – Dennis – 2016-10-21T20:11:03.467

The first option also works on PHP. – Ismael Miguel – 2016-10-21T22:04:12.920

1

ArnoldC, 112 bytes

IT'S SHOWTIME
TALK TO THE HAND "אבגדהוזחטיכךלמםנןסעפףצץקרשת"
YOU HAVE BEEN TERMINATED

Uriel

Posted 2016-10-21T17:04:04.167

Reputation: 11 708

1

Fourier, 53 bytes

|+2a|X1488~i+10(ia^~i)^avaXXva+3avaX^aXva+3avaX^a^a^a

Uses functions again.

Try it FourIDE!

Beta Decay

Posted 2016-10-21T17:04:04.167

Reputation: 21 478

1

Keg, 34 bytes

Inspired by a Powershell solution.

ZYXVWTUSRPQNOMKLJIHGFEDCBA(֏+")(,

TIO

user85052

Posted 2016-10-21T17:04:04.167

Reputation:

1

C#6+, 76 86 82 bytes

void f()=>Console.Write("אבגדהוזחטיכךלמםנןסעפףצץקרשת");

First attempt at Golfing. Am I doing this right?

EDIT: +6 bytes for forgetting to enclose in a function. Thanks @Kevin

C#5 and below version, 86 82 bytes

void f(){Console.Write("אבגדהוזחטיכךלמםנןסעפףצץקרשת");}

terrible-coder

Posted 2016-10-21T17:04:04.167

Reputation: 41

Actually, you should either print a function or a complete program. So void F(){Console.WriteLine("אבגדהוזחטיכךלמםנןסעפףצץקרשת");} would be valid, or ()=>{Console.WriteLine("אבגדהוזחטיכךלמםנןסעפףצץקרשת");} as well I think (not sure about this last one, though). Also, you can golf it by using .Write instead of .WriteLine. :) That being said, welcome to PPCG! You may find Tips for golfing in C# interesting to read through. Enjoy your stay.

– Kevin Cruijssen – 2016-10-24T07:37:39.490

You know, you can use <s>your text</s> to strike some text instead of using strange characters. – Erik the Outgolfer – 2016-10-24T15:28:33.550

I wasn't aware about that. Anyway thanks @EriktheGolfer – terrible-coder – 2016-10-24T23:26:49.513

0

Perl 6 (74)

(map (*+1488).chr,[\+] '122222222230330403230403222'.comb >>->>1.join.say

bb94

Posted 2016-10-21T17:04:04.167

Reputation: 1 831

0

Ruby, 49 bytes

-11.upto(15){|r|$><<(""<<r+1499-2601[r]+5202[r])}

Try it online!

G B

Posted 2016-10-21T17:04:04.167

Reputation: 11 099

0

Haskell, 23 bytes

main=putStr['א'..'ת']

Try it online!

This works in TIO's version of Haskell

vroomfondel

Posted 2016-10-21T17:04:04.167

Reputation: 2 094

0

C, 49 bytes

f(i){for(i=0x5d0;i<=0x5ea;i++)wprintf(L"%lc",i);}

Some users may need to call setlocale before using this but it worked fine for me.

Govind Parmar

Posted 2016-10-21T17:04:04.167

Reputation: 828

Suggest for(i=1488;putwchar(i++)<1514;); instead of for(i=0x5d0;i<=0x5ea;i++)wprintf(L"%lc",i); – ceilingcat – 2019-05-10T01:04:13.723

0

Clean, 62 bytes

Start="אבגדהוזחטיכךלמםנןסעפףצץקרשת"

Try it online!

Οurous

Posted 2016-10-21T17:04:04.167

Reputation: 7 916

0

BaCon, 57 bytes

  • In most BASICs, the question mark simply represents PRINT.

  • At first glance, the solution below looks like 30 bytes, but the Hebrew characters need 2 bytes of storage because of UTF-8. So there are 27 characters x 2 bytes + 1 byte for the '?' and 2 bytes for the double quotes = 57 bytes.

Solution:

?"אבגדהוזחטיכךלמםנןסעפףצץקרשת"

Peter

Posted 2016-10-21T17:04:04.167

Reputation: 119

Try GW-BASIC with a CP862 VGA BIOS for 30. (Same text) – Joshua – 2016-10-21T21:48:53.483

0

s-lang, 59 bytes

Really simple answer...

t[][אבגדהוזחטיכךלמםנןסעפףצץקרשת]
  • t - replace function (replaces "nothing" in the input with the alphabet...)

Try it here

MCMastery

Posted 2016-10-21T17:04:04.167

Reputation: 783

0

zsh, 25 21 bytes

echo ${(j..):-{ת..א}}

My browser is messing it up: the ת should be the first letter, then the א. If you paste somewhere else, though, it should work. The old version:

for i in {ת..א};printf $i

Elronnd

Posted 2016-10-21T17:04:04.167

Reputation: 101

Invalid, because final letters and normal letters are reversed in Unicode – TuxCrafting – 2016-10-22T18:58:51.140

Also, it's actually 27 bytes – TuxCrafting – 2016-10-22T18:59:14.107

Oh and the range should actually be aleph first and tav last. If the string is reversed in the question, it's because Hebrew is an RTL language – TuxCrafting – 2016-10-22T19:04:30.467

@TùxCräftîñg in my terminal, it displays correctly only with taf first an aleph last. What do you mean "final letters and normal letters are reversed in Unicode"? – Elronnd – 2016-10-22T19:14:43.960

In the text in the question, there is כך for example (normal kaf first, final kaf second), but in Unicode, final letters are before normal letters (ךכ), so the printed text in invalid. And if it display with tav first, it's because Hebrew is a RTL language, so the first character is displayed rightmost – TuxCrafting – 2016-10-22T19:26:32.320

@Oliver he meant the old version for i in {ת..א};printf $i – Magic Octopus Urn – 2016-10-24T15:57:14.977

I count 23 bytes. – Oliver Ni – 2016-10-24T18:00:04.183

My browser is messing it up

Welcome to the world of right to left text, we deal with this every day – sagiksp – 2017-02-14T08:20:42.650

It's supposed to be right to left, so I'm printing from taf to alef, but my browser is showing alef first and then taf. It works fine in my terminal. – Elronnd – 2017-02-14T17:54:43.200

0

Java 7, 85 bytes

void c(){System.out.print("אבגדהוזחטיכךלמםנןסעפףצץקרשת");}

I'm not even gonna bother posting test code or a 'Try it here' like I usually do..

Kevin Cruijssen

Posted 2016-10-21T17:04:04.167

Reputation: 67 575