Mathematica/笔记本
自创建以来,Mathematica 作为科学和技术出版系统飞速发展。因此,其用于创建和管理“代码”的基本功能与用于制作演示文稿和出版物的功能紧密结合。这使得它对于希望在写作时进行实验的人来说极具吸引力。
使用笔记本界面,您可以
- 编写出版质量的文本
- 使用整个 Wolfram 语言进行实验
- 创建出版质量的可视化
- 以结构化方式嵌入数据
此类功能需要比我们许多人熟悉的普通行式源代码编辑器更多的东西。随着对 Wolfram Alpha 的直接支持的加入,它拥有的丰富功能远远超出了首次使用者的直观认识。
打开空白 Mathematica 笔记本时,有一些事情是首次使用户可能没有预料到的。
笔记本中的每个所谓的“行”都与之关联着一些默认情况下不会显示的信息。在下面,您可以看到用户插入单个空白行后文档中实际存储的内容。
Cell[BoxData["\[IndentingNewLine]"], "Input"...
CellChangeTimes->{3.683148855629257*^9}]
...在输入简单的计算后...
Cell[BoxData\[
RowBox[{"2", "+", "2"}]], "Input",
CellChangeTimes->{3.683148855629257*^9, {3.6831491544597797`*^9, 3.683149177585519*^9}}]
... 以及使用 SHIFT-ENTER 执行该行后。
Cell[BoxData[
RowBox[{"2", "+", "2"}]], "Input",
CellChangeTimes->{3.683148855629257*^9, {3.6831491544597797`*^9, 3.683149177585519*^9}}]
Cell[BoxData["4"], "Output",
CellChangeTimes->{{3.683149161939064*^9, 3.6831491686292057`*^9}}]
如果您对 Mathematica 有所了解,您会立即注意到,所有显示的内容在 Wolfram 语言中都是有效的语句。这是因为,对于 Mathematica 和许多其他所谓的函数式语言来说,代码与数据没有区别。作为数据,它旨在以任何最适合用户实现其所需结果的方式进行操作。
话虽如此,上述内容中没有任何内容是 Wolfram 代码执行所必需的。笔记本界面也不需要开发 Mathematica 解决方案。实际上,您可以使用任何标准文本编辑器编写 Mathematica 程序。包括像 vi、Emacs 这样的最爱,或者对于 Windows 用户来说,还有记事本。
请注意,其他应用程序最近实现了类似于 Mathematica 笔记本界面的功能。在 Macintosh Xcode 上,Apple 的集成开发环境 (IDE) 自版本 6 起就拥有一个名为 Playground 的功能。Xamarin Studio 拥有其 Sketch 功能。此外,其他一些 IDE,如 Visual Studio、Eclipse 和 JetBrain 的 Intelli-J Idea,都拥有各种集成和第三方解决方案,其目的是允许用户在键入一行或多行代码时立即看到发生的情况。