User loginNavigation |
archivesThe Ioke JVM Language: The power of Lisp and Ruby with an intuitive syntaxOla Bini, a core JRuby developer and author of the book Practical JRuby on Rails Projects, has been developing a new language for the JVM called Ioke. This strongly typed, extremely dynamic, prototype based object oriented language aims to give developers the same kind of power they get with Lisp and Ruby, combined with a nice, small, regular syntax. InfoQ has a Q&A with Ola about Ioke. By synodinos at 2008-11-08 14:10 | LtU Forum | login or register to post comments | other blogs | 7343 reads
The Origins of the BitC Programming Language
The Origins of the BitC Programming Language Warning: Work in Progress β, η, ξ ⊢ α?I was just struck with a minor revelation. The informal explanation for α-equivalence in λ-calculus is that a function "does the same thing" regardless of the particular names that we might choose for its internal variables. But this seems like just a particular case of the general extensionality principle! Technically, α-conversion means that a bound variable may be renamed to another one as long as no free variables are captured: y ∉ FV(e) ―――――――――――――――――― (α) λx. e = λy. e[y/x] And indeed, it turns out that in the presence of the η-rule, which expresses the extensionality principle, the above rule is derivable: y ∉ FV(e) ――――――――――――― ―――――――――――――――――― (β) y ∉ FV(λx. e) (λx. e) y = e[y/x] ――――――――――――― (η) ―――――――――――――――――― (ξ) λx. e = λy. (λx. e) y = λy. e[y/x] This is of course quite trivial. However, I've read a fair number of tutorials to λ-calculus, and I don't recall having ever seen this particular tidbit mentioned anywhere. I'm unsure whether this is because I just haven't read the right papers, or the matter is so trivial that no one bothers mentioning it explicitly, or there's something wrong with my reasoning. So, just to ease my mind, could someone please either direct me to some respectable source where the redundancy of α in the presence of η is confirmed, or else point out what I'm missing here? Thanks. |
Browse archivesActive forum topics |
Recent comments
22 weeks 2 days ago
22 weeks 2 days ago
22 weeks 2 days ago
44 weeks 3 days ago
48 weeks 5 days ago
50 weeks 3 days ago
50 weeks 3 days ago
1 year 6 days ago
1 year 5 weeks ago
1 year 5 weeks ago