I started learning Scheme for fun, and was wondering if anyone uses it for a living as a prime programming language... or even as an additional tool to the programming arsenal? If so, what do you use it for? What kind of problems do you typically solve with it?
Scheme Programming language is typically used to write to write text editing programs, analyse and optimise application-based compilers, write drivers for graphics cards, develop operating systems, and many more.
At present, old Pascal is almost dead, and the Object Pascal is on the verge of disappearing. VB.NET is an object-oriented programming language.
It's a functional programming language and will do well broaden your experience. Even if you don't use it in the real world doesn't mean it doesn't have any value. It will help you master things like recursion and help to force you to think of problems in different ways than you normally would.
A language cannot be closed-source. Its compiler and run-time libraries can be closed-source. A formal grammar of a language can be kept as a secret though and be legally protected (NDAs, etc.) and fees collected for usage.
There are plenty of people who write Scheme for a living. They're university professors, though, mostly in the field of programming languages--there are several here at Indiana University, like Kent Dybvig and Dan Friedman. They prototype new ideas in programming language semantics (and Dybvig also sells a Scheme compiler).
This is not a field that has a lot of paying customers, so technically the professors are paid because they have tenure at a university. But they got tenure by publishing new ideas in programming languages.
There are also some professors who advocate the use of Scheme as a teaching language, like Matthias Felleisen and the others behind PLT Scheme. They also write Scheme for a living.
Scheme is great for trying out new language semantics because it has very simple, powerful primitives and the uniform syntax lets you concentrate only on the semantics. If you are designing a new programming language, prototyping it in Scheme might be a useful first step. Scheme doesn't get in the way of new ideas because it includes so few of its own.
Yes some people use Scheme for a living. For example there are occasional openings for Scheme programmers here in Montreal (http://theschemeway.blogspot.com/2009/03/scheme-job-openings-at-gamerizon.html). Search the site for "job" for more Scheme jobs.
In my experience people programming in Scheme make up less than .1% of the professional programming community, at least here in Montreal. I have seen Scheme used for doing embedded systems programming, high-precision numerical computing, web programming, game scripting, and more.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With