A JOKE? NO... the Major League BASEBALL Salary Cap (or lack of one) is a joke.
You are absolutely right, 101. This is a beautiful picture of players unions at their worst. Look at the three major sports -- the Players Union runs MLB -- they don't want a cap and they don't get one? Why? They are willing to strike and MLB doesn't want to take the hit so they allow the players all kinds of concessions. The union doesn't want a cap because they know the Yankees will continue to drive up players salaries -- but by doing so it's horrible for the game because it puts a caste system in baseball. Cities without the fanbase and the revenue of NY and Seattle end up with their best players being medium tier players -- unless they prove some youngsters and then they see them go to the top level teams for the max.
Basketball is number two in that scenario. They do have a cap but most teams aren't willing to take the hit on the cap in order to sign players long-term. The NBA is so-so (give and take) in this situation -- some is good, some is bad. It's better than paying mediocre players more than what they are worth -- want some great examples? Ron Mercer -- getting big bucks back when the payday was hot, Brian Grant, etc. Most teams are learning now but players want to start playing for a contender or a team that will give big money to their players long term (Dallas, Portland, NY, etc.).
The NFL does have a cap and it doesn't have to pay a player that gets hurt or doesn't produce. They simply cut them if they don't want them -- no contract is guaranteed. Not fair to players altogether but it's a win-win situation for the owners and the league.