I have been working as a C developer on Linux platform for sometime now. Recently finished K & R and did a little study of implementing OOP in C. Beside that I have studied C++ and Java. All of it has been on Linux platform.
Now I plan to learn LISP. I have gone through LISP discussions directed towards beginners on SO, especially What’s the best way to learn LISP.
I understand, moving from procedural to functional programming paradigm is a big move. Thinking in terms of the new paradigm would be the real challenge. Just like the way it was when I learned OOP for the first time.
It is the paradigm I am really worried about. When I started OOP, most of the time was consumed in learning how to view problems in terms of OOP. Syntax was not so difficult to grasp.
Now as I have been working in C, my current projects at my workplace are also in C. I am concerned how could I learn to view problems in terms of functional programming.
- What could be the best way to make shift towards LISP for a C developer?
- Should I learn some other intermediate language before I move to LISP?
- If yes then which language that could be?
- Any particular text that would help me think in the way of functional programming?
- Any suggestion that would make this shift faster and easier?
Thanks for your time. Any help and suggestion would be greatly appreciated.