Print the alphabet without using each vowel

72

14

Inspiration: in 1939, a man named Ernest Vincent Wright wrote a novel called Gadsby without using the letter 'e'.

Your task is to write a set of (up to 5) programs in any language (which has a text-based syntax*) to output all 26 letters of the alphabet in order. However for each vowel aeiou, at least one of the programs must not include any occurrence of the vowel.

So there must be

  • a program that does not use 'a' or 'A' anywhere in the syntax of the program.
  • a program that does not use 'e' or 'E' anywhere in the syntax of the program.
  • a program that does not use 'i'  or 'I' anywhere in the syntax of the program.
  • a program that does not use 'o' or 'O' anywhere in the syntax of the program.
  • a program that does not use 'u' or 'U' anywhere in the syntax of the program.

All of them must output abcdefghijklmnopqrstuvwxyz.

The winner shall be the solution where the length of all programs is the shortest.

* since the constraint wouldn't be much of a challenge in Piet or Whitespace


Current rankings (06 Mar 2014):

The Catalogue

The Stack Snippet at the bottom of this post generates the catalogue from the answers a) as a list of shortest solution per language and b) as an overall leaderboard.

To make sure that your answer shows up, please start your answer with a headline, using the following Markdown template:

## Language Name, N bytes

where N is the size of your submission. If you improve your score, you can keep old scores in the headline, by striking them through. For instance:

## Ruby, <s>104</s> <s>101</s> 96 bytes

If there you want to include multiple numbers in your header (e.g. because your score is the sum of two files or you want to list interpreter flag penalties separately), make sure that the actual score is the last number in the header:

## Perl, 43 + 2 (-p flag) = 45 bytes

You can also make the language name a link which will then show up in the snippet:

## [><>](https://esolangs.org/wiki/Fish), 121 bytes

/* Configuration */

var QUESTION_ID = 196898; // Obtain this from the url
// It will be like https://XYZ.stackexchange.com/questions/QUESTION_ID/... on any question page
var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";
var COMMENT_FILTER = "!)Q2B_A2kjfAiU78X(md6BoYk";
var OVERRIDE_USER = 8478; // This should be the user ID of the challenge author.

/* App */

var answers = [], answers_hash, answer_ids, answer_page = 1, more_answers = true, comment_page;

function answersUrl(index) {
  return "https://api.stackexchange.com/2.2/questions/" +  QUESTION_ID + "/answers?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + ANSWER_FILTER;
}

function commentUrl(index, answers) {
  return "https://api.stackexchange.com/2.2/answers/" + answers.join(';') + "/comments?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + COMMENT_FILTER;
}

function getAnswers() {
  jQuery.ajax({
    url: answersUrl(answer_page++),
    method: "get",
    dataType: "jsonp",
    crossDomain: true,
    success: function (data) {
      answers.push.apply(answers, data.items);
      answers_hash = [];
      answer_ids = [];
      data.items.forEach(function(a) {
        a.comments = [];
        var id = +a.share_link.match(/\d+/);
        answer_ids.push(id);
        answers_hash[id] = a;
      });
      if (!data.has_more) more_answers = false;
      comment_page = 1;
      getComments();
    }
  });
}

function getComments() {
  jQuery.ajax({
    url: commentUrl(comment_page++, answer_ids),
    method: "get",
    dataType: "jsonp",
    crossDomain: true,
    success: function (data) {
      data.items.forEach(function(c) {
        if (c.owner.user_id === OVERRIDE_USER)
          answers_hash[c.post_id].comments.push(c);
      });
      if (data.has_more) getComments();
      else if (more_answers) getAnswers();
      else process();
    }
  });  
}

getAnswers();

var SCORE_REG = /<h\d>\s*([^\n,<]*(?:<(?:[^\n>]*>[^\n<]*<\/[^\n>]*>)[^\n,<]*)*),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/;

var OVERRIDE_REG = /^Override\s*header:\s*/i;

function getAuthorName(a) {
  return a.owner.display_name;
}

function process() {
  var valid = [];
  
  answers.forEach(function(a) {
    var body = a.body;
    a.comments.forEach(function(c) {
      if(OVERRIDE_REG.test(c.body))
        body = '<h1>' + c.body.replace(OVERRIDE_REG, '') + '</h1>';
    });
    
    var match = body.match(SCORE_REG);
    if (match)
      valid.push({
        user: getAuthorName(a),
        size: +match[2],
        language: match[1],
        link: a.share_link,
      });
    else console.log(body);
  });
  
  valid.sort(function (a, b) {
    var aB = a.size,
        bB = b.size;
    return aB - bB
  });

  var languages = {};
  var place = 1;
  var lastSize = null;
  var lastPlace = 1;
  valid.forEach(function (a) {
    if (a.size != lastSize)
      lastPlace = place;
    lastSize = a.size;
    ++place;
    
    var answer = jQuery("#answer-template").html();
    answer = answer.replace("{{PLACE}}", lastPlace + ".")
                   .replace("{{NAME}}", a.user)
                   .replace("{{LANGUAGE}}", a.language)
                   .replace("{{SIZE}}", a.size)
                   .replace("{{LINK}}", a.link);
    answer = jQuery(answer);
    jQuery("#answers").append(answer);

    var lang = a.language;
    lang = jQuery('<a>'+lang+'</a>').text();
    
    languages[lang] = languages[lang] || {lang: a.language, lang_raw: lang, user: a.user, size: a.size, link: a.link};
  });

  var langs = [];
  for (var lang in languages)
    if (languages.hasOwnProperty(lang))
      langs.push(languages[lang]);

  langs.sort(function (a, b) {
    if (a.lang_raw.toLowerCase() > b.lang_raw.toLowerCase()) return 1;
    if (a.lang_raw.toLowerCase() < b.lang_raw.toLowerCase()) return -1;
    return 0;
  });

  for (var i = 0; i < langs.length; ++i)
  {
    var language = jQuery("#language-template").html();
    var lang = langs[i];
    language = language.replace("{{LANGUAGE}}", lang.lang)
                       .replace("{{NAME}}", lang.user)
                       .replace("{{SIZE}}", lang.size)
                       .replace("{{LINK}}", lang.link);
    language = jQuery(language);
    jQuery("#languages").append(language);
  }

}
body {
  text-align: left !important;
  display: block !important;
}

#answer-list {
  padding: 10px;
  width: 290px;
  float: left;
}

#language-list {
  padding: 10px;
  width: 500px;
  float: left;
}

table thead {
  font-weight: bold;
}

table td {
  padding: 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdn.sstatic.net/Sites/codegolf/all.css?v=ffb5d0584c5f">
<div id="language-list">
  <h2>Shortest Solution by Language</h2>
  <table class="language-list">
    <thead>
      <tr><td>Language</td><td>User</td><td>Score</td></tr>
    </thead>
    <tbody id="languages">

    </tbody>
  </table>
</div>
<div id="answer-list">
  <h2>Leaderboard</h2>
  <table class="answer-list">
    <thead>
      <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr>
    </thead>
    <tbody id="answers">

    </tbody>
  </table>
</div>
<table style="display: none">
  <tbody id="answer-template">
    <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr>
  </tbody>
</table>
<table style="display: none">
  <tbody id="language-template">
    <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr>
  </tbody>
</table>

shamp00

Posted 2012-04-24T09:11:49.357

Reputation: 1 221

1if one manages to make a single program that does not contain any vowel, do we need multiply the length of the program by 5? – Cristian Lupascu – 2012-04-24T10:55:38.760

@w0lf No, in that case the length of the single program would suffice. – shamp00 – 2012-04-24T11:06:48.777

4@w0lf: No, it says "up to 5 programs" and "length of all programs", which I read as "there can be only one program and its length counts in this case". – schnaader – 2012-04-24T11:09:55.030

This doesn't really add much to the existing print-the-alphabet questions.

– Peter Taylor – 2012-04-24T13:45:21.347

9@PeterTaylor: You don't think having to avoid using vowels in your syntax is a unique challenge? As a JS programmer, it's especially interesting :) – mellamokb – 2012-04-24T13:51:05.610

assembly, anyone?! – Stefan Paul Noack – 2012-04-24T14:41:50.010

2Are newlines acceptable in the output (i.e. one per character)? I can shorten some of my code if that is the case... – Gaffi – 2012-04-24T21:17:05.433

2Is uppercase output allowed? – Erik the Outgolfer – 2016-09-16T11:09:51.277

@EriktheGolfer It's not. – mbomb007 – 2016-09-16T16:56:11.560

@mbomb007 I think it's unclear whether it is allowed or not. OP has specified a string, so my Jelly answer is 7 bytes, not 6. But, if OP allows uppercase, then I will change. – Erik the Outgolfer – 2016-09-16T21:03:13.213

1@EriktheGolfer The OP hasn't been on in 2 years. So assume he's not going to get on to allow it. It may be "unclear" to you, but if you look at all the answers, they're all lowercase, so it's just you. – mbomb007 – 2016-09-16T21:05:53.417

@mbomb007 On profile page: Last seen 2 hours ago. OP is definitely still on PPCG. – Erik the Outgolfer – 2016-09-16T21:07:28.753

2I'm the OP. Uppercase not allowed. – shamp00 – 2016-09-17T05:21:46.720

1What if the shebang contain vowels? #/usr/bin/perl -w at least 3 vowels? – F. Hauri – 2013-12-12T13:31:26.087

Couldn't I just write G in Pyth? – Stan Strum – 2017-09-06T03:21:57.893

Are functions ok in languages where the main method has to exist and be called main? – jrtapsell – 2017-09-11T09:52:42.803

1@Shamp00 Are we still checking scores? My JavaScript solution beats the crap out of the current one and the JavaScript console one...? – WallyWest – 2014-01-29T11:49:04.607

@WallyWest I've updated the scores. (I guess I don't get notified when there's a new answer now that this question has become 'community wiki'...) – shamp00 – 2014-01-29T16:24:37.827

1damnit; java is ruled out cause even the escape sequence hack doenst work due to requiring a U inside... – masterX244 – 2014-03-04T20:15:30.567

@F.Hauri you don't usually count the shebang in code golf anyway, so that's not a problem. – nyuszika7h – 2014-07-08T16:20:11.330

Answers

48

Golfscript - 8 chars

123,97>+

gnibbler

Posted 2012-04-24T09:11:49.357

Reputation: 14 170

8damn, really can't beat golfscript in terms of conciseness... – Patrick Oscity – 2012-04-25T11:12:06.143

18That being said, the readability stinks like crazy. – Andrew Gray – 2013-04-09T17:25:50.240

4Use 91,65>+ instead. – Erik the Outgolfer – 2016-08-03T17:00:54.840

5It's not that bad ;) generate a list of 123 numbers, remove those who aren't greater than 97, coerce it (array of numbers) to a string. – McKay – 2014-01-29T16:38:31.927

31

Brainfuck, 38 chars

++++++[->++++<]>[->+>++++<<]>++[->+.<]

