由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 用Java写C
相关主题
在图像算法领域,纯java没戏,用java和c++混合编程很恶心Java新手问题
c++这种语言注定了会越做越小aspx网页现在到底流行不? (转载)
看到有人说跨平台哈一个嵌入式系统的设计构思
C++ and javaLinux/C++的工作好难找
请问java有类似fsync之类的方法?JAVA vs C/C++之争, 我来做个小结吧
JAVA 如何调用现成的dllSun当年设计Java的败笔
震惊:java 的矩阵操作比 c++ 快?其实说穿了, java就是一种可以让初中生廉价劳动力写程序的语言
【失败感言】我是做PHP的 (转载)c++程序员不要把头埋在沙子里了
相关话题的讨论汇总
话题: java话题: 指针话题: graalvm话题: gc话题: br
进入Programming版参与讨论
1 (共1页)
h*i
发帖数: 3446
1
二十年风水轮流转,我老目前正在GraalVM上面用Java写C代码,恍若二十多年白过了。
哈哈。
n******t
发帖数: 4406
2
什麼叫做用Java寫C代碼?
在意大利用用英文寫德文?

【在 h*i 的大作中提到】
: 二十年风水轮流转,我老目前正在GraalVM上面用Java写C代码,恍若二十多年白过了。
: 哈哈。

h*i
发帖数: 3446
3
就是字面意思,写的是Java,但是按C的写法来写,其实就是在写C,没有GC,而是
malloc, calloc, 指针来指针去。哈哈。
https://www.graalvm.org/sdk/javadoc/index.html?org/graalvm/nativeimage/c/
package-summary.html
The latest fashion in the Java world.

【在 n******t 的大作中提到】
: 什麼叫做用Java寫C代碼?
: 在意大利用用英文寫德文?

g****t
发帖数: 31659
4
类型呢?指针越界有无报错?


: 就是字面意思,写的是Java,但是按C的写法来写,其实就是在写C,没有GC,而是

: malloc, calloc, 指针来指针去。哈哈。

: https://www.graalvm.org/sdk/javadoc/index.html?org/graalvm/nativeimage
/c/

: package-summary.html

: The latest fashion in the Java world.



【在 h*i 的大作中提到】
: 就是字面意思,写的是Java,但是按C的写法来写,其实就是在写C,没有GC,而是
: malloc, calloc, 指针来指针去。哈哈。
: https://www.graalvm.org/sdk/javadoc/index.html?org/graalvm/nativeimage/c/
: package-summary.html
: The latest fashion in the Java world.

n******t
发帖数: 4406
5
恩,自己一定要寫C,讓別人用自己用C寫出來的東西或者是語言。
這個scam,30年來從來沒有變過。
實在不行,也要用C的寫法用另外的語言來裝模作樣搞一邊,我只想說,有意思嗎?

【在 h*i 的大作中提到】
: 就是字面意思,写的是Java,但是按C的写法来写,其实就是在写C,没有GC,而是
: malloc, calloc, 指针来指针去。哈哈。
: https://www.graalvm.org/sdk/javadoc/index.html?org/graalvm/nativeimage/c/
: package-summary.html
: The latest fashion in the Java world.

T********i
发帖数: 2416
6
这就是所谓的ffi,foreign function interface。好多语言都有。一般都是做成类似
注释的代码块。
h*i
发帖数: 3446
7
Just the good old C.

而是
nativeimage

【在 g****t 的大作中提到】
: 类型呢?指针越界有无报错?
:
:
: 就是字面意思,写的是Java,但是按C的写法来写,其实就是在写C,没有GC,而是
:
: malloc, calloc, 指针来指针去。哈哈。
:
: https://www.graalvm.org/sdk/javadoc/index.html?org/graalvm/nativeimage
: /c/
:
: package-summary.html
:
: The latest fashion in the Java world.
:

p***o
发帖数: 1252
8
看了一眼,数组index是int? 那还不如sun.misc.Unsafe呢。

【在 h*i 的大作中提到】
: Just the good old C.
:
: 而是
: nativeimage

h*i
发帖数: 3446
9
这不是ffi。Java已经有很多不同种类的interface to C了, 比如JNI, JNA, JNR-FFI等
等.
这个不同,这是用Java来写C,能用来写一个独立的的原生程序,它的设计目的就是
Systems programming in Java。 这些都是Sun传下来的搞了很多年的研究项目,以前
叫做什么Maxine VM, 现在都被oracle搞到外面来收钱了。
https://en.wikipedia.org/wiki/Maxine_Virtual_Machine
GraalVM的native image虚拟机就是用这个玩意来写的。Clojure社区现在对native很着
迷,所以我老也来凑热闹,发现了这个奇葩的玩意,分享一下。

【在 T********i 的大作中提到】
: 这就是所谓的ffi,foreign function interface。好多语言都有。一般都是做成类似
: 注释的代码块。

