Posts

Showing posts from November 16, 2014

clojure problem: string not in core

string manipulation is the most important element in modern programing. This is the first thing you teach to beginners, about any language.But with clojrue, it's not core part of the language. You need to load it as a lib, or, go use Java's string stuff.Try to tell that to beginner. You either face the immense complexity of clojure namespace , or the immense complexity of dealing with a entire complexity bag the interoperation with Java.PS: actually, just prefix the namespace. ⁖ (clojure.string/upper-case "xyz").

One Weird Annoyance About Clojure: Java

one annoying thing about Clojure is that it runs on Java Virtual Machine. Clojure is actually a so-called hosted language, and this is by spec. (and JavaScript is a hosted language too. 〔➤ JavaScript Tutorial: Understand JavaScript in Depth〕). This practically means is that, Clojure isn't a “fixed” language. For example, when it's running on JVM, its regex is Java syntax, its string functions are Java language's string methods. When it runs in JavaScript world (as ClojureScript do), its regex is JavaScript's regex. 〔➤ JavaScript Regex Syntax〕But, that's not all. The MOST annoying thing is that, you actually need to know a lot about stinking Java in order to do any real world work with Clojure. (don't let any hacker type fanatics tell you otherwise) You need to know Java class/object system, its package system, its namespace scheme, Java Virtual Machine system, its compilation cycle, its tools and achive files. Even the official Clojure documentation, outright s…

show/edit zip file content in emacs

there's a patch for opening zip files in emacs. When opening a zip archive of a single file, emacs now can display its content (and you can edit it)See: 〈bug#1702: [PATCH]: feature request: correctly display single file zip archive〉 athttp://debbugs.gnu.org/cgi/bugreport.cgi?bug=1702http://lists.gnu.org/archive/html/bug-gnu-emacs/2014-11/msg00603.htmlIt's going to be in emacs 25.x. Thanks to Matthew Leach for the patch.