The reason the dependency exists is because silverlight includes the .net compiler and, in addition to literally executing the code on the client, is used for a lot of the IDE sugar, like Intellisense. Additionally, you don't just get the f# language here but also access to a lot of the standard .net libraries. So while I agree it's annoying that the dependency exists, it's not an arbitrary requirement to do accomplish something that could have easily been replicated in another technology