$ rails g model User
belongs_to
has_one
| ;; Why is Lisp so great? or Why so many parenthesis? | |
| ;; The funny thing about Lisp is that everybody asks why it has so may parenthesis. Quite a few friends of mine who have studied Lisp in college don’t like it that much. I couldn’t really understand why, until I realized they usually take a class that uses the book Concepts of Programming Languages by Robert W. Sebesta as a textbook. I’m in no position to review this book because I haven’t read it. But from what I’ve skimmed, Lisp is not very well represented in this book, to put it very nicely. He describes Lisp only as a functional programming language, tells a little bit about cons cells, and that’s pretty much it! No object orientation in lisp, no syntactic abstraction, no meta-programming, and so on. My feeling is that if I didn’t know Lisp and read this book I wouldn’t be very impressed by Lisp. | |
| ;; So why is Lisp so great and why so many parenthesis? These two different questions have the same answer; because Lisp have syntactic abstraction trough t |
| # Support for Rspec / Capybara subdomain integration testing | |
| # Make sure this file is required by spec_helper.rb | |
| # | |
| # Sample subdomain test: | |
| # it "should test subdomain" do | |
| # switch_to_subdomain("mysubdomain") | |
| # visit root_path | |
| # end | |
| DEFAULT_HOST = "lvh.me" |
| # fibonacci | |
| h = Hash.new { |hash,key| hash[key] = hash[key-1] + hash[key-2] } | |
| h[1] = 0 | |
| h[2] = 1 |
| defmodule Fib do | |
| def fib(0) do 0 end | |
| def fib(1) do 1 end | |
| def fib(n) do fib(n-1) + fib(n-2) end | |
| end | |
| IO.puts Fib.fib(10) |
| For each Ruby module/class, we have Ruby methods on the left and the equivalent | |
| Clojure functions and/or relevant notes are on the right. | |
| For clojure functions, symbols indicate existing method definitions, in the | |
| clojure namespace if none is explicitly given. clojure.contrib.*/* functions can | |
| be obtained from http://github.com/kevinoneill/clojure-contrib/tree/master, | |
| ruby-to-clojure.*/* functions can be obtained from the source files in this | |
| gist. | |
| If no method symbol is given, we use the following notation: |