在clojure 1.4中,引用其它clojure包函数的方法
1. 全名引用
user=> (in-ns 'myapp)
#<Namespace myapp>
myapp=> (clojure.string/capitalize "abc")
"Abc"
2. 用require建alias
myapp=> (clojure.core/require '[clojure.core :as core])
nil
myapp=> (core/require ['clojure.string :as 'str])
nil
myapp=> (str/capitalize "a")
"A"
3.使用use
user=> (in-ns 'myapp)
#<Namespace myapp>
myapp=> (range 10)
CompilerException java.lang.RuntimeException: Unable to resolve symbol: range in this context, compiling:(NO_SOURCE_PATH:2)
myapp=> (clojure.core/use 'clojure.core)
nil
myapp=> (range 10)
(0 1 2 3 4 5 6 7 8 9)
myapp=> (use 'clojure.string)
WARNING: replace already refers to: #'clojure.core/replace in namespace: myapp,being replaced by: #'clojure.string/replace
WARNING: reverse already refers to: #'clojure.core/reverse in namespace: myapp,being replaced by: #'clojure.string/reverse
nil
myapp=> (join \- [0 1 2])
"0-1-2"
use中可以使用两个参数:only :exclude
user=> (in-ns 'myapp)
#<Namespace myapp>
myapp=> (clojure.core/use '[clojure.core :only [use]])
nil
myapp=> (range 10)
CompilerException java.lang.RuntimeException: Unable to resolve symbol: range in
this context, compiling:(NO_SOURCE_PATH:3)
myapp=> (first [0 1 2])
CompilerException java.lang.RuntimeException: Unable to resolve symbol: first in
this context, compiling:(NO_SOURCE_PATH:4)
myapp=> (clojure.core/use '[clojure.core :exclude [range]])
nil
myapp=> (first [0 1 2])
0
myapp=> (range 10)
CompilerException java.lang.RuntimeException: Unable to resolve symbol: range in
this context, compiling:(NO_SOURCE_PATH:7)
分享到:
相关推荐
本篇文章主要介绍了详解Node中导入模块require和import的区别,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
require和import的区别require和import的区别导入require 导出 exports/module.exports 是 CommonJS
主要给大家介绍了关于javascript中require、import与export的相关资料,文中通过示例代码介绍的非常详细,对打击大的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
(require [oj.core :as oj]) [oj.modifiers :as db]) (defn find-by-username [username] (-> (db/query :users) (db/select [:id :username :email :created_at]) (db/where {:...
(:require [schema.core :as s :include-macros true ;; cljs only ])) (def Data "A schema for a nested data type" {:a {:b s/Str :c s/Int} :d [{:e s/Keyword :f [s/Num]}...
主要介绍了JavaScript中使用import 和require打包后实现原理分析,需要的朋友可以参考下
进口于像从给定路径导入模块安装 $ npm install import-from用法 const importFrom = require ( 'import-from' ) ;// There is a file at `./foo/bar.js`importFrom ( 'foo' , './bar' ) ;原料药importFrom...
(:require [clojure2minizinc.core :as mz])) (mz/minizinc (mz/clj2mnz (let [a (mz/variable (mz/-- -1 1)) b (mz/variable (mz/-- -1 1))] (mz/constraint (mz/!= a b)) (mz/...
clojure-tensorflow, Java api的Java上的一个极轻层 和 TensorFlowJava互操作上的包装器层,用于处理 TensorFlow 。 正在启动神经网络示例(ns example.core (:require [clojure-tensorflow.ops :a
var cjs2es6import = require('cjs2es6import'); var src = "var foo = require('bar');"; var newSrc = cjs2es6import(src); // "import foo from 'bar';" demo/demo.js更多示例(运行npm start ) require()调用...
本篇文章主要介绍了Javascript(es2016) import和require用法和区别详解,具有一定的参考价值,有兴趣的可以了解下
安装npm install use-import --save配置要配置项目的名称,请在项目的根目录中创建一个名为use.json的新文件。 在这个文件中,将模块的名称映射到它们各自的文件路径: { // all key-value pairs in this file ...
clojure-twitter, 面向 Twitter API的Clojure客户端 面向Clojure的 Twitter 客户端 API从Clojure访问 Twitter API 。建筑lein depslein jar示例(require 'twitter ['oauth.
babel插件将import()语法编译为split-require ,commonjs捆绑包拆分库 此插件的v2 +可与split-require@3.1.0及更高版本一起使用。 如果使用的是旧版本,请安装babel-plugin-dynamic-import-split-require@1.x 。 ...
用法所有这些示例都可以从 Clojure REPL 运行,假设 spritz-clojure 已被要求到具有别名spritz的当前命名空间(即 with (require '[spritz-clojure.core :as spritz]) )。 ( let [message ( map byte " ABC " ) ...
安装将此行添加到您的应用程序的Gemfile中: gem 'import.rb' 然后执行: $ bundle或将其自己安装为: $ gem install import.rb用法目录class Cat def meow puts 'meow meow' endend main.rb require 'import'cat = ...
罗纳 convert require syntax to ES6 import syntax支持的转换const something = require ( "example" ) ; // => import something from "example";const Ben = require ( "person" ) . name ; // => import { name ...
irb > require 'jekyll-import' # 2. Choose the importer you'd like to use. irb > importer_class = "Behance" # an example, there are many others! # 3. Run it! irb > JekyllImport :: Importers . const_get...