LightTableによるclojure開発を始めるための手順です。
今回は例としてduct projectの開発を始めるまでの手順を紹介します。
基本方針はRDD(REPL駆動開発)です。
この手順により(理想的には)一度もreplを切らずに開発を進めることが可能です。
下記がインストールされていることを前提とします。
LightTableによるclojure開発を始めるための手順です。
今回は例としてduct projectの開発を始めるまでの手順を紹介します。
基本方針はRDD(REPL駆動開発)です。
この手順により(理想的には)一度もreplを切らずに開発を進めることが可能です。
下記がインストールされていることを前提とします。
(defn ellipsize [words] | |
(let [[w1 w2 w3] (str/split words #"\s+")] | |
(str/join " " [w1 w2 w3 "..."]))) | |
(ellipsize "The quick brown fox jumps over the lazy dog.") | |
-> "The quick brown ..." |
(defn make-greeter [greeting-prefix] | |
(fn [username] (str greeting-prefix ", " username))) | |
(def hello-greeting (make-greeter "Hello")) | |
(hello-greeting "world") | |
-> "Hello, world" | |
(def aloho-greeting (make-greeter "Aloha")) | |
(aloha-greeting "world") | |
-> "Aloha, world" |
(defn indexable-word? [word] | |
(> (count word) 2)) | |
(require '[clojure.string :as str]) | |
(filter indexable-word? (str/split "A fine day it is" #"¥W+")) | |
-> ("fine" "day") | |
(filter (fn [w] (> (count w) 2)) (str/split "A fine day is it" #"\W+")) | |
-> ("fine" "day") | |
(filter #(> (count %) 2) (str/split "A fine day is it" #"\W+")) |
StringBuilder sb = new StringBuilder(keyword); | |
for(int i = 0; i < sb.length(); i++) { | |
char c = sb.charAt(i); | |
if ('0' <= sb.charAt(i) && '9' >= sb.charAt(i)) { | |
sb.setCharAt(i, (char)(c - '0' + '0')); | |
} else if ('A' <= sb.charAt(i) && 'Z' >= sb.charAt(i)) { | |
sb.setCharAt(i, (char)(c - 'A' + 'A')); | |
} else if ('a' <= sb.charAt(i) && 'z' >= sb.charAt(i)) { | |
sb.setCharAt(i, (char) (c - 'a' + 'a')); |
// nade.js run with debug mode | |
node --debug app | |
// run node-inspector | |
./node_modules/.bin/node-inspector |
import java.sql.*; | |
public class Main { | |
public static void main(String[] args) { | |
Connection con; | |
DatabaseMetaData metaData; | |
try { | |
Class.forName("oracle.jdbc.driver.OracleDriver"); | |
con = DriverManager. |
module m_collatz | |
implicit none | |
contains | |
recursive function icollatz(n) result(result) | |
integer, intent(in) :: n | |
integer, allocatable :: result(:) | |
if (n == 1) then | |
result = [1] | |
else if (mod(n, 2) == 0) then ! even | |
result = [n, icollatz(n / 2)] |
import java.util.ArrayList; | |
import java.util.Arrays; | |
import java.util.List; | |
import java.util.Random; | |
import java.util.function.Predicate; | |
import java.util.stream.Collectors; | |
import java.util.stream.Stream; | |
public class BonJoviGenerator { | |