Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#开发者的通用Lisp IDE?_C#_Visual Studio_Eclipse_Ide_Common Lisp - Fatal编程技术网

C#开发者的通用Lisp IDE?

C#开发者的通用Lisp IDE?,c#,visual-studio,eclipse,ide,common-lisp,C#,Visual Studio,Eclipse,Ide,Common Lisp,更新 我已经决定暂时和Clojure一起去 LispDev还没有准备好,Eclipse/cusp不够稳定,我感觉不舒服 至于Clojure,在经历了一个漫长、非常令人沮丧、非常烦人的过程,试图让Eclipse/CCW、Netbeans/Enclojure和IntelliJ/La Clojure工作之后,我终于让Eclipse/CCW工作了。其余的大部分仍然处于崩溃状态 (如果我有时间,我会记录下让Eclipse/CCW工作所需的时间。) 所以现在,我要用它。我可能会回到CL,看看LispWork

更新

我已经决定暂时和Clojure一起去

LispDev还没有准备好,Eclipse/cusp不够稳定,我感觉不舒服

至于Clojure,在经历了一个漫长、非常令人沮丧、非常烦人的过程,试图让Eclipse/CCW、Netbeans/Enclojure和IntelliJ/La Clojure工作之后,我终于让Eclipse/CCW工作了。其余的大部分仍然处于崩溃状态

(如果我有时间,我会记录下让Eclipse/CCW工作所需的时间。)

所以现在,我要用它。我可能会回到CL,看看LispWorks和AllegroLisp的免费版本,但Clojure对我来说是在Microsoft CLR环境中工作的更自然的一步

谢谢大家的帮助


原始问题

我是一名C#开发人员,非常熟悉Visual Studio(使用Resharper)

我是口齿不清的新手。最近,我对Common Lisp和Clojure都很感兴趣,并找到了大量关于它们的好资料

我尝试过Emacs+Slime,但它感觉像是一个非常落后、过时的解决方案。我毫不怀疑它的威力,但它的可用性和我习惯的完全不同。除了语言之外,我不想与IDE斗争

Clojure和CL都有Eclipse插件。我还看到了更多的Clojure选项。因为我不是Java开发人员,所以我对这些IDE一无所知

Eclipse是一个好的起点吗?还有其他好的选择吗

编辑:

以下是我习惯的功能:

  • 语法突出显示和自动缩进(每个人都有这一点,所以这是一个没有意义的观点)
  • 函数和变量名的自动完成
  • 实时显示所有函数重载和参数,以及在键入参数时在列表中向上/向下箭头的功能
  • 代码改进的语法建议,并能够为您提供这些建议(“使用常量”、“转换为LINQ表达式(FP)”、“变量永远不会被赋值”、“变量永远不会被使用”、“变量可能为null”、“函数永远不会被使用”等)
  • 提取方法/函数重构:选择一块文本,可以将其提取到新函数中
  • 创建变量重构:选择一块文本并创建一个变量(例如let)
  • 重命名重构:重命名函数或变量声明,使用它的所有其他函数将被更新(自动搜索/替换)
  • 转到方法/函数的定义,变量
  • 查找特定方法/函数、变量的用法/引用
  • 集成的基于文件夹的项目管理工具和构建工具
  • “将类移动到新文件”,它基于类名创建一个新文件,并包含其所有方法
  • “基于类类型重命名文件”,如果更改类名,将重命名文件
  • F9/单击行左侧以添加/删除断点
  • F10/F11在调试时单步执行或跳过代码,并带有箭头和高亮显示以显示当前正在执行的代码(单步执行func,或仅在此处执行)
大多数内容都可以在右键单击的上下文菜单中使用,或者在键入时作为悬停组合框或文本框使用

我并不是说emacs/slime不能做到这一点,但如果它做到了,它就不会在可用性技术方面使用任何类似的技术。

也许你应该试一试


还有,和。

Allegro Common Lisp附带了一个可能会引起兴趣的工具(尽管我不确定是否可以与其他Lisp一起使用)。Eclipse插件称为Cusp,可以找到它,尽管其中有一个分支称为lispdev,可能是最近更新的

LispGameWiki上可能有一些有用的东西,特别是有用的应用程序页面


就我个人而言,我喜欢将Emacs+Slime与一些Emacs工具结合使用,这些工具的设计目的是使其更像IDE。

如果您习惯于Visual Studio,并且希望为Lisp提供类似的产品,那么类似的产品可能会是类似的商业IDE。我知道的最重要的是和

我个人并没有在实际工作中使用这两种方法(例如,一个大项目),尽管我已经尝试过演示。它们看起来很不错,虽然有点复杂,界面也很怪异,但对我来说,它们并不比Slime值钱。但是如果你想要像VS这样的东西,它们可能正是你想要的

FWIW,我在Emacs中同时使用C#和Common Lisp,我发现Slime比我目前发现的任何一组编辑C#的模式都要好10倍。想想看,我不知道有哪种语言或平台的开发环境我更愿意使用——它是那么好

您可能会遇到的一个问题是,Lisp本身与您习惯的语言完全不同,旧的做事方式不再适用,因此任何IDE在您看来都可能是“倒退的”。(我早在C#之前就学会了Lisp,而C#对我来说似乎很落后和过时!)因此,您不是在学习一些Slime命令(您真正需要的命令并不多),而是在学习IDE命令,这对您来说可能并不容易,因为概念是相同的,并且不一定映射到VS-like IDE特性

但无论你选择什么,祝你好运

C#主要用于批处理模式。IDE显示了这一点。它知道固定语言的语法,调用编译器并使用各种工具(如编译器)的输出

CommonLisp略有不同。IDE要么集成到通用Lisp(Allegro CL、LispWorks、CCL)中,要么集成在类似于Emacs的东西中,并连接到运行中的Lisp(SLIME/Emacs)。主要的发展模式是互动式的。程序正在运行,IDE会对其进行修改

对于Emacs,可以使用SLIME和Paredit扩展。请参阅:

  • 语法突出显示和自动缩进(每个人都有这一点,所以这是一个没有意义的观点)