There are, of course, no vowels (or any other letters) in brainfuck syntax.

Ilmari Karonen

Posted 2012-04-24T09:11:49.357

Reputation: 19 513

430 bytes: ++[[<+++>->++++<]>]<<<<++[->+.<] – primo – 2016-08-07T03:13:21.323

2Valid point there! ;) – WallyWest – 2013-12-16T00:17:43.287

23

PHP, 31 Bytes

No a,e,i,o,u:

<?=~žœ›š™˜—–•”“’‘ŽŒ‹Š‰ˆ‡†…;

The binary string after the tilde has the following hex representation:

\x9e\x9d\x9c\x9b\x9a\x99\x98\x97\x96\x95\x94\x93\x92\x91\x90\x8f\x8e\x8d\x8c\x8b\x8a\x89\x88\x87\x86\x85

Since there's a language scoreboard, I may as well submit this one as well:

Ruby (v1.8) 18 bytes

$><<[*97.chr..'z']

primo

Posted 2012-04-24T09:11:49.357

Reputation: 30 891

I'm not sure I understand how this works. Could I get an explanation? – Mr. Llama – 2012-04-25T18:22:06.343

When applied to a string, the ~ operator inverts all of the bits. Here I've inverted abc...xyz. Because there are no symbols characters (or whitespace) in the binary string, quotes are not necessary either. – primo – 2012-04-25T18:31:59.297

1You may want to specify an encoding for what you have there. – Joey – 2012-04-26T05:36:54.597

1iso-8859-1. Three 'unprintable' characters were removed when it was posted, which is why I included the hex. – primo – 2012-04-26T06:33:38.707

2Nice and probably the shortest possible PHP version. A command to generate the file: php -r 'echo("<?=~\x9e\x9d\x9c\x9b\x9a\x99\x98\x97\x96\x95\x94\x93\x92\x91\x90\x8f\x8e\x8d\x8c\x8b\x8a\x89\x88\x87\x86\x85;");' > script.php. The command to run it: php -d error_reporting=0 script.php; echo. – axiac – 2015-08-18T12:39:29.843

17

Pyth, 1 Character

G

Pyth predefines certain variables. G is predefined as the lowercase alphabet. Pyth also implicitly prints each line with a reasonable return value.

isaacg

Posted 2012-04-24T09:11:49.357

Reputation: 39 268

3Ninja'd me by 3 years... – Stan Strum – 2017-09-06T03:23:08.837

16

Ruby (24 22)

Edit: parentheses can be omitted, 2 chars less:

$><<'%c'*26%[*97..122]

24 chars in Ruby:

$><<('%c'*26)%[*97..122]

How it works

$> is an alias for $stdout or STDOUT. You can write to it using the << operator. The term '%c'*26 repeats the string '%c' 26 times. The % operator is defined on String as an alias to sprintf, so str % val is equivalent to writing sprintf(str,val). The format character %c is used to transform a char value to a char. These values come from [*97..122] which creates an array containing the values from 97 to 122. Et voilá!

Patrick Oscity

Posted 2012-04-24T09:11:49.357

Reputation: 765

Very nice. I was looking for a way to use << but had forgotten about $>. – Mark Reed – 2012-04-25T10:49:27.747

1I didn't even know about $> before, but i guessed there had to be some dollar-variable alias for $stdout that no one can remember :) – Patrick Oscity – 2012-04-25T11:04:41.630

21 characters: $><<[*"`".."z"][1,26] (note: this only works in Ruby 1.8) – Ventero – 2012-05-05T00:11:38.247

@Ventero not only in Ruby 1.8, in Ruby 1.9.2 works as well. But using p [*"".."z"][1,26]` is even shorter. – Hauleth – 2012-09-14T09:57:33.740

@Hauleth: No, running it in 1.9 doesn't generate the correct output, as in 1.9 Array#to_s is the same as Array#inspect, whereas in 1.8 it's Array#join - so in 1.9 the output is ["a", "b", "c", "d", "e", ...] instead of abcdef.... For the same reason, p can't be used (it calls inspect on its arguments, instead of to_s). – Ventero – 2012-09-14T10:08:31.703

Awwww, yeah. Now I see that the output was format was given :/ My bad. – Hauleth – 2012-09-14T10:10:38.690

15

J, 26 23 17 16 characters

After an hour or so rummaging around in J's underwear drawer I've finally found a way to eliminate the a. and u: verbs.

2(3!:4)96+#\26$1

Previously:

a.{~96++/\26$1
u:97+i.26

with thanks to randomra for the #\ trick.

Gareth

Posted 2012-04-24T09:11:49.357

Reputation: 11 678

Nice solution! Managed to shorten with 1 char using #\ instead of +/\. – randomra – 2013-04-09T00:47:05.567

5Get out of my underwear drawer – Joe – 2014-12-03T10:33:37.517

15

JavaScript (100)

No 'aeou':

this['\x61l\x65rt']('\x61bcd\x65fghijklmn\x6fpqrst\x75vwxyz')

No 'i':

alert('abcdefgh\x69jklmnopqrstuvwxyz')

zzzzBov

Posted 2012-04-24T09:11:49.357

Reputation: 2 915

+1 Nice improvement on my answer :) I had thought about using the \x## codes but weren't sure if they were valid in JavaScript. – mellamokb – 2012-04-24T16:28:02.597

why the alerts at all? on a js terminal, objects are echo'd automagically. ('\x61bcd\x65fghijklmn\x6fpqrst\x75vwxyz') @ 42 characters. – antony.trupe – 2012-04-24T17:26:43.600

3@antony.trupe, for code golf, IO is typically done via the language's built in IO mechanisms (or common plugins). For JS this is typically alert, confirm, prompt, console.log, and document.write. Simply declaring a string literal doesn't produce it as output when executed. Otherwise, you'd be correct, and I would have used that. – zzzzBov – 2012-04-24T17:52:18.060

it produces output(by the definition I use anyways) in the google chrome console, but I concede the issue; it's an arbitrary restriction to begin with. – antony.trupe – 2012-04-24T18:32:00.133

@antony.trupe, in a language like PHP you'd be able to get away with using a literal, because that's how it performs IO. – zzzzBov – 2012-04-24T18:35:21.877

15

K,9

_26#.Q.b6

K,10

"c"$97+!26

K,14

.:".Q.","c"$97

tmartin

Posted 2012-04-24T09:11:49.357

Reputation: 3 917

1The K5 way is nearly your second solution but $ takes symbols instead of strings to control the type converted into: `c$97+!26 – JohnE – 2015-06-02T03:17:26.377

