Earlier quoted context omitted.
This is interesting. Since it's hard to read, I've extracted the language statistics and I'll leave them here: C# - 7.9% C - 7.2% Rust - 7.1% Visual - Basic - 6.6% Makefile - 6.5% Java - 5.8% Forth - 5.0% Go - 4.5% PostScript - 4.2% Haskell - 4.0% Shell - 3.8% Perl - 3.5% JavaScript - 3.4% Matlab - 3.2% Scala - 3.1% PHP - 3.1% OCaml - 3.0% Lua - 2.8% R - 2.7% Python - 2.7% CoffeeScript - 1.9% Ruby - 1.9% Clojure - 1.…
The fact that C# came out with 36% more lines than Java would make me doubt much extrapolation about productivity from these numbers. You can do a token for token substitution of Java and end up with close to compilable C# code; there are only a handful of things Java has that C# doesn't, while C# has many more abstraction tools.
Make a Lisp
21–30 of 44 posts
Re: Make a Lisp
#22Shameless plug: I've been trying to follow along, but making it entirely self-contained and avoiding any additional tools. The result (in very early stages, currently dormant but not quite dead yet) is called Lithium [2].
Re: Make a Lisp
#23Earlier quoted context omitted.
This is interesting. Since it's hard to read, I've extracted the language statistics and I'll leave them here: C# - 7.9% C - 7.2% Rust - 7.1% Visual - Basic - 6.6% Makefile - 6.5% Java - 5.8% Forth - 5.0% Go - 4.5% PostScript - 4.2% Haskell - 4.0% Shell - 3.8% Perl - 3.5% JavaScript - 3.4% Matlab - 3.2% Scala - 3.1% PHP - 3.1% OCaml - 3.0% Lua - 2.8% R - 2.7% Python - 2.7% CoffeeScript - 1.9% Ruby - 1.9% Clojure - 1.…
I was curious about this, so here is the result of my digging. `core` has inline lambdas in Ruby: :prn => lambda {|*a| puts(a.map {|e| _pr_str(e, true)}.join(" "))}, but separately defined ones in Python def prn(*args): print(" ".join(map(lambda exp: printer._pr_str(exp, True), args))) return None ... 'prn': prn, Note that `return None` isn't needed - Ruby doesn't have it, so that's a "wasted" line. The function shou…
Re: Make a Lisp
#24One question, how would I go about implementing tail call recursion? I's assume that's a pretty important thing to have in lisp (or any functional language for that matter). I'm working in ruby, if that matters.
Re: Make a Lisp
#25 -------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Rust 17 294 155 3919
C 18 446 383 3356
C# 19 472 235 3314
Visual Basic 17 322 131 2945
Java 17 322 134 2872
Go 17 299 147 2636
Bourne Shell 16 304 241 2308
Perl 19 263 165 2167
Haskell 17 328 99 1951
MATLAB 25 176 114 1880
Javascript 23 263 145 1873
PHP 17 242 118 1791
Scala 16 219 113 1731
Lua 18 227 87 1715
Python 18 218 143 1393
Ruby 17 165 87 1219
OCaml 15 105 98 1154
Clojure 17 247 117 1011
CoffeeScript 17 193 126 989
CSS 6 150 132 792
make 26 233 59 580
HTML 1 17 27 227
C/C++ Header 6 47 9 172
Maven 1 2 7 72
-------------------------------------------------------------------------------
SUM: 380 5554 3072 42067
-------------------------------------------------------------------------------Re: Make a Lisp
#26Obligatory cloc reading to see which implementations were shortest: ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- Rust 17 294 155 3919 C 18 446 383 3356 C# 19 472 235 3314 Visual Basic 17 322 131 2945 Java 17 322 134 2872 Go 17 299 147 2636 Bourne Shell 16 304 241 2308 Pe…
Re: Make a Lisp
#27I'm working on a lisp interpreter right now, so this should be useful for reference. One question, how would I go about implementing tail call recursion? I's assume that's a pretty important thing to have in lisp (or any functional language for that matter). I'm working in ruby, if that matters.
Re: Make a Lisp
#28Earlier quoted context omitted.
This is interesting. Since it's hard to read, I've extracted the language statistics and I'll leave them here: C# - 7.9% C - 7.2% Rust - 7.1% Visual - Basic - 6.6% Makefile - 6.5% Java - 5.8% Forth - 5.0% Go - 4.5% PostScript - 4.2% Haskell - 4.0% Shell - 3.8% Perl - 3.5% JavaScript - 3.4% Matlab - 3.2% Scala - 3.1% PHP - 3.1% OCaml - 3.0% Lua - 2.8% R - 2.7% Python - 2.7% CoffeeScript - 1.9% Ruby - 1.9% Clojure - 1.…
The fact that C# came out with 36% more lines than Java would make me doubt much extrapolation about productivity from these numbers. You can do a token for token substitution of Java and end up with close to compilable C# code; there are only a handful of things Java has that C# doesn't, while C# has many more abstraction tools.
Re: Make a Lisp
#29Earlier quoted context omitted.
This is interesting. Since it's hard to read, I've extracted the language statistics and I'll leave them here: C# - 7.9% C - 7.2% Rust - 7.1% Visual - Basic - 6.6% Makefile - 6.5% Java - 5.8% Forth - 5.0% Go - 4.5% PostScript - 4.2% Haskell - 4.0% Shell - 3.8% Perl - 3.5% JavaScript - 3.4% Matlab - 3.2% Scala - 3.1% PHP - 3.1% OCaml - 3.0% Lua - 2.8% R - 2.7% Python - 2.7% CoffeeScript - 1.9% Ruby - 1.9% Clojure - 1.…
The fact that C# came out with 36% more lines than Java would make me doubt much extrapolation about productivity from these numbers. You can do a token for token substitution of Java and end up with close to compilable C# code; there are only a handful of things Java has that C# doesn't, while C# has many more abstraction tools.
Re: Make a Lisp
#30Obligatory cloc reading to see which implementations were shortest: ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- Rust 17 294 155 3919 C 18 446 383 3356 C# 19 472 235 3314 Visual Basic 17 322 131 2945 Java 17 322 134 2872 Go 17 299 147 2636 Bourne Shell 16 304 241 2308 Pe…
Personally I found Forth implementation the most impressive, even more so than bash. Well, Make comes close :)