跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 开发一个编程语言,类似 Python ,一定要很高的学历才行吗?初中没毕业行吗?要补充什么知识
未分類
12 10 月 2020

开发一个编程语言,类似 Python ,一定要很高的学历才行吗?初中没毕业行吗?要补充什么知识

开发一个编程语言,类似 Python ,一定要很高的学历才行吗?初中没毕业行吗?要补充什么知识

資深大佬 : find456789 4

想自己开发语言, 可以用来做爬虫, 做网站 , 就行了, 这是第一个目标

但是我了解了一下,发现这里面门槛挺高的,似乎要很高的学历才行

所以想问问大家

谢谢

大佬有話說 (60)

  • 資深大佬 : wandehul

    兄弟为什么会有这种想法 ? 安安静静做个首富不行吗

  • 資深大佬 : siknet

    用工具也可以啊,不一定非要学 python

  • 資深大佬 : villivateur

    是的,一定要很高的学历,很强的思维能力才可以,否则是不可能的,至少概率上不可能

  • 資深大佬 : levelworm

    学 Programming Language theory

  • 資深大佬 : fiveelementgid

    需要对计算机体系有特别深的理解
    操作系统交互
    底层汇编或者 C 语言设计解释器
    我又想起来了中科院的那个套壳 python 语言。。。。草

  • 資深大佬 : t6attack

    《编译原理》

  • 資深大佬 : locoz

    开发一个编程语言是很复杂的事情,如果你只是做个玩具的话倒是无所谓,但是如果你要做个有实用价值的东西,那还是算了吧。

  • 資深大佬 : Issacx

    计算机里面就没什么东西是跟学历挂钩的。设计语法简单,实现这种语法需要一个编译器或者解释器,这门课的名字叫编译原理。兄弟你这需求还是学门现成的语言和一个框架比较快。
    真想自己设计门语言也不一定要从头写到尾,前端自己写完,后端找个现成的就行。

  • 資深大佬 : delectate

    @Issacx 还真有,比如英语。

  • 資深大佬 : msg7086

    不一定要从原生通用语言开始做。有个东西叫 DSL,可以在现有的语言上搭,比徒手撸一个语言简单很多。

    而且都 2020 年了,已经没有个人撸语言的意义了。
    只有大厂才考虑自己搞新语言( Go 或者 TS 等)。
    毕竟,没个几十个月薪几十万美刀的工程师,搞不定这玩意儿啊。

    你自己一个人搞的话,首先得要几十年的时间。
    学历不需要高,花时间读上去就行了。
    活不到几百岁才是大问题。

  • 資深大佬 : geebos

    和学历没什么关系,但是能开发一门能用的编程语言的话,至少在能力上已经超过国内绝大多数计算机专业的研究生了

  • 資深大佬 : secondwtq

    语义啊语义…

  • 資深大佬 : black11black

    @msg7086 请问 python 有相关项目吗,用 python 重新实现某种语法,用在特定领域,似乎挺好的

  • 資深大佬 : msg7086

    @black11black 我不会 Python,可以看看其他 Python 大佬怎么说。

  • 資深大佬 : whileFalse

    不一定要很高的学历,但要很高的能力。
    如果 LZ 初中没毕业是因为现在才 9 岁,那应该不影响。

  • 資深大佬 : Perry

    这个大学本科大多数人都做不到,光是理论知识就要学个好几门课。。。

  • 資深大佬 : Cbdy

    看做到什么程度
    简单的话,小学学历的脚本小子就可以了,比如用 antlar4 做一门在 jvm 上跑的小语言

  • 資深大佬 : Felldeadbird

    设计一门新的编程语言不需要学历。
    你只要了解计算机原理就可以了。

    举个例子,你可以在 JS 上开发一门新的语言。也可以在 PY 上开发一门新的语言。 只是,这个东西,别人看起来可能会说,是一个库。

    如果从计算机底层写起来……这不是学历的事情了。是时间的事情。你出来社会,根本没时间做。真正空闲,让你钻研的时间,就是大学了。。。

  • 資深大佬 : jsun

    《计算机程序的构造和解释》推荐看看

  • 資深大佬 : natashahollyz

    开发一个编程语言。。怎么说呢,能搞成的话,至少比 99.99%的人强。既然你问这了,那还是

  • 資深大佬 : lqw3030

    把问题改成如使用 cpu 指令爬取数据,需求的知识就都出来了

  • 資深大佬 : Track13

    此贴终结。
    不需要任何学历。只要你有这水平就可以。
    或者你 ppt 做的好也可以。

  • 資深大佬 : love

    不用,你看最简单的 js 解释器,没多少代码,也没什么高深算法

  • 資深大佬 : cmdOptionKana

    正面回答:1. 不要求学历。

    2. 首先需要补充的知识是搜索引擎的使用方法。

    3. 然后需要补充的知识都请自行搜索。

    我这不是开玩笑,非常认真,搜索不是唯一的方法,但几乎是最好的方法了,比你上论坛问,甚至可能比你花钱请人教更管用。

  • 資深大佬 : chocovon

    “可以用来做爬虫, 做网站 , 就行了”

    现在的语言满足不了你的需求吗?

  • 資深大佬 : IGJacklove

    感觉你就是来骗回复的吧。

  • 資深大佬 : jmc891205

    只是做爬虫做网站
    为什么要重新开发一种编程语言?

  • 資深大佬 : ByZHkc3

    @delectate 啥?

  • 資深大佬 : xth12138

    开发一个编程语言,类似 Python ,一定要很高的学历才行吗?初中没毕业行吗?要补充什么知识

  • 資深大佬 : Issacx

    @xth12138 言简意赅,要素齐全。

  • 資深大佬 : loading

    我想问问为什么要这样做?想出名然后逆袭吗?

  • 資深大佬 : crella

    不只是 Python 之父有浓密的头发啊,你看 Delphi 、C#、Typescript 之父 A.H.

  • 資深大佬 : IgniteWhite

    骗回复的吧。主说的这个人学历到底是啥啊

  • 資深大佬 : Liyiw

    https://www.jetbrains.com/mps/

  • 資深大佬 : xd314697475

    直接上编译原理课,然后看龙书,哪里不懂补哪里。

    做一个入门的编程语言就是个大作业难度。

    但是做一个 C++、C#级别的编程语言,全球没多少能做到的。

  • 資深大佬 : lixon166

    不用的,认识一个最小的 python 程序员,才 10 岁

  • 資深大佬 : IgniteWhite

    @lixon166 我儿子三岁写 python

  • 資深大佬 : Death

    https://llvm.org/docs/tutorial/OCamlLangImpl1.html

  • 資深大佬 : ncepuzs

    缺铜币直说啊

  • 資深大佬 : lscexpress

    @lixon166 我儿子认识一个最小的程序员,才 10 岁

  • 資深大佬 : araaaa

    先写个 lisp 编译器

  • 資深大佬 : dtgxx

    即使你有很高学历,你也不行。开发一门编程语言,还得火起来,得需要天时地利人和,不是随便说说。

  • 資深大佬 : DoctorCat

    害,学就完了又不是没那条件。
    编译器原理、工程和动手写编译器的教程英文资料比较多,英语好就行,难得是解决困难的动力。可以先写个简单的 lexer,再去考虑要不要继续学下去。

  • 資深大佬 : namelosw

    我过一阵子离职赋闲一阵,打算搞个语言练练手,也正在学习,感觉如果只是普通语言这种需求的话,其实没那么深奥

    上很多“不仅我不懂,而且我觉得你也懂不了”的态度…… 不要妄自菲薄,感觉中国的程序员普遍很不错,但是在语言设计之类的方面和欧美还有差距,主要问题是不了解,周围的人也不了解就觉得很难。可能欧美有很多老程序员以前都做过这些,就有一小部分这些文化传承下来了,或者教育上可能也有差距把。

    1. 推荐一个很不错的书 http://craftinginterpreters.com/
    非常实用,一方面不像龙书或者 Stanford 的那个编译原理课那么费时间,另外一方面又不像其他的小教程那样过于凑合,里面还有很多额外的 consideration 。
    只要看到前一小半写个 Tree walking interpreter 这个语言就完全能用了,后面写 VM Compiler 主要是为了效率。
    这本书里面为了教育意义是手写的,但是每个小部分有现成工具可以用的时候脚注会告诉你。
    明白道理之后,把工具也用一遍最后发现做编程语言也不过如此,困难 /麻烦的事情都被别人解决过了(比如 LLVM )。真正困难的是学别的东西,比如要造 Hindley-Milner 那种语言,首先得理解那套类型系统,再学习实现那套推断算法。如果只是发明一个跟 Python 差不多的普通语言,就没什么特别的坑了,这本书都教给你了。

    2. 然后感兴趣或者想练手可以把这个当个作业做,用啥语言实现都行,花不了太多时间: https://github.com/kanaka/mal

    3. 然后有兴趣深入可以再看 Stanford Alex Aiken 的编译器课程

  • 資深大佬 : bojue

    @delectate 也不一定

  • 資深大佬 : jxie0755

    是“初中没毕业”,还是“初中无法毕业”?

  • 資深大佬 : THP301

    上过 编译原理 课的大学生基本都知道怎么开发编程语言, 最好自己读一下相关的书籍,难度不高,只是概念有些多

  • 資深大佬 : xumng123

    当然可以

  • 資深大佬 : xianxiaobo

    我记得王垠说过发明一个编程语言没有那么难,就跟组装电脑似的。
    发明 cpu,内存条,显卡这些零件才是真的难。
    所以结论是应该不需要很高的学历,初中没毕业应该是可以的。

  • 資深大佬 : laike9m

    建议放弃

  • 資深大佬 : Curtion

    LLVM 呀,现代语言很多都是用这个作为后端

  • 資深大佬 : sunziren

    加油,你可以的

  • 資深大佬 : billgreen1

    不行,行的人不会来问的,直接干

  • 資深大佬 : neptuno

    “可以用来做爬虫, 做网站”,就这俩需求,学学 python 不就好了,,,,人生苦短

  • 資深大佬 : www5070504

    可以的 在国内很容易 你只需要套个壳 再从以前的历史书 或者周易之类的比较有知名度的书里边 挑个你喜欢的词当名字 就可以了

  • 資深大佬 : libook

    学历只是一种粗略地评估个人知识和能力水平的方式,历史学博士未必能造出核反应堆来,最先发现原子结构的人肯定没有核物理博士学位。

    你想干成一件事情,得看这件事情究竟需要哪些知识和能力,你不具备的话可以去学,当然去学这些东西可能还要求其他的知识和能力,就像你学习导数得懂得极限,想懂得极限得懂得基础算数,想懂得算数就得会数数。

    你想自己做一门编程语言,可以去了解一下编程语言相关的理论知识和技能都有哪些,自己没掌握的就去学习。

    当然如果只是应付差事,可以以各种现有的语言为基础套个壳子,改改关键字、加一些语法糖,比如之前出现的“木兰语言”就是用 Python 套的壳子。

    如果你的终极目的不是想自己做一门编程语言,而是想做网站和爬虫,那没必要自己搞编程语言,流行的编程语言已经经受过了相当长的时间的检验,解决了大量问题,这些你都重新来一遍,还不如人家做得成熟,岂不是很浪费时间。除非你真的对各种编程语言的底层原理极其了解,胸有成竹可以做出一门更优秀的编程语言。

  • 資深大佬 : levelworm

    我也推荐冷门书,game scripting mastery, 手把手教你写一个游戏脚本语言,带字节码和虚拟机的。比较浅显,适合入门的。

  • 資深大佬 : afx

    嗯,我先下结论,玩具级的语言很容易设计出来,要做出一门好的语言那是大大大神才能干的。目前我们开发的软件内部就有一种类似于 excel 公式的功能,语法语义完全是结合特定行业设计的,所以自认为比一般的程序员在编译原理上应用得深一点,毕竟我们需要使用这个技术来赚钱的。目前遇到的问题,语法语义的严谨性,类似数学里面的定理,需要非常严谨,否则自身设计出来的语言很容易自身就矛盾了, 光这一点在我看来一般人根本无法胜任。看看当初只花了 10 天设计出来的 javascript 。

  • 資深大佬 : gitgabige

    干就完了,即使是国家领导人,也不一定需要很高的学历的

  • 資深大佬 : Selenium39

    @xth12138 中科院大佬

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具