other-languages

here be heresies and things we have to use for work
tjg 2017-10-18T02:02:21.000239Z

Skimmed Laucher & Snively’s talk on types again. I think a useful puzzle: come up with N tactics/techniques to improve a program’s correctness. (Or robustness, etc.) “Use static typing” is a freebie for one’s list.

2017-10-18T20:29:08.000429Z

@ghadi enlighten me on Graal + Python 🙂

2017-10-18T20:29:15.000138Z

it's been awhile since I've read up on it

ghadi 2017-10-18T20:30:52.000127Z

their current approach is building LLVM IR interpreter as a language using the Truffle interpreter framework

ghadi 2017-10-18T20:31:09.000089Z

they used to convert C into a Truffle interpreter

ghadi 2017-10-18T20:31:14.000418Z

now it's LLVM IR

ghadi 2017-10-18T20:31:23.000013Z

no java bytecode actually

2017-10-18T20:31:33.000161Z

ah I see

ghadi 2017-10-18T20:31:41.000224Z

they take the Truffle "tree" and then apply partial evaluation to it, then feed it through Graal

ghadi 2017-10-18T20:31:56.000408Z

so they can inline across Python <---> C

ghadi 2017-10-18T20:32:03.000075Z

or Ruby <---> c ext

2017-10-18T20:32:06.000212Z

but the same problem in the end. Python extensions assume a certain object layout, calling convention and memory model

ghadi 2017-10-18T20:32:22.000040Z

yup, just talking mechanics

2017-10-18T20:32:23.000557Z

they even assume reference counting. It

2017-10-18T20:32:27.000344Z

right, cool

ghadi 2017-10-18T20:32:44.000307Z

they can catch bad accesses and through something like a SegFaultException in userspace :simple_smile:

2017-10-18T20:33:33.000271Z

lol yeah

2017-10-18T20:33:41.000600Z

or compile numpy to IR

2017-10-18T20:33:53.000104Z

including the Fortran if there's a LLVM backend for fortran

2017-10-18T20:34:15.000748Z

oh, btw, this link came up in Cognitect chat:

ghadi 2017-10-18T20:34:21.000098Z

their latest party trick is demoing an SSL connection using the OpenSSL library interpreted in userspace

ghadi 2017-10-18T20:34:31.000064Z

they open a socket with OpenSSL!!!!

2017-10-18T20:34:40.000501Z

bleh, sorry abuot the wall of text

2017-10-18T20:34:57.000339Z

but the optimizations there are amazing