问题标签 [zipper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
clojure - Clojure:拉链-> html
经过几天尝试将我的大脑包裹在拉链上,我想我终于明白了如何从顺序数据中创建它们。
但是,在搜索了几天之后,我似乎找不到任何关于如何将拉链转换为其他东西的资源。基本上,我想将一些数据转换为可以传递给 Hiccup 以生成一些 HTML 的格式。
关于将拉链树转换为不同的数据结构应该做些什么,有什么好的资源吗?
haskell - 共同寻找所有关注网格的方法
首先是一些背景(哈哈)。我在非空列表上有一个拉链。
您可以沿着拉链向任一方向迈进,但您可能会从末端跌落。
复制拉链向您展示了您可以查看它的所有方式,重点是您当前查看它的方式。
例如:
(我使用大写和星号来表示拉链的焦点。)
我正在尝试使用具有焦点的二维网格,表示为拉链的拉链。每个内拉链都是一排格子。我的最终目标是通过从邻居跳到邻居来找到穿过网格的路径。
在网格中移动保持所有行都集中在同一个索引上的不变性。这使您可以轻松地专注于您的任何邻居。
例子:
我想要的是LZipper
's duplicate
for grids 的等价物:一个函数,它接受一个网格并生成一个网格,其中包含您可以查看网格的所有方式,重点是您当前查看它的方式。
我所期待的:
我试过了duplicateGrid = duplicate . duplicate
。这具有正确的类型,但是(假设我show
正确地解释了输出,我可能没有)它只给了我集中在第一列某处的网格:
我也试过了duplicateGrid = duplicate . fmap duplicate
。再次假设我能够解释show
输出,这给了我一些包含错误网格并且行的焦点未对齐的东西,这样向下移动也会让你继续前进:
对于那些知道的人来说,这感觉像是一个简单的问题,但它让我头晕目眩。我想我可以手动启动一个调用up
,和的函数down
,但我觉得 comonadic 机器应该能够为我做这件事。什么是正确的实现?left
right
duplicateGrid
xml - 在 let 中使用 xml->
我有一些代码,它使用拉链解析出肥皂数据。当我像这样格式化它时,它按预期工作
它打印出预期的结果。但是当我将 XML 解析移到 let 语句时,它无法编译,并出现以下错误(我已经三次检查括号是否匹配)
代码改成把xml-z/xml->调用放到let语句中,如下
这是 let 表单的错误,还是我错过了有关 xml-> 功能的行为?
带有非工作函数调用的完整代码文件:
src/hello/core.clj:
项目.clj:
clojure - 找到所有的父母就像穿过一棵树
我想用来clojure.zip
遍历这棵树并打印节点及其父节点。我很难找到父母。例如:e
is的父级:b
。
这是结果:
我可以继续改进这个parent-of
功能——我的下一个想法是去最左边的节点。将会有一个算法可以从所有位置返回正确的答案 - 但是,以这种方式进行似乎对于一个共同的要求来说是相当多的工作。
我应该采取更好的方法吗?
编辑
这个问题不是关于clojure.walk
or Spector
。我正在寻找一个答案,它使用clojure.zip
并给出我在问题中定义的父级,这只是loc
. 所以如果loc
给定的parent-of
是:f
我希望它返回:c
。
如果有人可以告诉我,作为评论,拉链不再真正使用,并且说clojure.walk
或者Spector
是当前用于导航树木的最佳实践方式,那么这将有所帮助。
xml - Clojure XML 拉链行走和修剪
我正在走一个 html/xml 数据结构。我使用clojure.zip
. 一旦找到我想要cut
(修剪)的节点,我就找不到删除所有子节点和右节点的方法。
例子:
假设我有这棵树(代表 html):
我解析它,xml-zip
它,在行走时的某个时刻,我最终到达了节点“D”,我想在其中剪切。我现在需要返回没有“E”、“C”(子)和“D”的根。这些是此时使用时尚未访问的所有节点next
。
我将如何删除这些节点?
注意:如果这不可行,我也欢迎一种复制拉链的方法cut
。
示例数据:这是我对上述树的解析数据,我称之为xml-zip
:
我开始像这样遍历它以获取内容:
另一个例子:
以下字符串:"<article><h1><img href=\"some-url\"></img> some-text <b>in bold</b></h1><ul><li> AA </li> <li>BB</li></ul></article>"
将为我提供以下地图:
在“some-text”切割时,它最终应该导致字符串 <article><h1><img href=\"some-url\"></img> some-text</h1></article>
php - 如何在 Zipper 中使用 usePassword 方法?
请告诉我如何使用“usePassword”方法提取受密码保护的 zip 文件。
在上面的代码中,我想使用 usePassword 方法使用密码进行 zip 提取,因为 $value1 是受密码保护的 zip。但我不知道如何将这种方法用于 Zipper。请帮助我。我也在 github问题中发帖
提前致谢
scala - 无法压缩分区数不相等的 RDD。我可以使用什么来替代 zip?
我有三个相同大小的 RDDrdd1
包含一个字符串标识符,rdd2
包含一个向量并rdd3
包含一个整数值。
本质上,我想将这三个压缩在一起以获得 RDD,RDD[String,Vector,Int]
但我不断得到不能压缩分区数不相等的 RDD。我怎样才能完全绕过 zip 来做上述事情?
php - PHP 无法访问新创建的 zip 文件
我使用 Laravel 5.2 和Zipper快速创建 ZIP 存档并由用户下载。我认为这个问题通常与 Laravel 或 Zipper 没有严格的关系。脚步:
- 用户点击链接download_all。
- 第一个 php 脚本创建存档。
- 接下来,相同的脚本推送创建的文件以强制用户下载。
一切听起来都很正常,但我有奇怪的行为,在创建 zip 存档后(第 2 点)php/server看不到这个新创建的文件。$filePath 上的 filesize 和 file_exists 都返回 false,但文件存在。我无法读取文件,为什么?
当我将用户重定向到 $filePath (而不是阅读并推送下载)时,一切正常,用户获取文件。但是为什么我在“脚本生命周期”期间无法访问新创建的文件?$paths 是正确的。在 Windows 7 和 Unix 上测试。
任何想法?
代码:
php - Laravel Chumper Zipper 如何在没有特定文件夹名称的情况下提取
我有一个这种格式的 zip 文件:
我可以使用这个来提取:
如何在不指定 zip 中的文件夹名称的情况下提取内容?
谢谢!
haskell - 疤痕有什么用?
在 Huet 题为“拉链”的论文中,他还提到疤痕是拉链的一种变体。与在 Haskell 社区中广为人知的拉链相比,疤痕几乎闻所未闻。从我能找到的论文本身和互联网上的任何地方,关于它们的信息很少。
所以我不得不问,它们是根本没有用,还是它们有什么用处,但大多数人不知道它们?