1. Shlomi Fish
  2. spark

Commits

Shlomi Fish  committed 4ab2e6d

Add more.

  • Participants
  • Parent commits 2d63e98
  • Branches default

Comments (0)

Files changed (2)

File docs/why-lisp-is-unpopular/Makefile

View file
+DOC = Why-Lisp-is-Unpopular
+
+ASCIIDOC = $(DOC).txt
+HTML = $(DOC).html
+DOCBOOK = $(DOC).xml
+PDF = $(DOC).pdf
+
+all: $(HTML)
+
+pdf: $(PDF)
+
+$(HTML): $(ASCIIDOC)
+	asciidoc $<
+
+$(DOCBOOK): $(ASCIIDOC)
+	asciidoc --backend=docbook $<
+
+upload: $(HTML)
+	rsync -v --progress -a $(HTML) $(ASCIIDOC) $(PDF) $(DOCBOOK) $$HOMEPAGE_SSH_PATH/spark-n9
+
+$(PDF): $(DOCBOOK)
+	docmake -v -o $@ pdf $<

File docs/why-lisp-is-unpopular/Why-Lisp-is-Unpopular.txt

View file
+park - Pre-Birth of a Modern Lisp
+==================================
+Author: Shlomi Fish
+Email: shlomif@iglu.org.il
+
+Introduction
+------------
+
+TODO : Fill in.
+
+No good handling of text and "octet streams"
+--------------------------------------------
+
+* UNIX/C/TCP/IP's managing of octet streams and sequences vs. Lisp's object 
+handling (not necessarily in the OOP sense).
+
+* A good language should have support for both - Perl starting from 5,
+Python, Ruby.
+
+* No interpolation.
+
+* No regexes (can be implemented but non-standard).
+
+* People keep telling me to use Domain Specific languages (DSLs) to build a 
+syntax methodically instead of agreeing that a templating system is a good 
+idea. ("Less is more" as opposed to TIMTOWTDI).
+
+** Don't output SQL directly - use a DSL - no support for something like 
+$dbh->quote() or placeholders in CLSQL.
+
+* No support for interpolation.
+
+* No support for here-docs.
+
+* You need to write a DSL instead of just outputting the text the way
+you want and getting on with the rest of your life.
+
+* Conclusion: good text support is needed, if you want to attract 
+Perl 5 / Python / Ruby / JS / whatever hackers. 
+** And there are likely very few programmer-wannabes who will be influenced by 
+people who are not their elders or their superiors, so it's a vicious cycle.
+
+Competing implementations
+-------------------------
+
+* Scheme has a very large number of implementations for a given platform (C,
+JVM, etc.).
+
+* Writing a Scheme implementation seems to be a rite of passage:
+** A Schemer on #scheme admitted that he hadn't written a Scheme implementation
+yet so he doesn't know it too well.
+* Many of these implementations end up as dinky open-source projects.
+
+* Probably a symptom of a language being too simple and minimalistic.
+
+* You don't see Perl 5, Python or Ruby people writing their own implementation
+for enlightenment. 
+