I know, a lot (are there actually many ?) People will think that pure static strong functional language such as Haskell is too serious and abstract. It is only suitable for cold and hard scientific tasks. However, dear Paul Hudak (http://cs-www.cs.yale.edu/homes/hudak/), let us see in a speech named "Haskell and the arts, haskell, the original rigorous thinking, can also provide unique assistance to artists in many fields.
The speaker raised several questions to everyone at the beginning:
Can we create a robot conductor?
What kind of sound will a saxophone like a house make?
Can I use an animation to simulate a new choreographer?
Can we create new artistic expressions? (See what kind of electronic taodi smule creates: http://www.tudou.com/programs/view/_moJVfRuZzk)
So what interesting things has Haskell done?
First, several original Jobs completed by Conal Elliott (http://conal.net:
Fran-functional reactive animation (functional reactive animation), http://conal.net/fran/
Pan-functional image transformation and synthesis, http://conal.net/pan/
Vertigo-functional 3D object construction, http://conal.net/Vertigo/
Behind these jobs is a very insightful programming paradigm-functional reactive programming (FRP, functional reactive programming), invented by Conal, now it has become a very important field of research (http://www.haskell.org/haskellwiki/Research_papers/Functional_reactive_programming) for FP communities ). In simple terms, FRP is particularly suitable for describing and constructing systems that will change over time and interact with the outside world. Many common artistic forms belong to this system, such as interactive graphics and animations, music, and dance.
The work mentioned above is visually related, and Haskell is the best speaker for sound. I remember one of the respondents in programmers at work (Scott Kim? Http://www.scottkim.com) said that programmers and musicians have a significant point in common, that is, using some abstract markup to express their emotions. I think the emergence of haskore (http://haskell.org/haskellwiki/Haskore) can somehow unify the languages used by these two different groups. As an edsl (embeded domain-specific language) embedded in Haskell used to describe music, it only needs to say "what" instead of "how to do ", high-order functions, algebraic data types, lazy evaluation, and type classes) the abstract mechanism of these programming gives creators more freedom to combine than the traditional music, thus making the "music program" very concise, elegant, and energetic. Hassound, a real-time sound Synthesis System, uses similar concepts as FRP to describe data flows ), those sound sources with unique temperament can be intuitively created as if they were building a digital signal processing circuit.
I have said that Haskell can also be used for choreographer? Aha, this is Dance: http://www.haskell.org/yale/papers/dance-30-tr/dance.htm. You can regard it as an interactive labanotation. After writing it, you can immediately give real-time dance simulation on your computer.
Paul mentioned animusic's work in his speech. If you are interested, go to http://v.youku.com/v_show/id_xmty2nzy2mti#.html. It is actually a complete piece of 3D virtual concert. If you feel that you are not addicted to it, you will not suffer from your own searches. Similarly, there was a recent sensation in the future of Japanese virtual idol hatting. Paul believes that for such a work that combines graphic animation and music sound effects, it is purely played by a computer and requires a high degree of coordination between the rhythm of each aspect, fran, haskore, dance, and their related ideas are all useful. I am cautiously optimistic about this. In the end, everything needs to be tested by practice. In the future, we will have the opportunity to talk about some solutions to similar problems in the field of interactive virtual drama research.
If you, like me, are impressed by these creative jobs and want to feel the artistic charm of Haskell, we recommend the Haskell School of expression by Paul Hudak. The author will use a variety of lively and lovely multimedia programs to show the beauty of Haskell, and expressed confidence in the preface: reading this book will certainly bring readers a very pleasant experience. Just like other books that can be regarded as classic books, soe stands for its value.
More and more people are discovering that there are still many things in this crazy world that are far more interesting than deception and deception, looting and looting, injury and injury. For example, the subtitle of the speech proposed: "How programmers can help, inspire, and even become artists (how functional programmers can help, inspire, or even be artists )". When you feel a little desperate about your life, trying to think about and practice such a subject brings comfort to your own soul ?!