Abbreviations, automatic: Difference between revisions

Content deleted Content added
Hout (talk | contribs)
m →‎{{header|Haskell}}: Cleared one redundant import
Line 1,126: Line 1,126:
6 Igande Astelehen Astearte Asteazken Ostegun Ostiral Larunbat
6 Igande Astelehen Astearte Asteazken Ostegun Ostiral Larunbat
4 Robi_bar Shom_bar Mongal_bar Budhh_bar BRihashpati_bar Shukro_bar Shoni_bar</pre>
4 Robi_bar Shom_bar Mongal_bar Budhh_bar BRihashpati_bar Shukro_bar Shoni_bar</pre>

=={{header|J}}==
<lang>
NB. y is words in boxes
abbreviation_length =: monad define
N =. # y
for_i. i. >: >./ #&> y do.
NB. if the length of the set of length i prefixes matches the length of the row
if. N -: # ~. i ({. &>) y do.
i return.
end.
end.
)

NB. use: auto_abbreviate DAY_NAMES
auto_abbreviate =: 3 :0
y =. y -. CR
lines =. [;._2 y
a =. <@([: <;._2 ,&' ');._2 y
L =. abbreviation_length&> a
((' ',~":)&> L) ,"1 lines
)
</lang>

<pre>

DAY_NAMES =: noun define
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
Sondag Maandag Dinsdag Woensdag Donderdag Vrydag Saterdag
E_djelë E_hënë E_martë E_mërkurë E_enjte E_premte E_shtunë

Ehud Segno Maksegno Erob Hamus Arbe Kedame
Al_Ahad Al_Ithinin Al_Tholatha'a Al_Arbia'a Al_Kamis Al_Gomia'a Al_Sabit
)

auto_abbreviate DAY_NAMES
2 Sunday Monday Tuesday Wednesday Thursday Friday Saturday
2 Sondag Maandag Dinsdag Woensdag Donderdag Vrydag Saterdag
4 E_djelë E_hënë E_martë E_mërkurë E_enjte E_premte E_shtunë
0
2 Ehud Segno Maksegno Erob Hamus Arbe Kedame
5 Al_Ahad Al_Ithinin Al_Tholatha'a Al_Arbia'a Al_Kamis Al_Gomia'a Al_Sabit
</pre>


=={{header|Java}}==
=={{header|Java}}==