AnyLang 编程语言比较/Anylang 通用概念
外观
以下是 AnyLang 通用概念的中心列表。 这些是跨多个主流编程语言比较和应用的常见编程概念。
代码块 | ||
block.case_if | 条件情况语句 | |
block.catch | catch 块 | |
block.die | 如何使用错误消息终止进程 | |
block.else | else 语句 | |
block.else_if | elseif 语句 | |
block.finally | finally 块 | |
block.if | if 语句 | |
block.pause | 如何暂停进程 | |
block.qmark_if | 三元问号条件 if 语句 | |
block.quit | 如何终止进程 | |
block.switch | switch 语句 | |
block.try | try 块 | |
block.try_catch | 一个简单的 try-catch 块 | |
代码注释 | ||
codecmmt.beginend | 一个通用的 begin-end 多行注释区域 | |
codecmmt.docgen | docgen 标签 | |
codecmmt.multi | 多行注释 | |
codecmmt.single | 单行注释 | |
codecmmt.xregion | my_generic_region 标签 | |
调试操作 | ||
codedebug.log | 将错误和程序信息记录到日志文件 | |
codedebug.test | 用于调试或示例的 if 语句 | |
代码的基本结构元素 | ||
codeelem.block | 裸代码块 | |
codeelem.end_code | 结束代码 | |
codeelem.init_code | 初始化代码 | |
codeelem.init_lib | 初始化库 | |
codeelem.init_vars | 初始化变量 | |
codeelem.line_contin | 将换行符放在语句中间的行延续(语言相关) | |
codeelem.line_termin | 行终止符(例如分号),对于需要它的语言 | |
codeelem.named_block | 命名代码块 | |
codeelem.new_doc | 一个新文档 | |
codeelem.new_footer | 文档页面中的新页脚 | |
codeelem.new_header | 文档页面中的新页眉 | |
codeelem.new_lib | 作为库模块的新文档(对构成模块的任意定义) | |
codeelem.new_page | 文档中的新页面(对构成页面的任意定义) | |
codeelem.new_rec | 新的记录条目 | |
循环结构 | ||
codeloop.arr | 遍历数组 | |
codeloop.dic | 枚举或遍历字典中的键和值 | |
codeloop.dir | 遍历目录中的项目 | |
codeloop.foreach | for bar in foo | |
codeloop.whilevar | 带有变量的 while 循环 | |
codeloop.forvar | 旧的 c 风格循环(for icc=0; icc ~ foo.length; icc++) | |
codeloop.last | 循环控制最后一次迭代 | |
codeloop.modify_in_place | 遍历数组(或可迭代对象)并就地修改元素 | |
codeloop.next | 循环控制,跳过到下一次迭代 | |
codeloop.rows | 遍历 SimpleTable 中的行 | |
codeloop.while | while 语句 | |
元数据 | ||
codemeta.args | 传递到当前脚本的命令行参数 | |
codemeta.current_os | 获取我们正在运行的当前操作系统 | |
codemeta.docs_class | 自文档化类 | |
codemeta.docs_func | 自文档化函数 | |
codemeta.docs_funcparam | 自文档化函数参数 | |
codemeta.docs_meth | 自文档化方法 | |
codemeta.docs_methname | 返回当前正在运行的方法的名称 | |
codemeta.docs_methparam | 自文档化方法参数 | |
codemeta.nameismain | 确定源文件是否是当前“主”命名空间 [websearch://"python main trick"] | |
codemeta.newdoc | 此语言中新文件的起始模板 | |
codemeta.quick_docs | 语言结构的帮助工具 | |
codemeta.source_line | 当前源文件中的当前行 | |
codemeta.source_path | 当前源文件的完整路径 当前正在运行的脚本路径 |
|
codemeta.source_pdir | 当前源文件的父目录。 使用源文件本身的路径,而不是通过 *include* 或 *require* 调用的文件的路径 | |
codemeta.version | 当前脚本或语言解释器的语言版本 | |
源代码区域 | ||
coderegion.details | xregion 元数据岛的工作表 | |
coderegion.file_info | 文件信息元数据岛 | |
coderegion.generator | xregion 元数据岛的工作表 | |
coderegion.main | xregion 元数据岛的工作表 | |
coderegion.see_also | xregion 元数据岛的工作表 | |
控制台操作 | ||
console.print | 打印到控制台 | |
console.printf | 格式化打印到控制台 | |
console.println | 打印到控制台,并换行 | |
数据定义和模式 | ||
datadef.aoh | 就像 perldsc AoH 一样 | |
datadef.1yamlrec | 小型 yaml 语法 | |
datadef.2yamlrec | 中等 yaml 语法 | |
datadef.3yamlrec | 大型 yaml 语法 | |
datadef.newtable | 一个新的 ReallySimpleData 表 | |
datadef.newwkbk | 一个新的 ReallySimpleData wkbk | |
datadef.newwksheet | 一个新的 ReallySimpleData 工作表 | |
datadef.nvp | SimpleNameValuePair | |
datadef.simplerec | SimpleRecord | |
datadef.simpletable | 创建一个类似于 perl AoH 的 SimpleTable 结构 | |
datadef.simpletable_iv | 创建一个类似于 perl AoA 的 SimpleTable 结构(IV = IndexedValues) | |
datadef.yamlrec | SimpleRecord yaml 语法 | |
数据处理操作 | ||
datamunge.json_munge | 将变量转储到 json 并从 json 中加载回来 | |
datamunge.dec_base_64 | 解码 base64 格式 | |
datamunge.dec_htmlent | 解码 HTMLEnt 格式 | |
datamunge.dec_jscript | 解码 jscript_url_style 转义 | |
datamunge.dec_rot_13 | 解码 rot13 格式 | |
datamunge.enc_base_64 | 编码 base64 格式 | |
datamunge.enc_htmlent | 编码 HTMLEnt 格式 | |
datamunge.enc_jscript | 编码 jscript_url_style 转义 | |
datamunge.enc_rot_13 | 编码 rot13 格式 | |
日期和时间操作 | ||
datetime.2date_fmt | 指定一个字符串,例如“Fri Sep 9 13.46.58 2005”(perl localtime() 在标量上下文中的结果) | |
datetime.date | 当前系统日期 | |
datetime.datem | 指定一个字符串,例如 Fri 2005-08-26 13.23.03(首选) | |
datetime.day_of_week | 当前系统星期几 | |
datetime.month | 当前系统月份 | |
datetime.now | 当前系统时间和日期 | |
datetime.time_millisec | 返回带有毫秒精度的当前时间(用于时间戳) | |
datetime.year | 当前系统年份 | |
错误捕获和异常 | ||
error.arr_bounds | 数组索引超出范围 | |
error.dict_keyex | 字典键不存在 | |
error.warnings | 启用或禁用警告 | |
文件系统操作 | ||
filesys.basename | 从路径获取文件名 | |
filesys.copy | 复制文件或目录 | |
filesys.delete | 删除文件或目录 | |
filesys.deltree | 删除目录树 | |
filesys.dir_exists | 如果目录存在则为 true | |
filesys.exten | 从完整路径获取文件扩展名 | |
filesys.file_exists | 如果文件存在则为 true | |
filesys.file_size | 以整数形式返回文件大小(通常以字节为单位) | |
filesys.loop_dir | 遍历目录中的文件 | |
filesys.loop_tree | 递归遍历目录树中的文件 | |
filesys.mkpath | 创建目录,即使缺少多个路径步骤 | |
filesys.move | 移动文件或目录 | |
filesys.parent_dir | 从完整路径获取文件父目录 | |
filesys.rename | 重命名文件或目录 | |
函数参数 | ||
funcarg.arg_array | 指定包含多个参数的数组 | |
funcarg.arr | 数组声明函数参数 | |
funcarg.boo | 布尔声明函数参数 | |
funcarg.defval | 指定函数参数的默认值 | |
funcarg.int | 整数声明函数参数 | |
funcarg.obj | 对象声明函数参数 | |
funcarg.opt_arg | 指定可选参数 | |
funcarg.passfunc | 将函数作为参数传递 | |
funcarg.passobj | 传递包含多个参数的对象或字典 | |
funcarg.req_arg | 指定必需参数 | |
funcarg.str | 字符串声明函数参数 | |
函数定义 | ||
funcdef.1func | 小型语法声明函数 | |
funcdef.1meth | 小型语法声明 oop_method | |
funcdef.2func | 中等语法声明函数 | |
funcdef.2meth | 中等语法声明 oop_method | |
funcdef.3func | 大型语法声明函数 | |
funcdef.3meth | 大型语法声明 oop_method | |
funcdef.closure | 函数作为完整的闭包 | |
funcdef.funcdef | psu funcdef 模板 | |
funcdef.funcdsp | 函数 DspTemplate | |
funcdef.funcmeta | 将任意元数据附加到函数 | |
funcdef.lambda | 函数作为 python-lambda 风格表达式 | |
基本 GUI 显示 | ||
guidsp.alert | GuiAlert(sPrompt) 带有确定按钮的警报框 | |
guidsp.button | 通用按钮控件 | |
guidsp.checkbox | 与 html//inputCheckbox 相同的通用复选框控件 | |
guidsp.combo_box | 与 html//Select 相同,但用户也可以提供一个值 | |
guidsp.date_time | 一个看起来像单行编辑框的框,但它接受日期和/或时间。 还提供了一个下拉日历 | |
guidsp.edit | 与 html//textarea 相同 | |
guidsp.grid | 网格和列表控件 | |
guidsp.group_box | 矩形边框/框架 | |
guidsp.hotkey | 一个看起来像单行编辑框的框,但它接受用户按下的键盘组合 | |
guidsp.input_box | strVal = GuiInput(sPrompt | |
guidsp.month_cal | 一个相对较高的控件,以日历格式显示一个月的所有日期 | |
guidsp.pass | 简单的密码输入框,与 html//inputPassword 相同 | |
guidsp.picture | 一个包含图片的区域 | |
guidsp.progress | 进度条 | |
guidsp.radio | 通用的单选按钮,与 html//inputRadio 相同 | |
guidsp.range | 上下箭头,用于在一定范围的整数之间切换 | |
guidsp.rich_edit | 带格式的富文本框 | |
guidsp.select | 与 html//Select 相同 | |
guidsp.select_multi | 与 html//Select with multiple='true' 相同 | |
guidsp.slider | 一个滑动条,用户可以在垂直或水平轨道上移动 | |
guidsp.tab | 包含多个页面的控件 | |
guidsp.text | 简单的文本输入框,与 html//inputText 相同 | |
GUI 窗口 | ||
guiwin.center | 将窗口相对于桌面(或父窗口)居中 | |
guiwin.coords | 指定窗口相对于桌面(或父窗口)的位置 | |
互操作性 | ||
interop.alt_interop | 互操作的不同替代方案 | |
interop.com_object | 如何实例化 msft OLE COM 对象 | |
interop.shell_run | 运行外部程序,例如 ShellRun('notepad.exe') 作为独立进程 | |
interop.shell_runwait | 运行外部程序并等待其完成 | |
代码库和附加组件 | ||
lib.include_lib | 包含库文件 | |
lib.include_once | 仅包含库文件一次 | |
OOP 类 | ||
oopclass.class_constructor | 类的构造函数方法 | |
oopclass.new_class | 一个新的 OOP 类 | |
oopclass.reflect_classname | 从类本身获取类的名称 | |
OOP 方法 | ||
oopmeth.alias | 为 oop 方法创建别名 | |
oopmeth.filter | 根据任何条件迭代通过类的所有选定方法的名称 | |
oopmeth.instance | 在类中声明一个实例方法 | |
oopmeth.invokeoperator | 用作方法调用运算符的符号 | |
oopmeth.multilevel | 声明和使用嵌套方法(例如,mymap.delaware.dover.getpopulation()) | |
oopmeth.reflect | 迭代通过类的所有方法的名称 | |
oopmeth.static | 在类中声明一个静态方法 | |
oopmeth.symbolic | 使用标量作为方法名称调用 oop 方法 | |
OOP 对象 | ||
oopobj.new_instance | 一个新的 OOP 普通对象。 创建一个对象(也称为类的实例)。 | |
OOP 引用 | ||
oopref.symbolic | 使用标量作为类名(不使用字符串 eval)从 oop 类实例化对象 | |
正则表达式和相关概念 | ||
regex.22_notation | 指定单个字符 char 的符号 | |
regex.backref | RegEx 在匹配区域或替换区域内记忆捕获寄存器 | |
regex.basic_syntax | RegEx 基本语法 basic_ops | |
regex.capture | 指定一个捕获匹配寄存器 | |
regex.match | RegEx 匹配操作 | |
regex.noncapture | 指定一个非捕获分组匹配寄存器 | |
regex.replace | RegEx 替换操作 | |
SQL 和相关概念 | ||
sqldata.bulk_insert | 使用文本文件作为原始数据填充 SQL 表 | |
格式化和在源代码中使用字符串 | ||
strdsp.esc_bs1 | 注意 regex22 更好 | |
strdsp.esc_bs2 | 注意 regex22 更好 | |
strdsp.esc_qq1 | 注意 regex22 更好 | |
strdsp.esc_qq2 | 注意 regex22 更好 | |
strdsp.here_doc | 像 perl heredoc 一样在代码中指定多行字符串 | |
strdsp.here_func | heredoc 函数 | |
strdsp.here_str | 字符串在变量中 | |
strdsp.here_var | 字符串中的插值变量 | |
strdsp.heredoc_indent | heredoc 与代码的其余部分一起缩进 | |
strdsp.interpo | 指定一个可能包含插值的字符串变量 | |
strdsp.number_format | 为区域设置或数据显示美化格式化数字 | |
strdsp.printf | 指定一个具有特殊格式选项的字符串变量 | |
strdsp.skeleton_fill | 填写 SimpleTemplate 的内容 | |
strdsp.verbatim | 指定一个不包含插值的字符串变量 | |
保留供日后使用 | ||
system.timeout | 如果进程花费的时间过长,则抛出异常或终止进程 | |
模板 | ||
template.delim | 指定模板分隔符的语法 | |
template.valueof | 模板样式编程的输出值 | |
数据验证 | ||
valid.file_exist | 如果文件存在于文件系统中,则为真 | |
valid.file_not_exist | 如果文件不存在于文件系统中,则为真 | |
valid.is_numeric | 表达式计算结果为数字 | |
valid.is_string | 表达式计算结果为字符串 | |
valid.is_true | 表达式计算结果为真值 | |
变量声明 | ||
vardec.myarr | 快速声明数组 | |
vardec.myboo | 快速声明布尔值 | |
vardec.mydic | 快速声明字典 | |
vardec.myint | 快速声明整数 | |
vardec.myobj | 快速声明对象 | |
vardec.mystr | 快速声明字符串 | |
vardec.null | 在源代码中表示一个空值 | |
使用变量 | ||
varops.array_assign | 将值分配给数组 | |
varops.array_decl | 声明数组 | |
varops.array_init | 初始化数组 | |
varops.composite_defn | 定义一个复合变量(例如,像 perl 数据结构食谱一样) | |
varops.composite_manip | 操作一个复合变量(例如排序、搜索过滤视图添加编辑删除) | |
varops.dumper | 像 perl DataDumper 一样转储变量内容 | |
varops.object_assign | 将值分配给对象 | |
varops.object_decl | 声明对象 | |
varops.object_dupe_byref | 浅拷贝并通过引用复制一个对象或嵌套变量 | |
varops.object_dupe_byval | 通过值复制并复制一个对象或嵌套变量 | |
varops.object_init | 初始化对象 | |
varops.scalar_assign | 将值分配给标量 | |
varops.scalar_decl | 声明一个标量 | |
varops.scalar_init | 初始化一个标量 | |
varops.typecast | 将变量的本机类型转换为另一种类型 | |
varops.vartype | 获取变量的本机类型 | |
Web 和 HTTP | ||
webhttp.htinclude | 转clusion 将一个页面或页面片段包含到另一个页面中 | |
webhttp.cflocation | 像 coldfusion cflocation 一样重定向到新页面 | |
webhttp.cgi_referrer | 客户端引用 URL | |
webhttp.cgi_remoteaddr | 客户端 IP 地址 | |
webhttp.server_get | 使用服务器端代码从另一个站点获取网页 |