I'm going to give two answers which appear to be in conflict but which actually aren't:
- There are dark yellows and bright violets — we're just not used to seeing them.
- There aren't and can't be dark yellows or bright violets — and here's why.
1. There are dark yellows and bright violets
Color perception is relative. Here is a demonstration. If you take a typical color wheel:
And you darken the image to half of its original brightness, then you've darkened every color, including yellow. This produces a dark yellow that looks muddy:
If you darken it again, now to one quarter its original brightness, the darkened yellow is starting not to look much like "yellow" anymore, as it has lost most of it's "yellowness."
However, if you make the image full screen and turn off all the lights in the room, it will again appear as normal. This darkened yellow will look "yellow" again.
Now if the image is darkened to one eighth of its original brightness, the colors are all so dark now that you can barely even see them:
But if you bring down the ambient light in the room to blackness, then the super-dark yellow here will again look to you like "yellow." Everything about our color perceptions is relative.
Conversely, if you go back to the first image and you turn the brightness on your monitor wayyyy up, so that the violet is no longer dark but is really bright, then you've created a bright violet. However, in the process, you've brightened all the other colors as well, so the brighter violet you just made is still dark relative to all the other colors.
2. There aren't and can't be dark yellows or bright violets — and here's why
OK, now for the flip side of the argument. Why is yellow so bright and violet so dark?
The answer has to do with how our eyes perceive luminosity. Each of the color receptors in our eyes — red, green, and blue — perceive these colors at different luminosities. In fact, green is perceived to be about twice as bright as red and about six times as bright as blue. A standard way of computing luminosity from the color components red, green, and blue is to add up 30% of the red value plus 59% of the green value plus 11% of the blue value. In other words:
L = (0.30 * R) + (0.59 * G) + (0.11 * B)
Since yellow is recognized by our eyes as activating both the red and green cones of the retina, its luminosity value can be calculated as:
L[Y] = (0.30 * 1) + (0.59 * 1) + (0.11 * 0)
That's pretty bright — only pure white can achieve 1.0 using this formula.
On the other end (the dark end), we can see that the darkest color is a pure blue:
L[B] = (0.30 * 0) + (0.59 * 0) + (0.11 * 1)
So what about violet? Since violet contains red and blue, it is actually slightly brighter (more luminous) than blue, if we constrain R, G, and B to the range [0,1]. But what we think of as "violet" is usually slightly darker amounts of R and B than pure full-on red plus blue. One way to write violet might be R = 0.5, G = 0.0, B = 0.8. This is just one way to assign the numbers; everyone has a slightly different feeling for what "violet" is. Using the luminosity formula above for these RGB values gives:
L[V] = (0.30 * .5) + (0.59 * 0) + (0.11 * 0.8)
In any case, violet is dark by nature, as it is closer to blue (the darkest of RGB) than it is to red. And yellow is light by nature, because it combines green (the brightest of RGB) with red (the second brightest).
Pure cyan (green plus blue) is also very bright, but less so than yellow.
Here is the color wheel above shown as a hue/luminosity chart. As you can see, yellow has the highest luminosity and blue has the lowest, with purple very close to blue.
3. In summary
All of the above assumes an RGB color model. Although our eyes are wired for RGB receptors, they certainly don't limit values to nice ranges like [0,1]. In reality, our eyes measure brightness logarithmically. Nevertheless, color models like RGB do allow us to represent and recreate a good portion of the visible colors on our computer screens, and although there are other models which take perceptual subtleties into account more accurately than RGB, it is still true that our eyes perceive blue to be less bright than red or green, and this is why violet and blue are always darker than yellow and orange — especially pure blue (sometimes called ultramarine blue). In practice, most of the colors we think of as "blue" in life actually have quite a bit of green mixed in. Similarly, most colors we think of as "yellow" in life actually have a bit of red mixed in, tilting them toward the oranges slightly.
Finally, there's technically nothing in real-life light that prevents there from being a huge spike of blue light reflecting off an object — but it just doesn't happen in practice, due to the way white light is broken down, absorbed, and reflected.
An exception to this is fluorescent colors. With fluorescent colors, you can get bright spikes of purer colors because the energies of nearby wavelengths are collected together and re-emitted on a purer wavelength. If you've even seen a blacklight poster lit by a bright fluorescent blacklight bulb, you will actually see very bright blues and violets — and what's interesting is that they aren't really much darker than the oranges and yellows and greens. (All the normal rules are out the door when it comes to blacklights. :)