+ -
当前位置:首页 → 问答吧 → 未来的 web

未来的 web

时间:2014-03-21

来源:互联网

先前我都知有一个 project (Emscripten) 把 LLVM 转成 JavaScript ,不过今日才知它的重要性。
大概它会完全改变未来的 web —— 以后几乎用甚么电脑语言写 web app 都可以了!

http://kripken.github.io/mloc_emscripten_talk/qcon.html#/
(40 页 slide)

https://github.com/kripken/emscripten/wiki
(官网)

应用例子:
http://www.quakejs.com/

作者: xianrenb   发布时间: 2014-03-21

LLVM?

作者: Susan﹏汪汪   发布时间: 2014-03-21

可以模拟到C/C++?
Pointer应该系javascript不能(或者要直头建立一个大框架)模拟到的东西





[ 本帖最后由 Susan﹏汪汪 於 2014-2-19 06:13 PM 使用 编辑 ]

作者: Susan﹏汪汪   发布时间: 2014-03-21

引用:原帖由 Susan﹏汪汪 於 2014-2-19 06:11 PM 发表
可以模拟到C/C++?
Pointer应该系javascript不能(或者要直头建立一个大框架)模拟到的东西



LLVM 即 Low Level Virtual Machine (http://en.wikipedia.org/wiki/LLVM)。

方法大概是把所有 VM access 到的 memory 都设定成一个很大的 typed array 。
那么 address / pointer 其实只是 array 的 index (或相关的四则运算) 。
所以用 JavaScript 做一个 VM 出来是可行的。
事实上世上有人把整个 Linux/PC 以 JavaScript/Web page 做出来:
http://bellard.org/jslinux/

Clang is a compiler front end for the C, C++, Objective-C and Objective-C++ programming languages (http://en.wikipedia.org/wiki/Clang

作者: xianrenb   发布时间: 2014-03-21

引用:原帖由 xianrenb 於 2014-2-19 07:24 PM 发表


LLVM 即 Low Level Virtual Machine (http://en.wikipedia.org/wiki/LLVM)。

方法大概是把所有 VM access 到的 memory 都设定成一个很大的 typed array 。
那么 address / pointer 其实只是 array 的 inde ...
所以还是建立在array这框架上

作者: Susan﹏汪汪   发布时间: 2014-03-21

引用:原帖由 xianrenb 於 2014-2-19 06:06 PM 发表
先前我都知有一个 project (Emscripten) 把 LLVM 转成 JavaScript ,不过今日才知它的重要性。
大概它会完全改变未来的 web —— 以后几乎用甚么电脑语言写 web app 都可以了!

http://kripken.github.io/mloc_e ...
犀利,好似耍杂技,成个 qt application 都可以port 上去js,size 大约5MB

不过,除非local browser 一早装晒library, 好似local一早装左jvm甘,下下都要download,感觉吾系甘好

作者: form5   发布时间: 2014-03-21

引用:原帖由 xianrenb 於 2014-2-19 07:24 PM 发表


LLVM 即 Low Level Virtual Machine (http://en.wikipedia.org/wiki/LLVM)。

方法大概是把所有 VM access 到的 memory 都设定成一个很大的 typed array 。
那么 address / pointer 其实只是 array 的 inde ...
我约略看过 https://github.com/kripken/emscripten/wiki/Building-Projects ,发现原来 emcc 除了可处理 LLVM bitcode 外,还可以直接 compile C/C++ 成 JavaScript 。
反而用 Clang 再用 emcc 更难。

作者: xianrenb   发布时间: 2014-03-21

引用:原帖由 form5 於 2014-2-19 11:29 PM 发表

犀利,好似耍杂技,成个 qt application 都可以port 上去js,size 大约5MB

不过,除非local browser 一早装晒library, 好似local一早装左jvm甘,下下都要download,感觉吾系甘好
要 download 这点有好有不好啦!
若然说软件都是经常要更新,这点可以说是十分配合呢!
若无变的话, cache 了 .js file 就不用等 download 。
反而我觉得好像要等 web browser JIT compile JavaScript 才 run code 。
中间会 hang 一阵。

看来未来都会是 web app 主导,因为 cross-platform 。
C/C++ 原有的 library 都可以 port 至 JavaScript 了。
速度又再不是问题。
先前有 JavaScript 写的 x86 emulator 可 run Linux 。
相信不久后会有人整到 based on LLVM 的 Linux 放在一个网页中 。

作者: xianrenb   发布时间: 2014-03-21

引用:原帖由 xianrenb 於 2014-2-20 12:40 PM 发表
要 download 这点有好有不好啦!
若然说软件都是经常要更新,这点可以说是十分配合呢!
若无变的话, cache 了 .js file 就不用等 download 。
反而我觉得好像要等 web browser JIT compile JavaScript 才 ru ...
Load 得快吾快系 其中一个好重要嘅地方,java app的跨平台性非常适合做web app, 由於载入和运行太慢,从未成功过

作者: form5   发布时间: 2014-03-21

https://www.youtube.com/watch?v=yF5-6AcohQw

作者: loko2014   发布时间: 2014-03-21