h*i
发帖数: 3446
10
什么不如?不安全?这本来就是穿着Java衣服的赤裸裸的C,哪有什么安全性可言。

【在 p***o 的大作中提到】
: 看了一眼,数组index是int? 那还不如sun.misc.Unsafe呢。
相关主题
震惊:java 的矩阵操作比 c++ 快?aspx网页现在到底流行不? (转载)
【失败感言】我是做PHP的 (转载)一个嵌入式系统的设计构思
Java新手问题Linux/C++的工作好难找
进入Programming版参与讨论
T********i
发帖数: 2416
11
OMG,生命在于折腾。这帮码农花了20年,把所有的东东用JavaScript重新写了一遍。
然后再用Java把C代码重写一遍?
能不能做个自动翻译的?
谷歌做了个GWT,一直处于半死不活的状态。最近又看到微软搞了个C#写WebAssembly的。
h*i
发帖数: 3446
12
哈哈。差不多吧。
对个人来说,是为了发文章。我看这些GraalVM工程师们年年都在发OOPSLA, PLDI,
Transactions on Architecture and Code Optimization,什么的,开心得很。
对公司来说,是为了割韭菜,同一个东西变着法子,换着包装,才能收几遍钱啊,只收
一遍哪行?

的。

【在 T********i 的大作中提到】
: OMG,生命在于折腾。这帮码农花了20年,把所有的东东用JavaScript重新写了一遍。
: 然后再用Java把C代码重写一遍?
: 能不能做个自动翻译的?
: 谷歌做了个GWT,一直处于半死不活的状态。最近又看到微软搞了个C#写WebAssembly的。

p***o
发帖数: 1252
13
sun.misc.Unsafe是个用来在Java里写C的包,很多库用了很多年。
index用int就跟Java一样数组不能超过2G元素,没法发挥C的全部长处。
这一点sun.misc.Unsafe里没犯同样的错误。

【在 h*i 的大作中提到】
: 什么不如?不安全?这本来就是穿着Java衣服的赤裸裸的C,哪有什么安全性可言。
n******t
发帖数: 4406
14
最近這批scam是rust首先開頭的,rust的教徒把自己能看見的C代碼,都用rust unsafe
重新裝一次,外加一堆的SIMD intrinsics,就說自己已經是最快的benchmark了。

【在 h*i 的大作中提到】
: 哈哈。差不多吧。
: 对个人来说,是为了发文章。我看这些GraalVM工程师们年年都在发OOPSLA, PLDI,
: Transactions on Architecture and Code Optimization,什么的,开心得很。
: 对公司来说,是为了割韭菜,同一个东西变着法子,换着包装,才能收几遍钱啊,只收
: 一遍哪行?
:
: 的。

n******t
发帖数: 4406
15
這個到不一定是壞處。這種結構一般至少需要兩個length相關的field,用int64_t要每
個結構多出8個字節,開銷挺大的。
而且他這種是用了Java的想法來用Java包裹的C句法來寫C,肯定是一堆heap object,
開銷還會更大。

【在 p***o 的大作中提到】
: sun.misc.Unsafe是个用来在Java里写C的包,很多库用了很多年。
: index用int就跟Java一样数组不能超过2G元素,没法发挥C的全部长处。
: 这一点sun.misc.Unsafe里没犯同样的错误。

h*i
发帖数: 3446
16
我的英文blog writeup有更多细节。
http://yyhh.org/blog/2021/02/writing-c-code-in-javaclojure-graalvm-specific
-programming/

【在 h*i 的大作中提到】
: 二十年风水轮流转,我老目前正在GraalVM上面用Java写C代码,恍若二十多年白过了。
: 哈哈。

a********c
发帖数: 3657
17
no gc no object Java 一直都很流行啊,特别是在金融业,nasdaq,nyse后台都是这
样写的。很多hft(geico, virtu, 2sigma...)也是。
这个东东最早是jon ross 2002搞出来做inet,后来他去nasdaq用这个做出了sequencer
, 接着又去了geico,knight。所到之处全做cto,no gc no object java就开花结果了。

【在 h*i 的大作中提到】
: 二十年风水轮流转,我老目前正在GraalVM上面用Java写C代码,恍若二十多年白过了。
: 哈哈。

1 (共1页)
进入Programming版参与讨论
相关主题
有办法在.net里 reference java class吗?请问java有类似fsync之类的方法?
java在图像分析领域,就是一个扶不起的阿斗JAVA 如何调用现成的dll
新手请教Java数组问题震惊:java 的矩阵操作比 c++ 快?
为什么我觉得c++比java简单?【失败感言】我是做PHP的 (转载)
在图像算法领域,纯java没戏,用java和c++混合编程很恶心Java新手问题
c++这种语言注定了会越做越小aspx网页现在到底流行不? (转载)
看到有人说跨平台哈一个嵌入式系统的设计构思
C++ and javaLinux/C++的工作好难找
相关话题的讨论汇总
话题: java话题: 指针话题: graalvm话题: gc话题: br