zxCoder
V2EX  ›  问与答

每种编程语言都有他优势和劣势,能不能把这些优势集中起来,创建一门新的编程语言满足更多人的需要

  •  1
     
  •   zxCoder · Dec 26, 2020 · 6298 views
    This topic created in 2138 days ago, the information mentioned may be changed or developed.
    49 replies  •  2021-02-04 00:08:15 +08:00
    iConnect
    iConnect
    Dec 26, 2020 via Android
    1
    低级语言可以统一,比如汇编,高级语言不可能统一,本来就是应用向的,需求差异,没法统一。
    QingXuJiaZhi
    QingXuJiaZhi
    Dec 26, 2020
    2
    已经有人做了,Kotlin 就是这样一种语言,非常积极把各种主流语言的特性都加进去了,要啥有啥,还有 java 的生态。

    其他主流语言近年来的发展也是博取众长,不断做加法,流行的特性都逐渐加进来,结果就是各种主流语言趋同。

    另外也有一个难得的做减法的语言,Go,被赞美大道至简,也被讥讽大道至简。
    wellhome
    wellhome
    Dec 26, 2020 via iPhone
    3
    kotlin 。可以单独写程序?
    WalkingEraser
    WalkingEraser
    Dec 26, 2020 via Android❤️4
    4
    C++:你们小年轻在说啥?
    Deardrops
    Deardrops
    Dec 26, 2020 via Android❤️1
    5
    https://zh.wikipedia.org/zh-cn/Nim

    Nim 表示,能学的语言特性我都学了,但没人用
    TypeError
    TypeError
    Dec 26, 2020 via Android
    6
    rust,各种特性都在加
    lululau
    lululau
    Dec 26, 2020 via iPhone❤️1
    7
    swift kotlin
    Cbdy
    Cbdy
    Dec 26, 2020 via Android
    8
    Swift, Kotlin
    GeruzoniAnsasu
    GeruzoniAnsasu
    Dec 26, 2020
    9
    为什么还在寻找银弹?
    civet
    civet
    Dec 26, 2020 via iPhone
    10
    《人月神话》了解一下?
    secondwtq
    secondwtq
    Dec 26, 2020 via iPhone
    11
    wysnylc
    wysnylc
    Dec 26, 2020
    12
    全都有==全没有
    就如全栈==全废
    nguoidiqua
    nguoidiqua
    Dec 26, 2020❤️3
    13
    优势往往是建立在劣势上的,真正去设计一个东西你就会发现没可能面面俱到,总得有所取舍。

    真要什么都不舍,那要么你做着很痛苦甚至做不出来,要么用着很痛苦甚至用不下去。
    nonduality
    nonduality
    Dec 26, 2020
    14
    这年头编程语言能玩的技术特性和语言特性基本都玩遍了,所以看啥语言基本都差不多。
    twl007
    twl007
    Dec 26, 2020 via iPhone
    15
    你说的不就是 c++么
    jtsai
    jtsai
    Dec 26, 2020 via iPhone❤️5
    16
    语言不重要 有人用才重要 如果有很多人用 不得不用 狗屎都能成为标准 我说的是 js
    jtsai
    jtsai
    Dec 26, 2020
    17
    一个语言的优秀固然很重要,还要考虑的历史的进程,和出生在哪家。
    icy37785
    icy37785
    Dec 26, 2020
    18
    优势和劣势通常都是一体的呀,比如这个场景里是简陋,那个场景里可能就是简洁了,你消除了简陋的劣势也失去了简洁的优势。
    namelosw
    namelosw
    Dec 26, 2020
    19
    全世界: 没有最好的语言, 在合适的场景使用合适的语言.

    LISP: 既然没有最好的语言, 只有合适的语言, 那么最好的语言是可以立刻改变成任何合适语言的语言.
    namelosw
    namelosw
    Dec 26, 2020
    20
    @nonduality Coq 了解一下?
    namelosw
    namelosw
    Dec 26, 2020
    21
    @secondwtq 看了这篇, 感觉最好的语言就是把 lambda cube 爬到头, 把 type inference, gradual typing 之类其他花里胡哨的全删掉, 最后允许一下 Idris 那种简单递归, 手动滑稽……
    Perry
    Perry
    Dec 26, 2020❤️2
    22
    楼主是不是不知道一方面的优势往往会带来另一方面的劣势( tradeoff )?
    whi147
    whi147
    Dec 26, 2020 via iPhone
    23
    c 艹表示 11 的特性都还有人学不会呢
    chinvo
    chinvo
    Dec 26, 2020 via iPhone
    24
    你说的是不是 C#
    casstiel
    casstiel
    Dec 26, 2020
    25
    多快好省了解一下
    SuperManNoPain
    SuperManNoPain
    Dec 26, 2020
    26
    全都有==全没有
    就如全栈==全废
    renmu123
    renmu123
    Dec 26, 2020 via Android
    27
    没有银弹
    raaaaaar
    raaaaaar
    Dec 26, 2020 via Android
    28
    知道分工么,没有一个东西能够做到所有。
    BingoXuan
    BingoXuan
    Dec 26, 2020 via Android
    29
    没有银弹
    natforum
    natforum
    Dec 26, 2020
    30
    名字我都想好了,就叫 A 语言,全名 ALL language
    kx5d62Jn1J9MjoXP
    kx5d62Jn1J9MjoXP
    Dec 26, 2020 via Android
    31
    开发速度和运行速度会有个妥协,运行速度快的语言贴近操作系统底层,开发起来就复杂
    语言的特化和功能的一般化也会有个妥协,Java 语言可以做很多东西但是每种都需要在一个专门的框架上做应用,js 和 php 就相反,只做一件事情
    AndyAO
    AndyAO
    Dec 26, 2020
    32
    1. 加入中间层,例如 JVM,CLR,JavaScript Host.
    基于 JVM 的语言估计有十几种还多.
    2. 大量使用宏,例如 LISP.可以轻松建立 DSL.
    Jooooooooo
    Jooooooooo
    Dec 26, 2020
    33
    "哎呀, 行业标准太多不统一, 我们应该统一这些标准, 做一个大而全的规范标准"

    "行业内又多了一个标准"
    FurN1
    FurN1
    Dec 26, 2020 via iPhone
    34
    @natforum 有 C 语言,B 语言,ABC 语言,还真没有 A 语言哈哈
    msg7086
    msg7086
    Dec 26, 2020 via Android
    35
    (现在有 50 种编程语言。)
    把优势集中起来,创造一门新的编程语言。
    (现在有 51 种编程语言。)
    opoojkk
    opoojkk
    Dec 26, 2020 via Android
    36
    想要优势就会有优势的对立面产生劣势
    James369
    James369
    Dec 26, 2020
    37
    为什么没有统一的操作系统,
    为什么没有统一的数据库,
    为什么没有统一的浏览器,
    丫的,我就是找不到统一的东西。这应该是矛盾的对立面在起作用。
    QingXuJiaZhi
    QingXuJiaZhi
    Dec 26, 2020 via Android
    38
    @James369 统一会扼杀发展,因为缺少竞争
    charlie21
    charlie21
    Dec 26, 2020
    39
    不妨类比人类语言

    Java 就像是英语,谁都能说一嘴
    Python 就像是汉语,有自己独特的一套价值观在里面,如果适应了之后则用着还挺舒服的

    C# 就像是法语,至少在非洲是很通用的

    C 语言就像是拉丁语,只有在少量无可取代的领域还在使用。但它带领了印欧语系

    ______ 就像是俄语,随时透露出一股与其它语言格格不入的凛冽气质

    C++ 就像是芬兰语。
    zachlhb
    zachlhb
    Dec 26, 2020 via Android
    40
    @wellhome 可以,kotlin 也是一种语言,当然可以单独用,并不只是放在安卓里
    taowen
    taowen
    Dec 26, 2020
    41
    原因主要是生态,一门语言不仅仅是语言,还包括上面的库。除非有非常强大的投入,要完全造一套库出来,成本太高了。所以大部分小众新语言都是采取借别人的生态的做法,比如编译到 JVM 上执行。

    运行时和语法是不能割裂的,很多语法需要独特的运行时支持。比如 golang 要求每个函数都可以是 coroutine,那么就可能导致复用 c 的函数库变得困难。这也就导致了,寄人篱下,必须低头。这就导致了新语言的语法特性是受限制的。
    neutralcomments
    neutralcomments
    Dec 26, 2020 via Android
    42
    @charlie21 我知道,此空填易语言,不但骗钱还骗命
    miniliuke
    miniliuke
    Dec 26, 2020
    43
    你想要一个带 GC 还是不带 GC 的语言......
    fiveelementgid
    fiveelementgid
    Dec 26, 2020 via Android
    44
    Scholar language:C#语言就是这样的
    动态杂静态的语言,不过 dynamic 关键字没啥人用就是了
    fiveelementgid
    fiveelementgid
    Dec 26, 2020 via Android
    45
    @charlie21 非洲人路过,哈哈哈哈哈哈哈哈哈哈哈哈ヘ(。□°)ヘ
    selfi
    selfi
    Dec 26, 2020
    46
    没有银弹
    ImACat
    ImACat
    Dec 26, 2020
    47
    话说凡事不都是 trade off 吗?不觉得有那种语言存在
    szzhiyang
    szzhiyang
    Dec 27, 2020 via iPhone
    48
    Swift 。
    SingeeKing
    SingeeKing
    Feb 4, 2021 via iPhone
    49
    感觉 Rust 就是这么做的,另外还有,传说中的 V 语言?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5051 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 145ms · UTC 07:35 · PVG 15:35 · LAX 23:35 · JFK 02:35
    ♥ Do have faith in what you're doing.