Concatenative counting Your challenge is to write N snippets of code such that, when you concatenate the first K &ge; 1 together, they produce the number K. The higher N, the better. Here's the catch: you may not use any character more than once across your snippets.

Rules


You may use the same character multiple times in one (and only one) snippet.
These snippets must be concatenated in the order they are presented, without skipping any.
You must write at least two snippets.
All snippets must be in the same language.
Remember: snippets do not have to be full programs or functions, nor do they have to function on their own. -1 is a valid snippet in Java, e.g.
All resulting concatenations must output the respective K value.
The winner is the person with the highest N value. Tie-breaker is shortest overall program length in bytes.


Example

Suppose your snippets were AD, xc, 123, and ;l. Then:


AD should produce 1
ADxc should produce 2
ADxc123 should produce 3
and ADxc123;l should produce 4.


This program would have a score of 4.
Perl 5, 50,091 151 snippets

First snippet:

use utf8; print length A


2nd through 26th snippets: B through Z

27th through 46nd snippets: a through z, excluding the characters in "length"

47th through 56th snippets: 0 through 9

57th snippet: _

The remaining snippets are the 50,105 individual Unicode characters which Perl regards as "word" characters, excluding the 14 distinct word characters in the initial snippet, in any order.

Well, it was a nice thought, but it turns out that after a certain length Perl gives you an "identifier too long" error.  This is the longest combined program I was able to get Perl to digest:

use utf8; print length A012345679BCDEFGHIJKLMNOPQRSTUVWXYZ_abcdjkmoqsvwxyzĀāĂăĄąĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıĲĳĴĵĶķĸĹĺĻļĽľĿŀŁłŃńŅņŇňŉŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţ


The perldiag manual page says "Future versions of Perl are likely to eliminate these arbitrary limitations" but my Perl 5.18 has not done so.

Explanation:

In non-strict mode, Perl 5 interprets unquoted strings of word characters as "barewords," essentially quoting them for you automatically.  They're usually best avoided, but they sure help here!