用户:M.F.Hasler/动态内容
目录
动态内容
基本原则
提交捐款后(待讨论,可能取决于具体项目,是否应在提议捐款后立即完成,或在“批准”后完成)。
最肯定的是,大多数进入“记录”本身的材料都应该是这样的(LINKS,…;程序可能是一个例外,因为有太多可能的语言,所以按需制作它们更合理),而不是支持文件(b-file,graphics,…)
根据请求在服务器端(例如,通过固定链接或汇总表单生成的b文件,例如通过在“输入”文本字段中输入所需的字数并点击“回车”)。 根据具体情况,这可能会生成一个“永久”存储的文件,只缓存一段固定时间(几天或几个月),或者只发送给客户端而不存储在文件中。 在客户端,通过javascript或类似的方式。 请参见以下示例 #实施 用于为线性递归定义的序列生成给定数量的术语的Javascript。 其他一些基本形式的“动态内容”已经实现或可以添加 在提交表格上 : 根据现有序列检查DATA, b文件的LINK创建/完成(作者姓名和MIN/MAX) 更多这类内容将非常有用,例如,SeqFan帖子或维基百科页面的模板。
关键词
关键词可以在动态内容中发挥重要作用。 一个极简主义的想法已经通过“tabl”关键字实现了,它产生了一个链接,将序列显示为三角形、方形数组或右上三角矩阵。
带参数的关键字:[用户:M._F._Hasler/Work_in_progress/Improvements_of_OEIS#I._Keywords_with_parameters请参阅本页],详细介绍带参数的KW如何轻松添加许多有趣的功能,适用于多种类型的序列:tabl、cofr、frac、lrec。。。。 一个具体而简单的例子是“lrec”关键字:对于线性递归,我们有以下几种: 要么我们有一个链接(通常是最后一个)提供签名。 该链接的存在可以切换“lrec”关键字,签名作为附加参数。 但是,当“lrec”KW存在时,也可以动态生成该链接:要么将签名作为附加参数,要么将订单作为附加参数或不使用附加参数:订单和签名可以通过DATA确定。 (这也可以在没有lrec KW的情况下进行,但存在误报[DATA可能建议lrec,而我们实际上没有lrec。然后手动添加的“lrec”KW将确认推测的lrec。和/或丢失的“lrec”KW可能会切换注释“DATA表明这是##顺序的lrec,签名(…),但缺少“ LREC“关键字表明情况可能并非如此。如果你能证明或反驳,请添加评论。”) 给定签名,我们可以*容易地*(例如,标准JavaScript)计算任何所需数量的项。 这些可能 在DATA部分中递增添加,和/或 通过自定义的“b-file”链接(可能包含一个输入字段,用于输入所需的长度和/或所需的格式,可以动态生成、客户端生成(例如通过JS)或其他方式生成)。
对签名的了解还可以直接生成各种语言的各种程序(参见第…页)
链接
对于“lrec”序列,可以自动生成指向“递归…签名(…)的索引条目”的链接。 例如,假设要解析扩展关键字“lrec:c1:c2:…:cN”:
/*假设$kw对线性递归a(n+1)=1*a(n)+4*a(n-1)+……保持“lrec:1:4:3:1”*/ $coeffs=preg_split(“:”,$kw)$ order=sprintf(“%02d”,计数($coeffs)-1); $signature=内爆(“,”,array_slice($coeffs,2)); $链接。= “\n<a href='/index/Rec#order_$order'>对具有常系数的线性递归进行索引,顺序” .(int)$订单。 “,签名($signature)</a>”;
“lrec”关键字可以用系数作为附加参数,或使用LINKS部分的数据,或通过分析data字段,作为一个链接,弹出一个请求者,为用户选择的一系列索引和格式生成data(b文件,“[x,y,…,z]”格式的列表,或…) 如上所述,链接到一些标准网站,例如:wikipedia.org、seqfan.eu、mathworld,。。。 可以半自动处理:将裸链接粘贴到编辑字段的空行中(可能点击一些按钮)可以用所需内容“装饰”它:Author、HREF标记、进一步解释。
/*假设LINKS部分更新为仅包含裸链接的新行*/ $links=爆炸(“\n”,$links); foreach($links作为$index=>$line): 如果($pieces=preg_match('/\$http.*[.]seqfan.eu/pipermail/seqfan/\)\(2015年\)-\([A-Za-z]*\).*/',$line): $links[$index]=“作者,Title_Of_The_Post,SeqFan邮件列表,$pieces[3]$pieces[2]。” elseif($pieces=preg_match('/\$http.*[.]wikipedia.org/wiki/\(.*\)/',$line): $links[$index]=“维基百科,<a href='$line'>$pieces[1]</a>,检索日期”.date(“M d Y”)。 “。”; elseif(…其他类似检查…): endif; 每端; $links=内爆(“\n”,$links);
其他可能性
启动位置
作为用户脚本的基本概念证明: 用户:M.F.Hasler/动态内容/客户端
头脑风暴和讨论
[此部分页面将重新格式化并“维基化”……任何人都可以随意编辑和/或添加您的评论!]
基本思想
【2011年2月10日发送给中编辑的电子邮件】
“n,a(n)表 <a href=“ http://oeis.org/A000004/b000004.txt?1000 “>n=1…1000- <a href=“ http://oeis.org/A000004/b000004.txt?10000 “>n=1…10000- <a href=“ http://oeis.org/A000004/b000004.txt?100000 “>n=1…100000”
查尔斯·格里特豪斯的回复
正如Maximilian所建议的那样,自动生成b文件。 这可以是一次性的(创建b-files和链接,格式为“Autobot,Table of n,a(n)for n=0..10000”)、按需的(单击链接,创建并存储一个新的b-file)、静态的(从未存储过b-file,但它们是根据需要生成的)、, 或客户端(服务器只发送代码片段,查看器的计算机使用该代码片段生成b文件)。 最后一个几乎不需要任何资源,但不允许绘图。 用多种语言生成术语的程序。 OEIS中有数千个多项式序列,太多了,甚至三种主要语言也没有代码,但其他(例如Scheme)几乎没有覆盖范围。 通过将它们“放在一个地方”,我们可以用多种语言编写高质量的代码。 基本属性可以以标准格式列出。 这将更容易作为用户搜索它们,并确保所有属性都在那里。 例如:我可能查找一个序列,希望找到它的渐近增长,但许多序列没有列出它。对于所有线性递归,在一个地方这样做并不难。 (还有哪些其他类型的序列可以类似地参数化?)
这“完成了”——好吧,几乎。。。 ;) — M.F.哈斯勒 2011年2月10日16:07(UTC)