Heterogeneity 更改标题为「【已解决】通道运算符与向量切片

yihui dapengde 我歪个楼,看到这样的发帖是赏心悦目的,对于经常逛论坛的人来说,自然优先回复,因此,我想怎么标记这种正确的发帖姿势,因为下次遇到很不规范的发帖,就可以从这些规范的发帖中随手选一则过去,可能比起让他去看左上角新手须知好很多,感觉总有人没有耐心规范发帖,比如这贴

可能立马有人要跳出来反驳我了,你不回就是了,我就这么发帖,毕竟怎么发帖和回帖都没有强制性的规则,比如这贴

5 天 后

管道操作必须与纯函数,向量式编程三者联合起来实现数据流编程,才是正确的使用姿势,只需很简单的几个基本组件就可以了,很简单,

另外,管道是正向前进的顺序结构.

可以参考一下我的博客PurefunctionPipelineDataflow

    Heterogeneity

    他那博客我看了,通篇比喻来比喻去然而言之无物,拿一堆自造的"看上去很专业"的专有名词堆砌而成。
    通篇就这种感觉:

    FP和OO过度复杂了,在大工业上是行不通的,还是属于手工作坊那种强调个人技术的生产方式, 个人技术极大影响了产品质量,极不可靠的生产方式。FP和OO其实全是在走弯路, 花拳秀腿,花样作死。

    大概率是个民科。不过计算机的民科我还是第一次见…


    搜了一下,这么想的人看来不止我一个:

    拿这篇小文章到处贴来贴去不过反应寥寥

    https://news.ycombinator.com/item?id=18844310

    https://clojureverse.org/t/warehouse-workshop-model-update-the-pure-function-pipeline-data-flow/3729/2

    https://news.ycombinator.com/item?id=18967811

    https://news.ycombinator.com/item?id=18967837

    还在wikipedia里加了个链接,这应该算是原创研究吧,wiki不欢迎的那种

    https://en.wikipedia.org/wiki/Dataflow_programming

      @tctcab
      至少我用这种方法构造了一个几万行的项目.
      构造了从clojure到R语言基于语法树的DSL,
      是来自实践的总结, 我博文里讲得很清楚了,
      也有范例代码, 如果有问题可以具体提出,
      我会回答的,泛泛地提问我不知从何说起.

      另外,想象力很重要.搞分析的人思维不要太江化:-)
      以前在Clojure群,有人说我神棍, 据我发现, 都是
      初级人员.

      真功夫很简单, 小文章就够了, 搞套路, 花拳秀腿
      是玩杂耍的

      原来wiki不喜欢原创, 原创不受欢迎是第一回听说.

      Heterogeneity
      我这几天在编写markdown文学编程的notepad++
      pythonscript脚本,沉浸在各种选型组合和写代码,
      不能自拔,我有四个专业要学习讨论, 一个
      业余项目, 还有工作, 我很忙, 这个论坛我是好几天
      来看一下的.

      @Cloud2016 是太云吗? 太云以前帮过我,是我尊敬的
      专业人士, 对于帮助过我的人我都记在个人项目的感谢榜上,
      不敢怠慢.

      我认为R语言向量式编程就够了,这也是数据流编程.
      统计本是以数据为中心, 用数据流处理最是合适,
      我对R语言OO派更流行不可理解, 倒是Clojure语言上数据流更流行,

      R操纵数据的库五花八门,就象玩套路一样, 不可思议, 基本上在Clojure
      上我只用核心函数中的几十个集合函数.对于数据操纵,我更倾向于
      使用核心函数千锤百炼地运用, 这对提高数据建模能力很有帮助,
      喜欢五花八门库的人,倾向让数据模型适应这些库, 然后模型是很烂的.

      比如, ggplot2很成熟,有很多扩展, 我选用它做可视化, 但它的OO式理念
      我个人不是很赞同, 我更喜欢vega-lite这种数据驱动的可视化库.

      纯函数只有输入输出, 就象是自来水管, 通道运算符就象是转接头,
      连接纯函数,这是基本式, 对于序列类型数据, 用map, reduce, apply,
      filter等高阶函数进行处理, 避免循环状态,数据,处理逻辑混杂在一起,
      即不清晰, 打断了数据流, 也难以并行处理.我的项目几万行没有任何
      显式循环代码段, 尾递归也只有一个.

        对我来说,整个R系统就是一个类似RMDB的数据分析服务器,R语言我是以clojure数据表示的DSL,当成数据来操纵组合,使用时,和clojure数据一起组合变换,只使用分析函数和可视化函数,很难看出是R语言了:-)

        lincpa 不是!我沾了太云的光了,此处真想把太云 Call 出来,你的粉丝来了!

        1. OO 这套东西确实用在复杂的系统上, R 里面一切皆对象,R 继承自 S 语言,扒扒它的历史就会知道,它几乎就是为 处理数据而生 Rick Becker 在 UseR2016 的演讲 --- forty years of S 设计 S 和 R 系统就使用了的 OO 的,只不过用户用起来不需要动不动就写类什么的,这应该归功于封装还是什么?(小白一枚,楼上各位大神赐教啊)

        2. R 操作数据的包确实有很多,从数据导入导出,数据清理,数据变形,数据建模,数据可视化,数据报告,每一环都会有很多,但是对这个环境熟悉久了就会发现,好用的就是常用的那几个, tidyverse 确有优势,但我是基础函数党,能用基础函数操作数据的就用基础函数,因为它稳定,又不需要另外装包。

        3. 看到纯函数,我还以为复分析里的,吓一跳

          Cloud2016 我也倾向于基础函数。扩展包的函数总让我不太放心,其稳定性有时候完全取决于开发者的心情。万一遇见个任性的开发者可咋办。而且我不太理解,为啥有些功能在基础函数已经有了,而 tidyverse 却重写一遍,徒增学习成本。

          yihui
          几年前,我在数据可视化方案选型上在gnuplot和R摇摆不定,当时R的中文可视化资料不是很多,您在论坛向我推荐ggplot2,数据分析和可视化一体处理,对一个项目来说,选型很重要,选型错了,学习时间和开发时间会浪费很多,我可以用来开发个人项目的时间少,时间对我很重要,另外,你的那本现代统计图形对我帮助很大,我的可视化以这本入门,也最熟悉,DSL的大部分测试代码来自这本书。谢谢!
          (补充编辑: https://d.cosx.org/d/103518-103518 )

          几年前,我向太云讨要了他的最优化研究资料。

          tctcab
          纯函数管道数据流不是wikipedia所指的那种的原创研究, 它参考了R的向量式编程, UNIX的管道,RMDB和Clojure的集合操作, 集成电路理论, 大工业生产流水线思想, 业务流程再造等,而且也有很多数据流编程研究, 虽然风格和我大不同.

          计算机发展的历史很短, 理论不足, 参考了很多其他行业的理论, 比如, 建筑业, worker模型, 订阅/发布模型, 生产/消费模型等, 他们的做法和我没什么不同的, 只是他们搞得早, 也出名了, 有些人对名人名企有迷之崇拜, 跪习惯了而已, 觉得大公司的翔也是香的.

          OO也只是对现实世界的模拟, 很多学不好的人只是学了皮毛, 对现象只进行表象模拟, 搞得很乱, 象乱麻团一样, 不知所谓, 象ggplot2这种体系清晰, 以完美的数据模型为根基的OO作品极少. 我认为OO重要的不是对现实世界的模拟, 而是要以抽象提炼后的数据模型为根基才是正确的姿式.

          另外, 波音的那个系统最有价值的是波音历史保存下来的原始数据, 人工智能专家系统已经发展很成熟了, 外行的人觉得了不起, 其实没啥的, 很多人都能搞,如果不是波音的招牌大, 我是懒得提, 再加上搞这系统的人又觉得自己了不起, 在网上瞎吹自己第一, 心胸又不大, 爱删帖, 这种牌子大的死狗拿踢踢最好不过了:-)

          我还批过Storm, 纯粹是我觉得作者写的clojure数据操作库太丑, 很适合对付那种数据模型很渣的数据, 因此我推导出他经常搞渣数据模型, 再推导出他的Storm的数据模型很渣, 体系和调度算法不好

          其实我还批过微软的C#, Facebook的react, Java的设计模式, 它们搞得太复杂了, 我学不会, 象我这么聪明的人,怎么可能连入门都搞得头大, 一定是他们的错, 哈哈......

          yihui 我突然觉得谢大某年有时间了可以把现代统计图形这本书给写了,造福人类社会,真的太多人看过之前放出来的版本,如果写完了就当已经放出来的是样章好了,这样的样章完全已经达到了它的作用,继续歪楼😂

            Cloud2016 要是有人能先帮我把它的源文档从 LyX 转入 bookdown 我才会考虑这事(仅仅是初步考虑,能不能出版还说不好)。