2and a silly way to do it with no letters at all (12 chars): (@$`)$97+!26 – Aaron Davies – 2014-01-20T09:56:20.993

14

R, 17 + 19 = 36 characters

no ae (17):

intToUtf8(97:122)

no iou (19):

cat(letters,sep="")

Paolo

Posted 2012-04-24T09:11:49.357

Reputation: 696

12

Bash (38)

No vowels at all.

/*/*/*ntf "/*/?ch? {\x61..z}"|/*/b?sh

marinus

Posted 2012-04-24T09:11:49.357

Reputation: 30 224

This program fails on my system, because /*/b?sh does not exist. I have /usr/local/bin/bash, not /bin/bash. – kernigh – 2012-05-04T17:36:06.983

2Nice use of shell globbing! – Mechanical snail – 2012-05-19T21:48:04.277

@kernigh [[ ! -d "/bin" ]] && mkdir "/bin"; sudo cp "/usr/local/bin/bash" "/bin/bash" – Stan Strum – 2018-01-07T02:09:16.340

It would be better if /bin/sh is bash. Then the code can end with /*/sh (36 bytes). But I have not found a system where this works. In Debian, /bin/sh isn't bash. In my old Mac, /bin/sh is bash 2.05b0.(1), but this version is too old and doesn't expand {a..z}. – kernigh – 2018-01-07T21:25:05.830

11

C, 90 88 84 characters

Compile using gcc -nostartfiles

b;_exit(){for(;b<26;)printf("%c",b+++97);}    // 42 chars, works for a, u
b;_start(){putchar(b+++97)>121?:_start();}    // 42 chars, works for e, i, o

schnaader

Posted 2012-04-24T09:11:49.357

Reputation: 1 132

_start and _exit are a nice way to get around main. But if a non-standard compilation line is OK, why not -DX=main? – ugoren – 2012-04-24T12:53:41.827

4Somehow, -DX=main feels worse than -nostartfiles does (for me). It is a way to move a part of the source code to the compilation line and it is the same as writing #define X main in the source code which would be clearly invalid. Whereas -nostartfiles isn't a way to rename main, but removes the restriction that there must be a main function (called in _start). On the other hand, using -nostartfiles does feel a bit like cheating, especially as it contains 4 of the 5 "bad" letters :) – schnaader – 2012-04-24T13:21:37.623

It's a slippery slope... The distance from -nostartfiles to -DX=main is small, and then why not save some chars with -DX=main() and so forth. But I can't find a solution that doesn't involve anything fishy. – ugoren – 2012-04-24T16:22:41.023

There's no way you can define the main function to be "mn" for instance? – Neil – 2012-04-26T10:22:05.130

@Neil, only by doing something like -Dmn=main. A C function must have a main function unless a non-standard option like -nostartfiles is used. – Matthew Flaschen – 2012-04-29T03:17:21.350

9

dc: 18 17 characters

97[dP1+dBD>m]dsmx

And there died a brave character.

Fors

Posted 2012-04-24T09:11:49.357

Reputation: 3 020

I doubt so. I'm wrapping head around it and I don't see any way to shorten it. I have ended with exactly same solution except I used x for register which makes mine solution more obfuscated. – Hynek -Pichi- Vychodil – 2013-04-21T21:01:12.723

397[dP1+dBD>m]dsmx, 17 characters. Apparently you can always enter hexadecimal characters in DC, but as the input base is ten the value is B*10+D=11*10+13=123='{', and not 0xBD. – Fors – 2013-04-21T22:53:01.010

Oh, nice glich ;-) – Hynek -Pichi- Vychodil – 2013-04-21T23:25:52.467

9

Golfscript, 10 characters

26,{97+}%+

hammar

Posted 2012-04-24T09:11:49.357

Reputation: 4 011

19Why so verbose? – Peter Taylor – 2012-04-24T13:43:45.217

9

Powershell, 75 62 characters

Edit: Used -f (String.Format) and array indexing to significantly reduce the code length.

'{0}bcd{1}fgh{2}jklmn{3}pqrst{4}vwxyz'-f"$(1|gm)"[8,10,0,5,31]

How it works

gm is an alias for get-members, so 1|gm returns members of the value 1, which is of the System.Int32 type:

PS C:\> 1|gm
   TypeName: System.Int32
Name        MemberType Definition
----        ---------- ----------
CompareTo   Method     int CompareTo(System.Object value), int CompareTo(int value)
Equals      Method     bool Equals(System.Object obj), bool Equals(int obj)
GetHashCode Method     int GetHashCode()
...

"$(1|gm)" returns a string representation of the above list, which happens to contain all the vowels we need to complete the alphabet: "int CompareTo(System.Object value)..."

Danko Durbić

Posted 2012-04-24T09:11:49.357

Reputation: 10 241

2This isn't stable if MS adds members to System.Int32, though :-) – Joey – 2012-04-26T05:12:36.187

I think that would have to be ($x=''+$(gv))[8]+"bcd$($x[4])fgh$($x[25])jklmn$($x[26])pqrst$($x[19])vwxyz" which is also 75 characters :) – Danko Durbić – 2012-04-26T07:02:56.133

Argh, right. I fished the wrong item from my history. Sorry. – Joey – 2012-04-26T07:53:36.877

Actually, if you replace ''+$(gv) with "$(gv)" you get ($x="$(gv)")[8]+"bcd$($x[4])fgh$($x[25])jklmn$($x[26])pqrst$($x[19])vwxyz" which is 74 characters. Nice! – Danko Durbić – 2012-04-26T08:54:37.390

That was probably the one I wanted to get from my history. Although I wrote ''+(gv) I think which has the same length as the inline string expansion (you don't need a subexpression there) :) – Joey – 2012-04-26T08:57:16.017

2I used -f (String.Format) and array indexing to significantly reduce the code length. – Tim Lewis – 2014-03-04T20:03:55.043

9

Ruby, 20 chars

$><<[*97.chr..?z]*''
  • 97.chr is an elaborate way of saying 'a'
  • .. specifies a Range
  • ?z is a shorter way of saying "z"
  • the [*range] causes the range to splat al it's values in an array
  • *'' is the same as join(''); it glues all array values together.
  • $><< Perlicism: print to stdout.

steenslag

Posted 2012-04-24T09:11:49.357

Reputation: 2 070

This code doesn't seem to work. ?z is not shorthand for 'z', but rather for 122. This, however, does work for 18 bytes: $><<[*97.chr..'z'] – primo – 2012-09-13T07:17:09.733

It does work in Ruby 1.9.

– steenslag – 2012-09-13T14:42:00.067

1I downloaded 1.9.3... and you're right. Why would they change something like that? I can see why anarchy golf is still running 1.8.7. Anyway, the 18 byte solution works for v1.8.7- – primo – 2012-09-13T15:30:56.883

2(4 years later...) You can replace 97.chr with ?\x61 for -1 byte. – Jordan – 2016-09-16T05:46:50.973

8

BASH: 40 characters

  • No aeiou used.
  • No wildcard used.
`tr c-y '\141-w'<<<'rtkpvh %s c'` {b..z}

Prince John Wesley

Posted 2012-04-24T09:11:49.357

Reputation: 669

8

Haskell, 12

['\97'..'z']

Or is this cheating? :)

RobAu

Posted 2012-04-24T09:11:49.357

Reputation: 641

I admittedly don't know much about Haskell, but it gives me this error: Parse error: naked expression at top level – primo – 2012-12-20T09:39:53.570

1You run it in the interpreter – RobAu – 2012-12-20T10:21:51.397

7

Python 2, 83

No a, i, o or u; 47:

x=97;s='';exec"s+=chr(x);x+=1;"*26+"pr\x69nt s"

No e; 36:

print"abcd\x65fghijklmnopqrstuvwxyz"

flornquake

Posted 2012-04-24T09:11:49.357

Reputation: 1 467

7

MATLAB, 12+20=32 characters

No eiou (12):

char(97:122)

No aeou (20)

fprintf('%s',97:122)

Jonas

Posted 2012-04-24T09:11:49.357

Reputation: 381

7

Perl 5, 22 characters

(1) only contains a and e, 10 chars (requires 5.10+, run from the command line):

-Esay+a..z

(2) only contains 'i', 12 chars:

print v97..z

If not allowed to run from the command line, then you need to use use 5.01;say a..z for the first one, at a cost of 7 characters and one more vowel, but it still has no 'i', so it results in a valid entry at 29 total characters.

Mark Reed

Posted 2012-04-24T09:11:49.357

Reputation: 667

The '-E' option is ok I think, but usually the 2 characters '-E' are added into the total character length. – Gareth – 2012-04-24T15:56:03.660

@gareth - the -E takes the place of -e for running a one-liner. If you're running a program from a file, then you're stuck with the use, although you could replace it with the command line option -M5.01 and shave off two more characters. – Mark Reed – 2012-04-24T16:17:23.233

I was thinking of the rule with the -p option where 2 characters are added to the count. Looking at this meta question though, you should be able to use the -M5.010 for free if that option helps shorten your code.

– Gareth – 2012-04-24T16:29:53.603

you could replace your print statement with die to shave off 2 chars – ardnew – 2012-04-30T20:49:06.160

chr 97..z may be replaced with v97..z for 3 bytes. – primo – 2013-07-24T07:01:46.457

7

In Perl,

it's also possible without any vowels

but much harder than in Ruby etc. This uses a total of 101 chars but doesn't require cmd line (perl -e) invocation.

`\160\145\162\154\40\55\145\40\42\160\162\151\156\164\40\123\124\104\105\122\122\40\141\56\56\172\42`

=> Result: abcdefghijklmnopqrstuvwxyz

In contrast to the 'similar looking' PHP Solution, this is a real program. The program decoded reads:

perl -e "print STDERR a..z"

After encoding to octal values, another perl interpreter is called during run by the `` (backticks). The backticks would consume the output, therefore it's printed to STDERR.

The encoding is done by sprintf:

my $s = q{perl -e "print STDERR a..z"};
my $cmd = eval(
       '"' . join('', map sprintf("\\%o",ord $_), split //, $s) . '"'
       );

and the eval'd encoding is the program posted (within backticks):

"\160\145\162\154\40\55\145\40\42\160\162"
"\151\156\164\40\123\124\104\105\122\122"
"\40\141\56\56\172\42"

Regards

rbo

rubber boots

Posted 2012-04-24T09:11:49.357

Reputation: 1 014

8You could shorten this to 44 characters by only encoding the vowels :) – marinus – 2012-04-30T22:35:50.387

7

APL (Dyalog) (11 13)

You might need an APL font. This is supposed to be Unicode but there's no preview...

Only U (and perhaps if counting Greek vowels):

⎕UCS 96+⍳26

(That's: [quad]UCS 96+[iota]26)

Only A:

⎕A

marinus

Posted 2012-04-24T09:11:49.357

Reputation: 30 224

2U is a vowel... – Tobia – 2013-07-24T23:26:22.377

@Tobia: and it took over a year for someone to see that (including me). I guess iota is actually also a vowel now that I'm thinking about it. Fixed it. – marinus – 2013-07-25T20:35:07.443

The APL functional symbol iota (U+2373) is not considered a letter in Unicode, and therefore can't be a vowel. Note, that it is distinct from the Greek small letter iota (U+03B9). – ngn – 2014-06-13T09:31:04.600

6

Python 2, 175 characters

Note: prints to output unlike earlier python answer.

Uses 'e', but no a,i,o,u - 63 61 59 65 (fix mistaken i move to lowercase) 115 chars (get rid of spaces).

exec('fr%cm sys %cmp%crt*\nf%cr x %cn r%cnge(97,123):std%c%ct.wr%cte(chr(x)),'%(111,105,111,111,105,97,111,117,105))

(Originally, it used print with a comma that inserted a space; also printed upper case letters. Now saw stringent requirements for 'abcdefghijklmnopqrstuvwxyz' as output; so adding import statement).

Doesn't use 'e' (uses a,i,o,u; could trivially get rid of a,u for small extension) - 61 60 chars

import string
print string.__dict__['low%crcas%c'%(101,101)]

dr jimbob

Posted 2012-04-24T09:11:49.357

Reputation: 336

1Your first solution does use the letter i, so it should be: exec('f%cr x %cn r%cnge(65,91):pr%cnt chr(x),'%(111,105,97,105)) and we're back to 64 characters. – BioGeek – 2012-04-26T11:02:14.913

1exec('fr%cm sys i mp%crt*\nf%cr... – Gareth – 2012-04-26T14:20:59.023

BioGeek & @Gareth - my manual vowel detection skills suck. Thanks for point it out; but I had an extra e written as a '%c' so in the end it evens out. – dr jimbob – 2012-04-26T15:58:15.297

You can remove the parentheses from exec('...') – mbomb007 – 2016-09-16T16:52:44.857

5

Rebmu: 15 characters

Ctc'`L26[pn++C]

Reading Rebmu always requires a bit of unmushing to start with:

c: tc '` l 26 [pn ++ c]

Then it helps to expand the abbreviations:

c: to-char-mu '`
loop 26 [
    prin ++ c
]

It would be more obvious using a character literal for the predecessor of lowercase a:

c: #"`"
loop 26 [
    prin ++ c
]

But that doesn't "mush", so converting a word literal to a character passes for the same purpose. What I like about it, as with most Rebmu, is that it has the spirit of a sensible program despite the compression. (The Golfscript answer is shorter but doesn't map to the way a programmer would usually think when coding.)

HostileFork says dont trust SE

Posted 2012-04-24T09:11:49.357

Reputation: 2 292

5

<>< (Fish) - 22 characters

Because <>< uses the 'o' to print a character, this challenge seems impossible to do. Luckily, fish can change its own code in runtime. This allowed me to add the print instruction to the code.

This code uses none of the vowels:

'`78'+11pv
:X:'z'=?;>1+

You can run the code here

Thijs ter Haar

Posted 2012-04-24T09:11:49.357

Reputation: 752

5

Ruby 196 164 44 47

$><<"\x61bcd\x65fgh\x69jklmn\x6Fpqrst\x75vwxyz"

Cristian Lupascu

Posted 2012-04-24T09:11:49.357

Reputation: 8 369

Is this a valid answer, since p outputs quotation marks around the alphabet? – Mark Reed – 2012-04-24T14:51:00.033

i agree p x is equivalent to calling puts str.inspect, which results in surrounding quotation marks. – Patrick Oscity – 2012-04-25T11:13:17.080

@padde you are both right; changed. – Cristian Lupascu – 2012-04-25T11:52:15.627

1@padde I used your $><<, so +1 for that and congratulations; your version is much better – Cristian Lupascu – 2012-04-25T11:54:23.907

5

JavaScript (154)

(1) Only contains i (99 chars):

t=this;s=-t+t+t.b;z=s[1]+'bcd'+s[7]+'fghijklmn'+s[4]+'pqrst'+s[21]+'vwxyz';t[s[1]+'l'+s[7]+'rt'](z)

(2) Only contains aeou (55 chars):

t=0;s=''+t.b;alert('abcdefgh'+s[5]+'jklmnopqrstuvwxyz')

Demo: http://jsfiddle.net/SvN5n/

mellamokb

Posted 2012-04-24T09:11:49.357

Reputation: 5 544

