<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />本文最初发表于 JMPer Cable,第 26 期,2010 年冬季
约瑟夫·摩根约瑟夫·摩根, JMP 高级软件开发人员, SAS
笔记:本文中的 JSL 与 JMP 9 及更高版本兼容。因此,该代码可能无法反映随 JMP 9 之后发布的 JMP 版本引入的 JSL 的功能。
介绍
许多初级和中级 JMP 脚本语言 (JSL) 程序员都没有意识到 JSL 表达式中抽象的强大功能。 这种元编程结构并不总是在广泛使用的编程语言(例如 C++)中可用,但在函数式编程语言(例如 Lisp)中很常见。
事实证明,当正在开发的应用程序很复杂时,这种构造特别有用。 它们促进流程抽象。 Robert Sebesta (1999) 描述了抽象:
“能够定义并使用复杂的结构或操作,从而忽略许多细节。 允许的抽象程度及其表达的自然度很重要。”
本文试图揭开 JSL 表达式处理函数的神秘面纱,并展示如何使用这些函数来解决重要的 JSL 编程挑战。
结论性意见
这些示例的主要目的是说明几个表达式处理函数的使用。 第二个目的是指出 JSL 程序员在尝试使用这些函数时有时会遇到的常见错误和误解。 希望我们已经部分实现了这一目标。
参考
SAS Institute, Inc. (2008),JMP 脚本指南,北卡罗来纳州卡里:SAS Institute, Inc.
Sebesta, Robert M. (1999),《编程语言的概念》,Addison Wesley,雷丁,马萨诸塞州。
约翰,
约瑟夫·摩根约瑟夫·摩根计划在 2015 年夏末推出第 2 部分。我们计划在 JMP 社区中发表他的文章以及所有其他 JMPer Cable 文章。
JMPer Cable 的过刊在这里: http://www.jmp.com/en_us/newsletters/jmper-cable/back-issues.html
很棒的文章!我在哪里可以找到 JMPer Cable 的第 2 部分或过刊?