Xah Programing Blog Archive 2015-10

interesting read. [Clojure, numbers, despair By Mishok13. At [ http://blog.mishkovskyi.net/posts/2015/Oct/29/clojure-numbers-despair ] , accessed on 2015-10-30 ]

see also Clojure Tutorial

What Books to Learn Lisp?

Racket Scheme Lisp. [ http://docs.racket-lang.org/guide/ ]

Common Lisp. [ http://www.gigamonkeys.com/book/ ]

Emacs Lisp. Practical Emacs Lisp

Scheme Lisp. [ http://ds26gte.github.io/tyscheme/index-Z-H-1.html ]

Clojure Lisp. Clojure Books

racket doc on lisp's cons problem

added a section on racket doc on the lisp cons problem. Fundamental Problems of Lisp

Can Lisp Macro Change Lisp Syntax?

A logician's reading of a computer language manual. A Logician Reads Programing Manual

new crop of languages in past few years. elixir, elm, haxe, egison, julia, hack, rust, go, swift. See: Proliferation of Programing Languages

ah, due to brainfuck, suddenly i realized how to formalize abacus! in fact, bf is abacus. Abacus

see also

been doing brainfuck for the past week. Quite a excellent tool to study theoretical comp sci, as well algorithm.

brainfuck makes one painfully aware, unavoidable variations of implementation of the same algorithm.

brainfuck makes it clear that, source code is inherently unreadable and not manageable. Specifically imperative languages.

Brainf*ck Language EOF Design Problem

Mosh (mobile shell), replacement of ssh

seems a interesting tool. Fix the ssh constant disconnection over wifi problem.

Lisp, PHP, Perl, Python … Emacs. Interview with Reini Urban

[Interview with Reini Urban By Reini Urban. At [ http://perlhist.com/perl30/reini-urban ] , accessed on 2015-10-13 ]

lots interesting things.

Reini Urban is the author of alternative Perl compilers. But if you read the article, it's not really about perl. He's expert of lisp, perl, php, and uses emacs, since few decades ago.

lisp macros, Racket define syntax rule and pattern matching

racket named lisp defmacro as define-syntax-rule. A step forward. Even better is “define-form-rule”, as lisp macro can't change syntax.

[ http://mirror.racket-lang.org/releases/6.2.1/doc/guide/pattern-macros.html ]

note that how it calls macros as pattern matching and or syntax transformation.

in my 20+ of computing career, the Common Lisp fanatics, are the most persistent idiotic bunch.

racket, now i've read most of its doc, clearly tried to fix many of Common lisp's bad persistent notions, and scheme too.

scheme lisp lot is a unfortunate sorry lot. Cult result is obsession with tail recursion, like haskell's monad. Going nowhere, forever.

the most idiotic feature in comp lang, is call-with-current-continuation of scheme fame. This, rivets scheme in lala-land forever.

[ http://mirror.racket-lang.org/releases/6.2.1/doc/compatibility/defmacro.html ]

learn racket scheme lisp in 5 minutes. Racket Start (Install, Setup)

language popularity ranking sites

there's many language popularity ranking sites. The most well-known, is tiobe.

[ http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html ]

I think TIOBE index is stupid. Their approach is not good. Mostly because, they tried to be general, as if they know what “popularity” means.

another one, [ http://langpop.com/ ] , is worse. And badly maintained.

the following is better, because they are specific on what they measure.

note: language popularity is a lose concept. Is it more talked about? is it more used? more used by companies or by loud armature programers? Is it more existing code? How do you count code? What about quality code, but are not public?

Google Puts All 9 Million Source Code Files in One Repo

Why Google Stores Billions of Lines of Code in a Single Repository
Sep 14, 2015

Published on Sep 14, 2015 This talk will outline the scale of Google's codebase, describe Google's custom-built monolithic source repository, and discuss the reasons behind choosing this model of source control management. It will include background on the systems and workflows used at Google that make managing and working productively with a large repository feasible, in addition to a discussion of the advantages and trade-offs of this approach.

Presenter: Rachel Potvin

Google Puts All 9 Million Source Code Files in One Repo. Its own custom source management system called piper.

for context, linux kernel has 15M lines. Google repo has 2G lines. Google human makes 15M lines of code change per week.

Rachel Potvin explains why. But, i'm rather not convinced.

camelCase vs snake_case. Vote. 31 votes there. https://plus.google.com/+XahLee/posts/fNK8fCr4iwd