我一直认为函数式编程可以用Python完成.因此,我很惊讶Python在这个问题上没有得到很多提及,当提到它时,它通常不是很积极.然而,没有给出很多理由(没有提到模式匹配和代数数据类型).所以我的问题是:为什么Python不适合函数式编程?是否有更多的原因,而不是缺乏模式匹配和代数数据类型?或者这些概念对函数式编程如此重要,以至于不支持它们的语言只能被归类为二级函数式编程语言?(请记住,我在函数式编程方面的经验非常有限.)
我正在寻找功能编程概念.
我已经使用Javascript多年来在Web应用程序中进行客户端脚本编写,除了使用原型之外,还有简单的DOM操作,输入验证等.
最近,我经常读到 Javascript是支持函数式编程的语言之一.
凭借我对Javascript的熟悉和经验,我倾向于使用它来学习函数式编程.我希望我能够更专注于主要的功能概念,而不是被一种全新的语法所困扰或分散注意力.
总而言之,Javascript是学习函数式编程概念的不错选择吗?Javascript中哪些功能相关/支持函数式编程?
以下显然有效,但我不喜欢在Tuple中包装项目,
    ImmutableMap<String, Function<Tuple2<Double>, Double>> op = new //
    ImmutableMap.Builder<String, Function<Tuple2<Double>, Double>>()
            .put("+", new Function<Tuple2<Double>, Double>() {
                @Override public Double apply(Tuple2<Double> data) {
                    return data.Val_1 + data.Val_2;
                }
            }).build();
    System.out.println(op.get("+").apply(new Tuple2<Double>(3d, 4d)));
我想写一些类似的东西:
    ImmutableMap<String, Function<Double[], Double>> op = new //
    ImmutableMap.Builder<String, Function<Double[], Double>>()
            .put("+", new Function<Double[], Double>() {
                @Override
                public Double apply(Double... data) {
                    return data[0] + data[1];
                }
            }).build();
    System.out.println(op.get("+").apply(3d, 4d));
ty是最有用的帮助.
编辑:问题解决了,开始使用:
public interface T2Function<T> {
    T apply(T Val_1, T Val_2);
}
在编程过程中,我们遇到了大型的javascript文件,它们是开源的,以面向对象的方式编写(如JQuery).
如果我们需要修改这些文件,我们必须具备成员和流程的基本知识.如果我们有多个文件,那么任务就更难了.
我从哪里开始得到这个流?