开始使用Clojure

时间:2011-06-30 17:36:34

标签: windows clojure

我是一个相对较新的人来编程,我读过SICP上半年,直到我完全是根深蒂固进入我身体的每一个细胞,实现了在Java中的基本数据结构的一类,而在数学制作的电视节目。但就我的知识而言,这就是我的问题。

我想通过的NetBeans / enclojure使用Clojure打和,说实话,我不知道怎么去任何超出在REPL构建功能和操作数据结构。

例如,我想用咒术统计的东西,但我不知道如何安装它,因为我从来没有真正使用的终端(我使用Windows Vista),不知道从哪里开始。当我搜索谷歌时,所有的教程似乎都假设了Unix的知识,或者他们假设有关emacs如何工作的知识等。

我想我正在寻找的是一个在线教程,其中涵盖了如何为不具备先前知识的编程环境设置所有内容的基础知识。

谢谢,

布赖恩

6 个答案:

答案 0 :(得分:6)

我对编程也比较陌生。我的建议是Unix或Linux是更容易编程的环境。我知道你说你没有相关经验,但你可以在下午拿起基本命令。例如,学习基本的Unix命令比学习Java或Clojure要容易得多。优点是,一旦你对Unix / Linux有一些基本的熟悉,那么其余的环境变得更加简单。对于以前从未使用过的人来说,这是Unix的指南: http://www.ee.surrey.ac.uk/Teaching/Unix/

尝试一下的快速方法是下载Cygwin,它是一个在Windows中运行的Unix模拟器。您可以安装它然后尝试Unix。此外,当您安装Cygwin时,您将获得可以随其安装的语言和文本编辑器列表,因此设置该环境变得相当容易: http://www.mcclean-cooper.com/valentino/cygwin_install/

我不建议永远使用Cygwin,它只是一种开始,看看你是否喜欢在Unix环境下编程的方法。

答案 1 :(得分:5)

你可以拿一本描述Clojure的书 - 例如,实用的Clojure,而不是 - Clojure的喜悦 - 这些书让你理解语言。

关于安装插件等,您可以阅读following page。项目通常由MavenLeiningen维护(我提供了我的文章的链接)。像Incanter这样的依赖关系可以通过clojars找到,并放入项目的文件中。

和clojure邮件列表 - 提问的好地方......

答案 2 :(得分:3)

Clojure非常有趣,并且管理依赖项不是。

我认为使用leiningen创建和构建具有依赖关系的项目将帮助你跳到有趣的部分 :)来自windows的Leiningen工作得很好我听到的虽然我没有看到很多优势试图摆脱CLI。你应该很好地坚持使用windows并且可能花一些时间使用windows shell(或powershell)我听到很多关于它的好东西。

哦,还有另一个对clojure欢乐的投票:)

答案 3 :(得分:3)

如果您严格使用Windows环境,那么我可以推荐clojure box。

http://clojure.bighugh.com/

如果您很灵活,我建议您设置虚拟机(使用Virtualbox)并在* nix环境中工作。幸运的是,您可能不需要做太多事情,因为有配置编辑器,依赖关系管理以及配置和安装的其他工具的交钥匙解决方案。

请参阅 http://technomancy.us/150

一些例子包括: http://github.com/notifymd/vagrant-clojure-box http://github.com/Seajure/emacs-clojure-vagrant

但是,需要注意的是,这些似乎确实依赖于宝石。

作为奖励,如果您愿意花时间学习* nix,那么我也可以推荐我的依赖管理软件。你应该可以使用任何编辑器,但我只熟悉emacs。如果你告诉我你的用途,我应该可以帮你设置它。

http://github.com/bmillare/dj

答案 4 :(得分:2)

我喜欢保持简单。对于Netbeans,您需要导入Incanter JAR文件,因为它们只是Java库。搜索如何将库添加到Netbeans。完成后,您可以在Netbean的REPL中使用Incanter。

一旦您想了解更多信息,请在此处按照其他人的建议学习Leiningen,命令行界面,Linux,emacs等。

答案 5 :(得分:1)

不幸的是,为Clojure设置开发环境只是学习它的最难的部分。没有单一的,规范的方法可以做到这一点,正如这个问题的所有其他答案所示。

您可能考虑的另一个选项是LispCabinet。尽管它的名字,它提供的选项之一是建立一个Clojure编程环境。这种方法的一些优点是1)它在Windows中工作,2)它是一个Emacs环境,因为你找到的很多教程都谈到了如何用这个编辑器做事,3)它使探索变得容易和CLISP和SBCL等其他更传统的Lisps一起玩。

我也开始使用NetBeans和enclojure。我非常喜欢NetBeans for Java和PHP,但是看起来似乎并不稳定。它不断打破。所以我放弃了它。

如果您喜欢这些环境,还有IDEA和Eclipse的插件。

但实际上,我推荐LispCabinet。您可以在我的博客http://clarkonium.net/2011/02/getting-started-with-lispschemeclojure/上看到稍长的理由。