{"id":123,"date":"2010-01-24T22:02:15","date_gmt":"2010-01-25T04:02:15","guid":{"rendered":"http:\/\/blog.kellie.wildroseandbriar.com\/?p=123"},"modified":"2010-01-24T22:02:20","modified_gmt":"2010-01-25T04:02:20","slug":"parrot-speaks-a-number-of-languages","status":"publish","type":"post","link":"http:\/\/blog.kellie.wildroseandbriar.com\/?p=123","title":{"rendered":"Parrot Speaks A Number of Languages"},"content":{"rendered":"<p>After watching several of Allison Randal&#8217;s videos yesterday (see <a target=\"_blank\" href=\"http:\/\/blog.kellie.wildroseandbriar.com\/?p=121\">Dynamism Clarified<\/a> ), I started investigating <a target=\"_blank\" href=\"https:\/\/www.parrot.org\/\">Parrot<\/a>. I was so impressed that I downloaded the latest version (2.0.0) and built it on my MacBook. I haven&#8217;t had time to do much more than start reading the documentation but I like what I see so far. I will probably play with <a target=\"_blank\" href=\"http:\/\/github.com\/cardinal\/cardinal\/\">Cardinal<\/a>, an implementation of Ruby 1.9 in Parrot. I may see what kind of bench marks I can come up with.<\/p>\n<p>I realized that my first several languages were all dynamic languages, i.e. Microsoft Basic (long before Visual Basic) and Forth. I always preferred dynamic languages because, in spite of whatever project I was working on for my employer, I was always intrigued by the prospect of artificial intelligence. My first static language was Pascal, quickly followed by C. I was going to say that I learned Lisp around this time but it took me a long time to really learn Lisp. I was able to write Lisp expressions in pretty short order but the whole process of building expressions up into programs that leveraged the unique strengths of Lisp took quite a while.<\/p>\n<p>When I look back over my career it seems that I was always avidly studying dynamic languages. In fact, one of the reasons I was so enamored with Java was that it was more dynamic than C. When I discovered Java (the first day that Sun released the first public beta as a matter of fact) I immediately recognized it as a tool for convincing the static programming masses of the value of dynamism. Or as I put it at the time, it was a step in the right direction toward Lisp.<\/p>\n<p>My current favorite language is Ruby, primarily because I can interface to more main stream software more easily with Ruby than just about any other platform. It is also sufficiently mature that I don&#8217;t worry much about it changing too drastically. I also share a lot of &#8220;opinions&#8221; about code with Ruby.<\/p>\n<div class=\"zemanta-pixie\"><img class=\"zemanta-pixie-img\" alt=\"\" src=\"http:\/\/img.zemanta.com\/pixy.gif?x-id=d0875977-f238-8a27-be1e-0f41f671f6f4\" \/><\/div>\n","protected":false},"excerpt":{"rendered":"<p>After watching several of Allison Randal&#8217;s videos yesterday (see Dynamism Clarified ), I started investigating Parrot. I was so impressed that I downloaded the latest version (2.0.0) and built it on my MacBook. I haven&#8217;t had time to do much more than start reading the documentation but I like what I see so far. I &hellip; <a href=\"http:\/\/blog.kellie.wildroseandbriar.com\/?p=123\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Parrot Speaks A Number of Languages&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":""},"categories":[2],"tags":[],"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=\/wp\/v2\/posts\/123"}],"collection":[{"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=123"}],"version-history":[{"count":1,"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=\/wp\/v2\/posts\/123\/revisions"}],"predecessor-version":[{"id":124,"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=\/wp\/v2\/posts\/123\/revisions\/124"}],"wp:attachment":[{"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=123"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=123"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.kellie.wildroseandbriar.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=123"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}