$("h\x65\x61d")[0]["\x6fwn\x65rD\x6fc\x75m\x65nt"]["l\x6fc\x61t\x69\x6fn"]="j\x61v\x61scr\x69pt:\x65v\x61l(`f\x6fr(s='',l=65;l<90;l++){s=s+Str\x69ng.fr\x6fmCh\x61rC\x6fd\x65(l);};c\x6fns\x6fl\x65.l\x6fg(s)`)" 208chars, no aeoui used in code. Works on chrome browser. – Esc Điệp – 2019-10-03T10:09:18.593

5

VBA: 76 brute force, 116 without 'cheating' (98 if newlines are acceptable in the output)

Standard Functions

Thanks to VBA's verbosity, I don't believe this can be done without 'E' or 'U' in a standard code module...

  • "E nd"
  • "F u nction"
  • "S u b"

Immediate Functions

Running with mellamokb's assumption, here's without the function declaration (leaving out SUB and FUNCTION) (116 chars, 98 if newlines are acceptable in output):

The below uses neither 'e' nor 'a' (43 chars, formatted to run in the immediate window):

b=65:Do:z=z+Chr(b):b=b+1:Loop Until b=91:?z

The below uses neither 'i' nor 'a' nor 'u' (33 chars, formatted to run in the immediate window):

For b=65 To 90:z=z+Chr(b):Next:?z

The below uses neither 'a' nor 'o' nor 'u' (40 chars, formatted to run in the immediate window):

b=65:While b<91:z=z+Chr(b):b=b+1:Wend:?z

If newline characters are allowed in the output, then the above examples can be shorter:

(37 chars)

b=65:Do:?Chr(b):b=b+1:Loop Until b=91

(27 chars)

For b=65 To 90:?Chr(b):Next

(34 chars)

b=65:While b<91:?Chr(b):b=b+1:Wend

Brute Force

Running with w0lf's Ruby answer

(76 chars, formatted to run in the immediate window):

?Chr(65)&"BCD"&Chr(69)&"FGH"&Chr(73)&"JKLMN"&Chr(79)&"PQRST"&Chr(85)&"VWXYZ"

Gaffi

Posted 2012-04-24T09:11:49.357

Reputation: 3 411

1I think it would be fair to leave Sub..End Sub out, since most other programs don't include function definition. – mellamokb – 2012-04-24T13:52:29.073

@mellamokb Well, that makes me feel better. I'll whip up some examples to add to this. – Gaffi – 2012-04-24T13:53:48.560

2Just think of it as "code you run in the immediate window" :) – mellamokb – 2012-04-24T13:54:25.183

2Well, if in doubt just call it VBScript which can be included in a file without needing a Sub :) – Joey – 2012-04-26T09:13:42.580

Fixed a bunch of needless spaces, changed print to ? since that works in the immediate window. – Gaffi – 2012-12-19T20:42:35.670

5

Python 159 117

As mentioned in the other python post the hardest part is dealing with the fact that the only way to output is to use print or sys.stdout.write, both of which contain i. Have to do it with 2 programs (which are freestanding and don't use the python interactive shell to create the output):

This one only uses i for 55 chars:

print"%cbcd%cfghijklmn%cpqrst%cvwxyz"%(97,101,111,117)

This one avoids using i for 104 chars:

eval("sys.stdout.wr%cte"%105,{'sys':eval("__%cmport__('sys')"%105)})("%c"*26%tuple(range(97,123))+"\n")

EDIT: Massive breakthrough!!! I was thinking that use of eval (or even exec) was a bit of a cheat and not truly in the spirit of the competition. Anyway, trawling through the builtins I found a way to get hold of the print function without using i. So here is the avoid-i (and o) program for 68 chars:

vars(vars().values()[0])['pr%cnt'%105]("%c"*26%tuple(range(97,123)))

But because that also avoids o, this can be paired with one that only avoids a, e, u for 49 chars:

print"%cbcd%cfghijklmnopqrst%cvwxyz"%(97,101,117)

Benedict

Posted 2012-04-24T09:11:49.357

Reputation: 211

You can toss away compatibility, and gain a character - vars(vars().values()[0]).values()[47] – ugoren – 2012-05-06T20:43:58.820

5

Ruby, 22

$><<[*?`..?{][1,26]*''

No letters whatsoever :)

user4740

Posted 2012-04-24T09:11:49.357

Reputation:

4

JavaScript (single program, no vowels whatsoever) 104 99 92 90

Edit 1: []["s\157rt"]["c\157nstr\165ct\157r"]('\141l\145rt("\141bcd\145fgh\151jklmn\157pqrst\165vwxyz")')()

Edit 2: 3[$="c\157nstr\165ct\157r"][$]('\141l\145rt("\141bcd\145fgh\151jklmn\157pqrst\165vwxyz")')()

3[$="c\157nstr\165ct\157r"][$]('\141l\145rt`\141bcd\145fgh\151jklmn\157pqrst\165vwxyz`')()

Edit 1: Previously used "filter" as my array trigger to access global object, reduced it to "sort" for a saving of 5 chars.

Edit 2: Reduced initial array to 3 to obtain constructor primitive and reused constructor recursively to shave off 7 chars, many thanks to @Firefly for the inspiration.

Edit 3: Reduced (" and )" in single-quoted string to backticks, shaving a further 2 characters.

WallyWest

Posted 2012-04-24T09:11:49.357

Reputation: 6 949

4

Ruby, 47 characters

(1) Only contains 'a' and 'u', 24 chars:

puts [*97..122].pack'c*'

(2) Only contains 'o' and 'i', 23 chars:

$><<[*97.chr..'z'].join

There's a slight difference in output in that the first one adds a newline and the second doesn't. Could add the newline to the second at a cost of 4 characters; removing it from the first would be harder.

Mark Reed

Posted 2012-04-24T09:11:49.357

Reputation: 667

4

PHP, HTML (50)

No 'aeiou':

&#97;bcd&#101;fgh&#105;jklmn&#111;pqrst&#117;vwxyz

abcdefghijklmnopqrstuvwxyz

zzzzBov

Posted 2012-04-24T09:11:49.357

Reputation: 2 915

I only see HTML. – joar – 2012-04-26T14:41:45.227

@joar, if you place the same text in files named index.html and index.php, you would get the same output. – zzzzBov – 2012-04-26T14:50:25.297

@zzzzBox I know that, because PHP only processes code within <?php (and <?, <?= if you have short tags enabled) blocks. Still, this is not a PHP example since it does not contain any valid PHP code or even a PHP code block. It's HTML with character entities.

– joar – 2012-04-27T12:50:18.867

@joar, PHP will output any code within the file that is not within <?php ?> tags, because it is designed as a templating language for HTML, which makes this genuinely PHP code, I'm simply not using any of the dynamic features of the language. – zzzzBov – 2012-04-27T13:13:38.130

@zzzzBox well, let me port your username to PHP: zzzzBox Released under the MIT license. – joar – 2012-04-27T13:16:55.527

1@joar, I can't tell if you're trying to be humorous, it seems to have been lost on me. – zzzzBov – 2012-04-27T13:39:47.410

It was a humouros comment. My point is that you may pipe anything through the PHP interpreter as long as it doesn't contain any PHP blocks, Doing that does not magically turn it into PHP code. – joar – 2012-04-27T13:47:34.033

1@joar, it's not magic, but it is valid PHP. You can't pipe anything through the PHP interpreter, you need to pipe valid characters in the correct encoding. HTML happens to be valid PHP because it's used as a subset of the language. – zzzzBov – 2012-04-27T13:53:15.117

wouldn't PHP be the subset of HTML? As you said, [OHP] is designed as a templating language for HTML -- My point is that PHP does not parse HTML, leaves it as it is, it does not even validate it -- You may pipe Hamlet through PHP but that does not mean you've written hamlet in PHP -- Your implementation is written in HTML and the only thing you can do to make even half-PHP is to wrap it in <?='...'?>. – joar – 2012-04-27T14:09:13.393

1Nope, HTML is a subset of PHP, PHP includes everything that HTML can do, in addition to other capabilities. PHP has to parse the entire contents of the page to find the <? tags, so the HTML is parsed, and then passed through. Hamlet can be piped through PHP in the same way that you can pipe Hamlet through an HTML file and have it be HTML. Comments are not the appropriate location for these extended discussions, so send me an email if you wish to resolve your confusion. – zzzzBov – 2012-04-27T14:16:12.863

1

PHP does not parse the HTML, it scans it for the next PHP block start tag. see the definitions of parse.

– joar – 2012-04-27T14:43:52.957

4PHP does indeed output the text. The problem is, this PHP program doesn't output the whole alphabet. It outputs some of the letters, along with various other characters like #. The entity decoding is done by HTML. You could use html_entity_decode to get around this (of course it has 3 vowels, so you'd need to deal with that). – Matthew Flaschen – 2012-04-29T03:32:00.990

4

Postscript, 46 45

(\141bcd\145fgh\151jklmn\157pqrst\165vwxyz)=

Benedict

Posted 2012-04-24T09:11:49.357

Reputation: 211

You can shorten that by one character by removing the space. – Joey – 2012-04-26T09:00:34.233

4

Scala,38+17=55

No 'aeio':

'\u0061't\u006f'z'm\u0061p pr\u0069nt

No 'u':

'a'to'z'map print

Output: abcdefghijklmnopqrstuvwxyz

Prince John Wesley

Posted 2012-04-24T09:11:49.357

Reputation: 669

2Your answer only satisfies 'e' and 'u'. You need to add a version that does not use 'a', 'i' and 'o'. – shamp00 – 2012-04-26T09:55:07.347

@shamp00: +1 Now fixed – Prince John Wesley – 2012-04-26T12:18:59.573

1You still need the no 'u' version too. The task is to have as many programs as necessary to cover all 5 vowels. Then you add the lengths together for the total score. – shamp00 – 2012-04-26T13:09:19.783

Regarding what @shamp00 says, just add back in your ('b'-1).toChar to'z'map print and you're good to go! – Gaffi – 2012-04-27T12:23:37.077

@Gaffi: ok. let me add my original version. – Prince John Wesley – 2012-04-28T01:58:24.580

4

Brainfuck, 25 bytes

One byte improvement c/o Sp3000.

+[+<+<+[>]<-<+<+]>[+>+.<]

Try it online!

The initial bit +[+<+<+[>]<-<+<+] initializes the tape to:

[0, 106, 106, 0, 230, 96, 0, 135, 0]
              ^

This is an ideal tape (as 230 is 256-26).


26 bytes

--[->-[<]>+>-]>[+++<<+.>>]

Try it online!

Exactly one byte per letter. The initial bit --[->-[<]>+>-] initializes the tape to:

[0, 0, 0, 0, 0, 96, 0, 178, 0]
                    ^

178 is conveniently 256 - 26·3.

Alternatives

-[-[+>--<<<]>>>]>[->-.++<]
+[+[->++<<]>>+>+]<+[-<+.>]

primo

Posted 2012-04-24T09:11:49.357

Reputation: 30 891

125: +[+<+<+[>]<-<+<+]>[+>+.<] – Sp3000 – 2016-09-19T00:23:49.723

My pruning logic seems off - it was detected as an infinite loop. I may need to re-crunch some results >.< – primo – 2016-09-19T01:30:46.637

3

Tcl, 49 chars

p\165ts \141bcd\145fgh\151jklmn\157pqrst\165vwxyz

Yeah, \ substitution works for commands. (And all other kinds of substitution as well)

Johannes Kuhn

Posted 2012-04-24T09:11:49.357

Reputation: 7 122

demo – sergiol – 2017-05-23T22:30:06.187

The shortest iterative algorithm I can devise is longer, even before applying the no vowels restriction, having 51 bytes: while {[incr n]<27} {puts [format %c [expr $n+96]]} – sergiol – 2017-05-23T22:40:35.893

Shorter without restriction is 45:time {puts [format %c [expr [incr i]+96]]} 26 – sergiol – 2017-07-21T18:39:21.190

3

Javascript, 96

No "aeiu"

throw('\x61bcd\x65fgh\x69jklmnopqrst\x75vwxyz')

No "o"

eval("thr\x6fw('abcdefghijklmn\x6fpqrstuvwxyz')")

Run it from console

Chrome

enter image description here

Firefox

enter image description here

C5H8NNaO4

Posted 2012-04-24T09:11:49.357

Reputation: 1 340

How do I run this? I can't get it to work with JSFiddle, nor in onload(). – shamp00 – 2013-08-15T15:52:41.330

@shamp00 You can run it from you browsers console, i edited the answer and added 2 screenshots =) – C5H8NNaO4 – 2013-08-16T06:06:00.287

3

JavaScript (Node.js), 32113 bytes

[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]](([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(+(+!+[]+[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+[!+[]+!+[]]+[+[]])+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+(![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]()[+!+[]+[!+[]+!+[]]]+(![]+[])[+!+[]]+(+(+!+[]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+[+[]])+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+([][[]]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+(+(+!+[]+[+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+[+!+[]])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(+(!+[]+!+[]+!+[]+!+[]+[+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+[+!+[]])[+!+[]]+(+(!+[]+!+[]+[+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+[+!+[]])+(![]+[])[!+[]+!+[]]+((+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]+[])[+!+[]+[+!+[]]]+([][[]]+[])[+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[!+[]+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(+(!+[]+!+[]+!+[]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[!+[]+!+[]])+(+(!+[]+!+[]+!+[]+[!+[]+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[!+[]+!+[]+!+[]])+(+(+!+[]+[+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[!+[]+!+[]+!+[]+!+[]])[+!+[]]+(+[![]]+[+(+!+[]+(!+[]+[])[!+[]+!+[]+!+[]]+[+!+[]]+[+[]]+[+[]]+[+[]])])[+!+[]+[+[]]]+(+(!+[]+!+[]+!+[]+[!+[]+!+[]+!+[]+!+[]+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]])+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]()[+!+[]+[!+[]+!+[]]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+([][[]]+[])[+[]]+([][[]]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]])()([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]])()(([]+[])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+[]])[+[]]+[!+[]+!+[]+!+[]]+(+(+!+[]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+[+[]])))()

Try it online!

Alex Neises

Posted 2012-04-24T09:11:49.357

Reputation: 61

3

Perl 5, 31 bytes

30 bytes code + 1 for -p.

Uses no vowels.

$"="";$_=<@{["\141".."\172"]}>

Try it online!

Dom Hastings

Posted 2012-04-24T09:11:49.357

Reputation: 16 415

3

Java (OpenJDK 8), 137 bytes

$->""+($=97)+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$+ ++$

Try it online!

Similar to another answer of mine in Java. (Ab-)uses the lack of a "no input" rule.

Olivier Grégoire

Posted 2012-04-24T09:11:49.357

Reputation: 10 647

Brilliant! Upvoted both your answers. Very original, especially for a Java answer. – Kevin Cruijssen – 2017-09-13T14:00:35.927

@KevinCruijssen Thank you! I've had a hard time making the first one (the other one), but this one was very, very similar. – Olivier Grégoire – 2017-09-13T14:12:01.680

3

Japt, 2 bytes

;C

Test it here

Shaggy

Posted 2012-04-24T09:11:49.357

Reputation: 24 623

3

We can now use languages made after the question was posted, right?

Charcoal, 1 byte

β

Try it online!

In Charcoal, β is a predefined variable containing the lowercase alphabet, so no vowels there.

Charlie

Posted 2012-04-24T09:11:49.357

Reputation: 11 448

this works now too :P (verbose mode) – ASCII-only – 2017-10-04T11:33:33.583

3

Matlab: 11 characters

['' 97:122]
% Or equivalently
['' 97]:'z'

If it is allowed to output more than just the alphabet, this can be reduced to just 7:

'`':'z'

Dennis Jaheruddin

Posted 2012-04-24T09:11:49.357

Reputation: 1 848

Very nice! Contatenating '' to convert to string – Luis Mendo – 2015-07-26T03:51:23.580

3

Fission, 21 bytes

~MR' @'`~~~~~~
S[+!
*

Control flow starts at R with a right-going atom. First we set the mass to 32 with '<space>. @ swaps mass and energy. '` sets the mass to 96, so our atom is now (96,32). We decrement the energy seven times with ~ to get (96,25) (note that the code is toroidal). M redirects the atom downwards and [ to the right. We're now on the second line. + increments the mass, the ! prints the corresponding character. By doing this repeatedly we print the alphabet starting at a. As long as the energy is still positive, the S will let the atom pass straight through, such that we keep looping through the second line. However, while doing so it will also decrement the energy. Once the energy is 0 (and we've printed z), S will instead deflect the atom downwards, where it hits *, which terminates the program.

Martin Ender

Posted 2012-04-24T09:11:49.357

Reputation: 184 808

3

Cardinal, 22 20 chars

%n->,#~n'!@
 b ^+< y

output:

Executing program..

abcdefghijklmnopqrstuvwxyz

Execution complete.
>

M L

Posted 2012-04-24T09:11:49.357

Reputation: 2 865

3

C, 136 115 104 characteres

A C program must have a main function. So my code is valid, except for these a and i. Prints a newline at the end. Can save some characters by removing it.

No e,i,o, 50 chars:

f(x){putchar(x?123-x:10),x--&&f(x);}
main(){f(0);}

No a,u, 54 chars:

f(x){printf("%c",x?123-x:10),x--&&f(x);}
main(){f(26);}

ugoren

Posted 2012-04-24T09:11:49.357

Reputation: 16 527

1"A C program must have a main function" - This SO question taught me this isn't true, see my answer :) – schnaader – 2012-04-24T11:11:36.087

@schnaader, the ANSI C standard says "The function called at program startup is named main". Your code does work, but I'm not sure how portable it is (not that the question requires portability). Anyway, I'll stick to main. – ugoren – 2012-04-24T12:21:49.747

3

Python shell, 94 78 chars

It prints the alphabet when running in an interactive shell (which prints the expression it evaluates).
Python isn't the tool for this task. Printing requires print, loop constructs require in or while, so i is quite a problem.

Both these expressions evaluate to the a-z string. The first doesn't use i,o, the second doesn't use a,e,u

"%c"*26%tuple(range(97,123))
''.join([chr(ord(c)-1)+c for c in'bdfhjlnprtvxz'])

Brute-force approach, 110 chars:

"%c"*26%(97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122)

ugoren

Posted 2012-04-24T09:11:49.357

Reputation: 16 527

eval's got no i. – boothby – 2012-04-25T01:54:40.180

4@boothby Yes it does: evil. There. – Konrad Rudolph – 2012-04-25T09:03:34.577

Languages are defined by their implementation. A Python shell is not a normal implementation of Python, so it's a "different language". http://meta.codegolf.stackexchange.com/a/7844/34718

– mbomb007 – 2016-09-16T16:15:15.307

3

Javascript (139 chars), logging to console:

Uses no 'aeou' (95 chars):

q=''+{};w=q[1];this['c'+w+'ns'+w+'l'+q[4]]['l'+w+'g']('\x61bcd\x65fghijklmn\x6fpqrst\x75vwxyz')

Uses no 'i' (44 chars):

console.log('abcdefgh\x69jklmnopqrstuvwxyz')

Paul

Posted 2012-04-24T09:11:49.357

Reputation: 256

I count here 95 and 79 characters, respectively. – Gaffi – 2012-04-24T21:12:33.897

1@Gaffi Thanks haha. I wrapped it in double quotes and used .length to get the length. Of course the \x75 and such were counting as one character haha, oops. – Paul – 2012-04-24T21:52:02.373

It happens. :-) – Gaffi – 2012-04-24T22:21:03.547

3

PHP, 47

All credits to mellamokb

<?="\x61bcd\x65fgh\x69jklmn\x6fpqrst\x75vwxyz";

l0n3sh4rk

Posted 2012-04-24T09:11:49.357

Reputation: 1 387

1

You can shorten by using string concatenation instead of exiting tags: <?=chr(97).'bcd'.chr(101).... Also, you can make even shorter by using the hex escape sequences <?="\x61bcd\x65...". Here's some examples of alternative shorter solutions, the last is the shortest at 47 characters (note also that you can safely leave the final closing tag off to save 2 chars): http://ideone.com/7aAQh

– mellamokb – 2012-04-25T17:03:55.847

3

Factor, 264 characters

No ae, 60 characters:

USING: io ;
"\u000061bcd\u000065fghijklmnopqrstuvwxyz" print

No io, 102 characters:

USE: eval
"USE: \u000069\u00006f
\"abcdefgh\u000069jklmn\u00006fpqrstuvwxyz\" pr\u000069nt" eval( -- )

No u, 102 characters:

FROM: math.ranges => [a,b] ;
FROM: io => print ;
FROM: strings => >string ;
97 122 [a,b] >string print

Every language, in the previous answers, uses less than 200 characters. Factor is the only language to use more than 200 characters and to use 3 programs. Factor is difficult, because outputting without io is a challenge, and programming without u is almost impossible.

The first 2 programs are variations of

USE: io
"abcdefghijklmnopqrstuvwxyz" print

Alternatives to io are scarce; formatting still needs i and o, and prettyprint needs i. I saw string evaluation in a Python answer, and took the hint. With eval, I can escape away i and o, but I need a and e in eval, and u in \uxxxxxx escapes.

The hardest challenge is to remove u. This means no USE:, USING:, \uxxxxxx, nor sequences. My best program without u needs all of aeio. I would like a Factor program without aeu, but my only way to remove ae is to use u.

kernigh

Posted 2012-04-24T09:11:49.357

Reputation: 2 615

Sorry, wasn't thinking straight! RENAME: each-integer math => # 26 [ 65 + write1 ] # – fede s. – 2017-12-01T17:34:32.613

3

Perl 5.10+, 8 + 22 = 30 chars

No e, i, o, u:

say a..z

No a, i, o, u:

s//"s\x61y \x61..z"/ee

Both of these need the -M5.010 switch (which is considered free) to enable the say feature. For older perls, it can be replaced with print for an extra four chars (and loss of trailing newline in output):

print a..z
s//"pr\x69nt \x61..z"/ee

Ilmari Karonen

Posted 2012-04-24T09:11:49.357

Reputation: 19 513

3

Bash 34 characters

This is my 34 characters long bash snippet, close to marinus snippet but shorter :

/*/?ch? $'\145ch\157 {\x61..z}'|sh

Gilles Quenot

Posted 2012-04-24T09:11:49.357

Reputation: 131

3

Perl (25 24 ) (18?) (no wowels, little cheating)

script.pl contains:

$"="";s//@{["\x61"..z]}/

it has to be executed this way:

echo | perl -p script.pl

or

echo | perl -pe '$"="";s//@{["\x61"..z]}/'

If you don't mind spaces between letters in the alphabet, it can be shortened to 18 characters:

s//@{["\x61"..z]}/

($" variable defines separator to be used for printing arrays, space is default)

UPDATES:

  • s/^/ -> s//

mykhal

Posted 2012-04-24T09:11:49.357

Reputation: 641

You could whipe (useless) pipes! perl -pe 's//@{["\x61"..z]}/' <<<'' – F. Hauri – 2014-07-08T22:46:15.747

3

Mathematica, 61 bytes

Yeah, total thread necro. Just wanted to see if I could do it at all! (Mathematica command names tend to be pretty verbose and thus vowel-heavy....)

Each of the two commands

Alphabet[]

and

Union@@(StringSplit[#,""]&/@WordList[][[443;;692]])

outputs a list of the 26 lowercase letters in order. StringSplit[#,""]& splits its input string at every occurrence of "", that is, between every character (hence accomplishes the same as the command Characters@#, but without that nasty "a" or "e"). This is applied to a set of 250 words, namely the 443rd to 692th words of the built-in word list. (The 443rd word, "adequateness", is needed for its "q", while the 692nd word, "aftershock", is needed for its "k". None of the first 427 words contains an "x", and the 428th word, "add-on", has an unfortunate hyphen; so we had to start over to find a contiguous block that works.) Finally, Union removes repetitions and sorts the list to boot.

Greg Martin

Posted 2012-04-24T09:11:49.357

Reputation: 13 940

2

Smalltalk (Squeak 4.x) 78 chars

Since we program by sending messages to objects, and that most messages are made of english words, this is a real challenge in Smalltalk.

However it is possible to exploit this curiosity: we can concatenate a String and a ByteArray with binary selector ,

'',#[97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122]

We can also exploit arithmetic on ByteArray to shorten to 78 chars

'',(#[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25]+97)

Now can we write a loop without using to:do: whileTrue: repeat?
Yes we can, with recursion, but we need to stop the recursion with a test, and can we without using one of ifTrue: ifFalse: or: and:?
Yes we can just implement the message of our choice in True/False.
Let's see how far we can go...

We can't use the receiver of a message, self has a vowel: so we need a message with two parameters, say x:z:, sent to any object (9 chars)

0x:''z:97

we implement x:z: message in Object (38 chars - 47 total)

x:x z:z z<123?[^0x:x,(#[0]+z)z:z+1].^x

we implement ? in class False (2 chars - 49 total):

?x

we implement ? in class True: (6 chars - 55 total)

?x^x x

But now, how to evauate the block without sending the message value (3 vowels)...
The best I could was to implement x in class BlockClosure: (16 chars - 71 total)

x<primitive:201>

But that still consumes 2 vowels... And we're not far from original 78...

I still got a nice obfuscation - golfing in Smalltalk is really contre-nature ;)

aka.nice

Posted 2012-04-24T09:11:49.357

Reputation: 411

2

Sage CLI, 42

No e,i,o,u:

map(chr,[97..122])

No a,i,o:

'%c'*26%tuple([97..122])

Fun fact: str, chr, and cmp are the only Python builtins that don't contain vowels!

boothby

Posted 2012-04-24T09:11:49.357

Reputation: 9 038

2

05AB1E, 4 bytes (non-competing?)

žpRl

Try it online!

Doesn't use any vowel. If it were to use vowels, It'd be just this instead.

A

Erik the Outgolfer

Posted 2012-04-24T09:11:49.357

Reputation: 38 134

2

JS (ES2018), 54 bytes

\141l\145rt`\141bcd\145fgh\151jklmn\157pqrst\165vwxyz`

Alerts "abcdefghijklmnopqrstuvwxyz".

So, you can update the JS score to 54 bytes.

user75200

Posted 2012-04-24T09:11:49.357

Reputation: 141

2

Pyth - 1 Byte

G

Implicitly print alphabet

Tornado547

Posted 2012-04-24T09:11:49.357

Reputation: 389

Implicitly Print Alphabet. IPA. – None – 2019-12-14T13:44:27.303

2

Keg, 8 bytes (SBCS)

b;(|:1+

TIO

user85052

Posted 2012-04-24T09:11:49.357

Reputation:

2

Keg, 7 bytes (SBCS)

\`zɧ^_^

This generates the range from backtick to z and removes the backtick character.

user85052

Posted 2012-04-24T09:11:49.357

Reputation:

2

W, 8 bytes

97;122.C

Pretty simple:

97;122.  % Generate a range from 97 ('a') to 122 ('z')
       C % Convert this to its character form

user85052

Posted 2012-04-24T09:11:49.357

Reputation:

2

Keg, 4 bytes

b;zɧ

Generates a range from a to z and prints it.

Try it online!

Lyxal

Posted 2012-04-24T09:11:49.357

Reputation: 5 253

2

W d, 5 4 bytes

(ÇL·

Explanation

After decompression:

'a    % Character a
  'z. % Up to character z

user85052

Posted 2012-04-24T09:11:49.357

Reputation:

2

Brainfuck, 31 bytes

-[----->++>+<<]>----->+[--<.+>]

How it works

-              wrap to 255
[----->++>+<<] loop 51 times  r1=102 r2=51
>----->+       r1=97 r2=52
[--<.+>]       loop 26 times and print letters a-z

FIQ

Posted 2012-04-24T09:11:49.357

Reputation: 519

I was wondering when a Brainfuck solution would rear its head... +1 – WallyWest – 2015-06-02T06:02:10.653

2

Perl 5.10+, 23 chars

(This is an improvement on previous such entry but I don't have the reputaion to comment there):

no a, e, o, u:

print "\x61"..z

no e, i, o, u:

say a..z

skibrianski

Posted 2012-04-24T09:11:49.357

Reputation: 1 197

2

Marbelous, 94 Bytes(I think)

.. @1 61 ..
.. .. // ..
.. Dn \\ ..
++ =0 \/ ..
@1 !! .. ..

:Dn
}0 .. 85 }0 }0
\\ {0 // {> {<

One program, no vowels, I think this qualifies as text-based, but I could be wrong. Marbelous interpreter

user31611

Posted 2012-04-24T09:11:49.357

Reputation:

I think this is 94 bytes (unless there was whitespace originally that wasn't put into your answer). – monopole – 2014-09-30T17:18:17.527

2

Piet, 104 (8x13) codels

Not eligible for this challenge, but I did it nonetheless.

enter image description here

I guess I could golf it a bit more, but this should be a good start.

output:

D:\codegolf\npiet-1.3a-win32>npiet "alphabet codegolf.png"
abcdefghijklmnopqrstuvwxyz

M L

Posted 2012-04-24T09:11:49.357

Reputation: 2 865

Not eligible to win as the question says “any language (which has a text-based syntax*)”, but nice one anyway. – manatwork – 2015-08-18T13:09:39.853

I know. I did it just for the fun of it and wasn’t going for winning the challenge. :) – M L – 2015-08-18T13:17:16.120

2

D no 'u' (64 chars)

import std.stdio;void main(){for(char c=96;c++<'z';){write(c);}}

D only i (92 chars)

mixin("imp\157rt std.stdi\157;v\157id m\141in(){f\157r(ch\141r c;c++<'z';){writ\145(c);}}");

abusing the mixin and octal escape in string literals

ratchet freak

Posted 2012-04-24T09:11:49.357

Reputation: 1 334

What about the complementary program(s) that don't use a,e,i,o? – mellamokb – 2012-04-25T12:52:17.440

@mellamokb check now :) – ratchet freak – 2012-04-25T13:24:41.303

5You still need a version with no i. – shamp00 – 2012-04-27T15:45:49.820

2

BASH: 16 + 32 = 48 characters

Here's some inspiration to all you shell-lovers:

Using a, i (no e, o, u): 16 characters

printf %q {a..z}

Using e, o (no a, i, u): 32 characters

$0<<<$'echo {\x61..z}|tr -d " "'

works well, providing you've set your computer up with an automatic

#!bin/bash

I'm sure someone out there knows how to un-vowel this!

Max Chuquimia

Posted 2012-04-24T09:11:49.357

Reputation: 561

2

Burlesque, 12 characters

'`'zr@[-\[sh

(see here in action.)

With a:

'a'zr@\[sh

mroman

Posted 2012-04-24T09:11:49.357

Reputation: 1 382

2

C# – 278/149

Variant 1 – Full standalone programs

A and I are unavoidable here because of class and static.

Without U: 81 chars:

class C{static void Main(){for(int x=65;x<91;++x)System.Console.Write((char)x);}}

Without E: 96 chars:

class C{static void Main(){for(int x=65;x<91;++x)Syst\u0065m.Consol\u0065.Writ\u0065((char)x);}}

Without O: 101 chars:

class C{static int Main(){System.C\u006fns\u006fle.Write("abcdefghijklmn\x6fpqrstuvwxyz");return 0;}}

Total (with A, I missing): 278

Variant 2 – Pure code

Without A, E, I, O: 97 chars

Syst\u0065m.C\u006fns\u006fl\u0065.Wr\u0069t\u0065("\u0061bcd\u0065fgh\x69jklmn\x6fpqrstuvwxyz");

Without U: 52 chars

for(int x=65;x<91;++x)System.Console.Write((char)x);

total: 149

Mormegil

Posted 2012-04-24T09:11:49.357

Reputation: 1 148

1class C{static void Main(){for(var x='@';x++<'Z';)System.Console.Write(x);}} shorter one for first program. – tia – 2013-04-25T12:50:37.440

2

Befunge, 26

>"`">1+:"z"`v
:,  ^      @_

Minimizing whitespace is part of the challenge of Befunge, so I included it in the character count. It might be possible to take out some of that whitespace, but the instructions themselves seem minimal.

Joe K

Posted 2012-04-24T09:11:49.357

Reputation: 1 065

1

You can save quite a few characters. The first > is unneeded and you can arrange on lines. Also, Befunge 98 has ', the fetch character. I suggest doing this: 1st line: 'backtickv, second line: :,>1+:'zbacktick!j@ for a total count of 16 chars.

– Justin – 2013-12-12T07:05:40.917

1

Perl 6, 49 bytes

("a".."z").map(*.print) # 23 bytes, no E, O, or U
$*OUT.put((97..122)>>.chr) # 26 bytes, no A, E, or I

bb94

Posted 2012-04-24T09:11:49.357

Reputation: 1 831

1

Lua, 56

_G["pr\105nt"]"\97bcd\101fgh\105jklmn\111pqrst\117vwxyz"

mniip

Posted 2012-04-24T09:11:49.357

Reputation: 9 396

1

Befunge-98, 19

'`1+>:#;,1+:'{-#;_@

Explanation:

'`1+                   Initialize stack with ascii value for 'a'
     :  ,              Duplicate top of stack, print it
         1+:'{-        Increment top of stack, push zero if ascii value after 'z'
    > #;       #;_@    Loop until top of stack is zero, then end

Brian Gradin

Posted 2012-04-24T09:11:49.357

Reputation: 569

1

V, 5 bytes, non-competing

¬`{Ó×

Try it online!

Explanation

¬`{                         " inserts characters in range `to {

This outputs

`abcdefghijklmnopqrstuvwxyz{

To remove the extraneous output, we can use a replacement

Ó×                          " remove every non-alphanumeric character in this line

                            " synonym of vim's :s/\W//g

Alternatives

¬`z|x                       " prints every character from ` to z and
                            " removes the first character

user41805

Posted 2012-04-24T09:11:49.357

Reputation: 16 320

1

Bean (non-competing), 38 bytes

Hexdump:

00000000 37 cd a0 5e 80 25 81 00 cc a0 5e 84 25 81 01 80  7Í ^.%..Ì ^.%...
00000010 26 4d a0 5d 81 53 d0 80 a0 0e 20 80 24 4b 80 20  &M ].SÐ. . .$K. 
00000020 5e b9 37 b1 b2 33                                ^¹7±²3
00000026

The equivalent JavaScript is:

for(b=97;b<123;)a+=String.fromCharCode(b++);

Alternatively, another 38 byte solution is:

00000000 bc 81 3d a0 5e 25 81 00 35 cc a0 5e 84 25 81 01  ¼.= ^%..5Ì ^.%..
00000010 26 4d a0 5d 81 53 d0 80 a0 0e 20 80 24 4b 80 20  &M ].SÐ. . .$K. 
00000020 5e b9 37 b1 b2 33                                ^¹7±²3
00000026

which is equivalent to the JavaScript:

var b=97;while(b<123)a+=String.fromCharCode(b++);

This takes advantage of the fact that a is defined as "" when there is no input, and that the last executed a+=... is implicitly printed, and contains the full string of the alphabet.

Patrick Roberts

Posted 2012-04-24T09:11:49.357

Reputation: 2 475

1

Befunge, 16 bytes

1+:"`"+,:55*`#@_

Try it online!

Explanation

1+                  Increment the loop index which start with an implicit zero.
  :"`"+             Make a duplicate and add 96 to convert that into a lowercase letter.
       ,            Write the letter to stdout.
        :55*`       Check if the index is greater than 25 (i.e. it's the last letter).
             #@_    If so, branch left and exit, otherwise branch right and loop.   

James Holderness

Posted 2012-04-24T09:11:49.357

Reputation: 8 298

1

Erlang escript 75

It's pretty hard to do any golfing in Erlang but anyway:

$ cat alphabet 

'm\x61\x69n'(_)->
'\x69\x6f':'f\x6frm\x61t'('l\x69sts':'s\x65q'(97,122)).

Note empty line at beginning of escript and also line break in main function. They are both mandatory. Run it using

$ escript alphabet

Hynek -Pichi- Vychodil

Posted 2012-04-24T09:11:49.357

Reputation: 350

1

MATLAB, 17 characters

x='`':'z';x(2:27)

NOTE: Would be a winner with 7 characters if the first letter wasn't a vowel :-)

'a':'z'

Mohsen Nosratinia

Posted 2012-04-24T09:11:49.357

Reputation: 171

1

DUP, 16 bytes

97[$123<][$,1+]#

Explanation:

97                  {push ASCII for “a” on stack}
  [     ][    ]#    {while [this is not 0][do this]}
   $                {duplicate top stack element}
    123             {push 123 on stack (ASCII value of “z”+1}
       <            {2nd element < top element? if true then push -1, if false then push 0}
          $         {duplicate top stack element}
           ,        {print character of top stack element to STDOUT}
            1+      {add 1 to top stack element}

Online DUP interpreter is available here.

M L

Posted 2012-04-24T09:11:49.357

Reputation: 2 865

1

officialaimm

Posted 2012-04-24T09:11:49.357

Reputation: 2 739

1Why would this be non-competing? – LyricLy – 2017-09-11T05:07:08.837

@LyricLy Because The feature(in fact the whole language) was made later to the problem? :D I am unsure though! – officialaimm – 2017-09-11T06:10:16.390

1

We have consensus that newer languages are no longer non-competing.

– LyricLy – 2017-09-11T06:48:55.480

1

Kotlin, 112 111 bytes

No E O U (29 bytes)

{('A'..'Z').map{println(it)}}

No A (39 bytes)

{(('B'-1)..'Z').filter{print(it);2>=1}}

No I (44 bytes)

{('A'..'Z').map{z->System.out.format(""+z)}}

jrtapsell

Posted 2012-04-24T09:11:49.357

Reputation: 915

1

VBA, 70 Bytes

Unfortunately having one brute force solution was better than having multiple looping solutions :(

Anonymous VBE immediate window function that takes no input and outputs the capitalized alphabet to the VBE immediate window

?Chr(97)"bcd"Chr(101)"fgh"Chr(105)"jklmn"Chr(111)"pqrst"Chr(117)"vwxyz

Taylor Scott

Posted 2012-04-24T09:11:49.357

Reputation: 6 709

1

Braingolf, 12 bytes

62g[59gl+]&@

Try it online!

As I have just learned this language, its probably golfable.

FantaC

Posted 2012-04-24T09:11:49.357

Reputation: 1 425

1

Sinclair ZX80 BASIC, ~26 [tonkenized] BASIC bytes

 1 FOR O=38 TO 63
 2 PRINT CHR$(O);
 3 NEXT O

No A or U in this answer. Sinclair ZX80 and ZX81 character codes begin at 38, which is non-ASCII compliant.

Sinclair ZX80 BASIC (only using I), 237 ~73 [tonkenized] BASIC bytes

 1 PRINT CHR$(38);"BCD";CHR$(42);"FGHIJKLMN";CHR$(52);"PQRST";CHR$(58);"VWXYZ"

Shaun Bebbers

Posted 2012-04-24T09:11:49.357

Reputation: 1 814

Nice. You need to add the bytes from programs with no I and no O. – shamp00 – 2017-12-20T23:02:31.800

For other solutions, I'll have to use assembly, so I'm thinking about that one, I'll update shortly. – Shaun Bebbers – 2017-12-21T10:33:53.893

1

Pyt, 1 byte

ɫ

Implicitly prints "abcdefghijklmnopqrstuvwxyz"

Try it online!

mudkip201

Posted 2012-04-24T09:11:49.357

Reputation: 833

1

Pushy, 4 bytes

Only requires a single program:

26XQ

Try it online!

26X   \ Push range(0, 26), E(X)clusive.
   Q  \ Convert to relative uppercase alphabet letters and print.

FlipTack

Posted 2012-04-24T09:11:49.357

Reputation: 13 242

1

Jelly, 7 bytes

”Ø;“b»V

Try it online!

Uses Jelly string compression to get A, prepends Ø to get alphabet from alphabet constant (ØA), and evals.

ellie

Posted 2012-04-24T09:11:49.357

Reputation: 131

1

F# (96) characters, using fsharpi

// Without u (48 chars)
sprintf "abcdefghijklmnopqrst%cvwxyz" (char 117)

// Without a, e, i, o (48 chars)
"\u0061bcd\u0065fgh\u0069jklmn\u006fpqrstuvwxyz"

This was tough since all the functions to manipulate sequences contain vowels. Also the functions for outputting to stdout are printf and printfn, therefore this only produces a string instead of writing it out.

These lines will need to be ran through the F# interpreter and ended with ;; to execute.

Headmastersquall

Posted 2012-04-24T09:11:49.357

Reputation: 41

1

Powershell, 29 + 39 = 68 chars

If newlines are acceptable in the output (as has been asked in the question's comments), this can be further reduced to 51 chars.

Uses no 'eiou' (29 chars):

$s="";$s+=97..122|%{[char]$_}

Uses no 'au' (39 chars):

-join(97..122|%{new-object string($_)})

Both work off of the same concept of translating integers into their ASCII values, the first by an explicit cast to char and the second by using the string constructor to perform the cast implicitly.

goric

Posted 2012-04-24T09:11:49.357

Reputation: 271

The "no eiou" solution doesn't output anything, and the variable has a bunch of spaces in it which weren't in the question spec. (Though, having not yet gotten an answer for newlines, I'm not sure we can assume any whitespace is out.) You'd need to add ;$s (3 characters) to make it output. – Iszi – 2013-12-12T21:52:44.987

1That said, you could stick with the same principle and even shorten it by 3. 97..122|%{$s+=[char]$_};$s This also eliminates the spaces. – Iszi – 2013-12-12T21:55:09.203

Another variant of the 39-character script. Same length. 97..122|%{$s+=new-object string($_)};$s – Iszi – 2013-12-12T22:01:02.983

another modification to the first one which eliminate spaces $ofs='';"$(97..122|%{[char]$_})" however it adds an 'o' and is now 32 characters. – Tim Lewis – 2014-03-04T15:27:59.383

1

Python shell, 48 + enter

str('\x61bcd\x65fgh\x69jklmn\x6fpqrst\x75vwxyz')

Output:

'abcdefghijklmnppqrstuvwxyz'

If this is valid, I think my answer is too?

Roberto

Posted 2012-04-24T09:11:49.357

Reputation: 761

1

Forth, 46

.\" \x61bcd\x65fgh\x69jklmn\x6fpqrst\x75vwxyz"

Darren Stone

Posted 2012-04-24T09:11:49.357

Reputation: 5 072

1

C (77)

Here's my crack at it. Dunno if I broke some kind of anti-compiler-flag rule, but here goes:

int main(){int i=97;while(++i<'{')if(i^'e'&&i^'i'&&i^'o'&&i^'u')putchar(i);

To compile and run:

$ gcc az.c -include "stdio.h" -o az
$ ./az
bcdfghjklmnpqrstvwxyz

In case anyone's interested, here's a quick explanation of some of the 'micro-optimizations':

97 is the decimal equivalent of 0x61, or 'a'. Used because it saves one char over 'a'.

'{' is the char immediately after 'z', it saves me an = (i<='z' vs i<'{').

A^B returns 0 when A and B are equal, and anything but when they aren't, which is as good as != for my purposes. It saves me four chars.

Loop starts out immediately ++'ing i to skip 'a' from the get-go, and save me an extra two chars. It saves me 9 chars altogether (exclude i^'a'&& and the i and ; I would've had to put had I incremented i within the block)

And finally, I used a compiler flag to include stdio.h instead of putting it in the file, saving me 18 chars. I don't know if this is "cheating" or anything, so feel free to point it out if it is.

P.S. This is my first code golf, so if I'm missing a rule, spoken or not, don't hesitate to correct me.

Braden Best

Posted 2012-04-24T09:11:49.357

Reputation: 161

This program uses the letters a and i (in main) and e, o, and u in if(i^'e'&&i^'i'&&i^'o'&&i^'u'). I suspect you've misunderstood the question. – Gareth – 2014-01-30T09:19:37.600

@Gareth I probably did. I interpreted the goal as to "make a program that prints every letter in the alphabet (sans a,e,i,o,u) in the shortest amount of code you can manage." – Braden Best – 2014-01-30T17:58:19.873

@Gareth Oh. Yes, I completely misunderstood the question. I thought the output was supposed to exclude vowels, but the source was fine including them. It was the other way around. – Braden Best – 2014-01-30T18:09:37.977

1

Gol><>, 9 bytes

`z9sF:M|H

Try it online!

Gegell

Posted 2012-04-24T09:11:49.357

Reputation: 81

1

Ahead, 12 bytes

"bz"69M:1-W@

"bz"          push b (98) then z (122)
    69M       push 69 (charcode for E) then evaluate (E = expand range)
       :1-    dup stack top then sub 1 to get a
          W@  print all chars then exit

Try it online!

snail_

Posted 2012-04-24T09:11:49.357

Reputation: 1 982

1

Bash, 31 chars

I think this is the shortest bash version so far:

z=({Z..z});tr -d \ <<<${z[@]:7}

This one outputs exactly abcdefghijklmnopqrstuvwxyz with no whitespace between any letters.

Digital Trauma

Posted 2012-04-24T09:11:49.357

Reputation: 64 644

1

Clojure: 81 over 2 statements

No i, o, or u: 35 chars

(apply str(map char(range 97 123)))

No a or e: 46 chars

(str \u0061"bcd"\u0065"fghijklmnopqrstuvwxyz")

REPL (RPL?) session:

cd-glf-s-hrd> (apply str(map char(range 97 123)))
"abcdefghijklmnopqrstuvwxyz"
cd-glf-s-hrd> (str \u0061"bcd"\u0065"fghijklmnopqrstuvwxyz")
"abcdefghijklmnopqrstuvwxyz"

YosemiteMark

Posted 2012-04-24T09:11:49.357

Reputation: 213

1

Cjam 6

'{,97>
  • creates the character "{"
  • lists all characters less than "{" (this ends if you try to print it because character 0 stops things from outputting)
  • removes any with a value less than or equal to 97

kaine

Posted 2012-04-24T09:11:49.357

Reputation: 536

1CJam was created after this challenge was posted. – lirtosiast – 2015-08-18T15:31:05.140

1@ThomasKwa I realised that after having answered it. This disqualifies it from winning, but I think it is interesting enough it shouldn't be removed. – kaine – 2015-08-18T15:33:22.600

1

Haskell (interpreted), 17

[['`'..]!!1..'z']

Back-quote comes before 'a', so a is the second element of the sequence starting with back-quote. This is then just the sequence from a to z.

This is technically a naked Haskell expression. (If you save it to ".ghci", though, running ghci will print the alphabet.)

archaephyrryx

Posted 2012-04-24T09:11:49.357

Reputation: 1 035

1

T-SQL, 120 (65+55)

This answer assumes results of both PRINT and SELECT are allowed as output.

65 characters without e, o, u:

PRINT'abcd'+CHAR(101)+'fghijklmn'+RTRIM(0x6F707172737475)+'vwxyz'

55 characters without a, i:

SELECT LEFT(0x616263646566676869,9)+'jklmnopqrstuvwxyz'

Muqo

Posted 2012-04-24T09:11:49.357

Reputation: 499

1

><>, 35 bytes

!v99*:f1++$ff++31p!
 >: 1+:bb*1+)?;

><> outputs with the command 'o', hopefully it also provides introspection capability so we'll just edit the code at runtime to add the 'o'. This is done with the command 'p' at the end of the first line.

Aaron

Posted 2012-04-24T09:11:49.357

Reputation: 3 689

1

C 108

Technically cheating, but

x[]={1684234849,1751606885,1818978921,1886350957,1953722993,2021095029,31353};y(){z("%s",x);}

Compile with -Dy=main -Dz=printf (I counted those towards the char count). Of course if you're allowing -D, go full hog and say -Dp=main(c){for(;c<27;)putchar(96+c++);} 39 characters there. (Or one, depending on how you count).

walpen

Posted 2012-04-24T09:11:49.357

Reputation: 3 237

With the same method, you could shorten a lot with "abcd%cfg.... – ugoren – 2012-06-03T19:55:44.203

Yes, but the the array was more intimidating. That's half comprehensible. – walpen – 2012-06-03T21:32:42.330

1

Simplex v.0.7, 3 bytes

Noncompeting, as Simplex postdates question

^lg
^l  ~~ sets current byte to the alphabet [a-z]
  g ~~ output as string

Conor O'Brien

Posted 2012-04-24T09:11:49.357

Reputation: 36 228

1

Groovy, 15 + 10 = 25 bytes

{'\u0061'..'z'}

Defines an anonymous function that returns the alphabet. Does not use a, e, i or o.

{'a'..'z'}

Defines an anonymous function that returns the alphabet. Does not use e, i, o or u.

a spaghetto

Posted 2012-04-24T09:11:49.357

Reputation: 10 647

1

Jelly, 7 chars

”Ø;97ỌV

Try it online!

Seems like this should (not (non-competing)) be accepted instead of GolfScript.

Note:

Ø and are not O, so this is valid. Here is how I built it:

My initial program (2 bytes) was:

Øa

But, since it contained an a, I had to change it.

This could have been a valid 6-char program if uppercase output was allowed:

65r90Ọ

Erik the Outgolfer

Posted 2012-04-24T09:11:49.357

Reputation: 38 134

The language is way newer than the challenge, so no, it should not be accepted instead of Golfscript. See this meta

– Sanchises – 2016-09-16T14:31:18.780

@sanchises Oh, if it is newer, then OK. I thought it was appropriate, since I neither knew when the first commit was made nor when the required commit for this to work was made. – Erik the Outgolfer – 2016-09-16T14:40:14.677

I guess the purpose of that rule is also to prevent flooding of old challenges with new languages - golfing languages are now much more commonplace. – Sanchises – 2016-09-16T15:38:18.310

@sanchises I don't think it's there for that reason; it's there to prevent cheating by creating languages which just do the task on encountering the empty program. – Erik the Outgolfer – 2016-09-16T21:04:19.057

Note: "I guess (...) also (...)". I know what the main reason is for the rule, but it's strictness has some side effects that I'm sure were considered, and not seen as a deal-breaker for making the rule so strict, which generally means the side-effects were considered at least somewhat beneficent. But that's just my interpretation of ppcg politics. ;) – Sanchises – 2016-09-16T21:17:31.843

1

Python 2, 91 bytes

Vowels are escaped with octal where necessary.

No ae

print"\141bcd\145fghijklmnopqrstuvwxyz"

No iou

exec"pr\151nt''.j\157\151n(map(chr,range(97,123)))"

mbomb007

Posted 2012-04-24T09:11:49.357

Reputation: 21 944

1

Java 8, 517 262 characters

-255 bytes thanks to @OlivierGrégoire.

No aeio (165):

\u0069nt\u0065rf\u0061c\u0065 M{st\u0061t\u0069c v\u006F\u0069d m\u0061\u0069n(Str\u0069ng[]b){f\u006Fr(ch\u0061r c=97;c<123;)Syst\u0065m.\u006Fut.pr\u0069nt(c++);}}

Try it online.

No u (97):

interface A{static void main(String[]a){for(char c=97;c<123;)System.console().printf("%c",c++);}}

Note that the program for u makes use of System.console(), which will return null (and thus cause the code to throw a NullPointerException) if you call it from anything other than your OS' native terminal (cmd on Windows, bash on Linux/OSX, etc.)

Kevin Cruijssen

Posted 2012-04-24T09:11:49.357

Reputation: 67 575

You can use System.err.printf("%c",c++); for u source code in place ofSystem.console().printf("%c",c++); – Numberknot – 2016-10-26T16:52:55.680

1You should mash them all in 2 programs: one without a, e, i, o and another without u. – Olivier Grégoire – 2017-09-11T05:53:13.240

1

05AB1E, 4 bytes

žpRl

Try it online!

Explanation:

žp     Push 'ZYXWVUTSRQPONMLKJIHGFEDCBA'
  R    Reverse string - 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
   l   Lowercase - 'abcdefghijklmnopqrstuvwxyz'
       Implicitly print

Geno Racklin Asher

Posted 2012-04-24T09:11:49.357

Reputation: 466

0

AWK,35 (using o,i)

END{for(_=0;_++<26;)printf"%c",96+_}

neglected E from the count considering 'E'!='e'

;)

Wasi

Posted 2012-04-24T09:11:49.357

Reputation: 1 682

0

Julia, 12

['b'-1:'z']

Though the output doesn't look all that nice.

26-element Array{Char,1}:
'a'
'b'
'c'
.
.
.
'z'

gggg

Posted 2012-04-24T09:11:49.357

Reputation: 1 715

0

JS, 43

Run this in the browser's console or nodeJS. Uses no vowels.

Outputs happens in the console.

To output it in the browser, add alert or document.write around it, but it's longer.

"\141bcd\145fgh\151jklmn\157pqrst\165vwxyz"

or

"\x61bcd\x65fgh\x69jklmn\x6fpqrst\x75vwxyz"

xem

Posted 2012-04-24T09:11:49.357

Reputation: 5 523

0

beeswax, 28 chars

Non-competing answer. I created beeswax in December 2015, long after the challenge was posted. Just trying out how well beeswax is able to perform in comparison to other languages.

>@5~5.P@>}@Mq
dP(6~4_#dP@#"<

You can clone my GitHub repository, containing the interpreter, written in Julia, the language specs and examples.

M L

Posted 2012-04-24T09:11:49.357

Reputation: 2 865

-2

Python 48 chars without a e o u

print'\x61bcd\x65fgh\x69jklmn\x6fpqrst\x75vwxyz'

chack008

Posted 2012-04-24T09:11:49.357

Reputation: 23

What about no i? It is surely possible. Something like exec'pr\x69nt...'. Also, the header should say "Python 2", if you want to be exact. – Erik the Outgolfer – 2016-09-16T21:18:08.853

-3

JavaScript, 43 Chars (run in terminal)

"\141bcd\145fgh\151jklmn\157pqrst\165vwxyz"

Inkbug

Posted 2012-04-24T09:11:49.357

Reputation: 468

2This just generates the alphabet, not outputs it as required. – manatwork – 2013-04-09T16:31:00.583