Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
drmeister
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
31.
▲
by
drmeister
6y ago
I did - and we compiled our first batch of molecules using an application implemented in Cando (Clasp + computational chemistry code) yesterday. I'm absolutely serious about this.
32.
▲
by
drmeister
6y ago
Lisp (Common Lisp) beats all the other dynamic languages by a considerable margin. This is why I am developing Clasp - a Common Lisp implementation based on LLVM that interoperates with C++/C ( https://github.com/clasp-d
33.
▲
by
drmeister
6y ago
Huh - I somehow submitted the same message twice. Hacker News doesn't let me delete it. So I'll edit it down - see the version above about Common Lisp and our implementation of it called Clasp.
34.
▲
by
drmeister
6y ago
Thank you. So debs for debian? I have great collaborators working with me now that could do this. We have one for Arch I believe. I just haven't prioritized this yet.
35.
▲
by
drmeister
6y ago
I can testify to a lot of the difficulties Robert Strandh talks about here. We implemented a Common Lisp in C++ that interoperates with C++ ( https://github.com/clasp-developers/clasp.git ). I ended up implementing a l
36.
▲
by
drmeister
7y ago
Dang - that's helpful. Earlier today I posted here ( https://news.ycombinator.com/item?id=22456642 ) about how throwing exceptions in C++ threads was very expensive because there is appears to be a mutex in the exceptio
37.
▲
by
drmeister
7y ago
In libgcc it's in Unwind_Find_FDE - we think it's a lock around walking the loaded dynamic libraries. I haven't personally dug much deeper into it but my folks here and the llvm engineers seem to be pretty certain that'
38.
▲
by
drmeister
7y ago
That's the point of everything. We have spun up a company and big things are in the works: http://www.thirdlaw.tech/
39.
▲
by
drmeister
7y ago
It's going well. I'll post something soon. We've just been working on it quietly. We have multithreading, unicode, cffi etc, good debugging support, cross-language profiling and more.
40.
▲
by
drmeister
7y ago
This sounds interesting - thank you! We need to interoperate with C++ - so we couldn't use this, could we? We could add this pointer to our own frames but C++ frames won't have this info - so I'm not sure how they would int
41.
▲
by
drmeister
7y ago
Yes, gcc/libstdc++ have the same problem. That's where I saw it first and then I tried llvm/libunwind and saw the same thing.
42.
▲
by
drmeister
7y ago
Thank you. We have developed a Common Lisp implementation that uses LLVM and interoperates with C++ and uses C++ exception handling to unwind the stack. Common Lisp code relies on stack unwinding a fair bit. Imagine my surprise when my fa
43.
▲
by
drmeister
7y ago
Threads are very expensive if you start throwing C++ exceptions within them in parallel. You see the overall time to join the threads increases with each thread you add. There is a mutex in the unwinding code and as the threads grab the mu
44.
▲
by
drmeister
7y ago
Oh yes, please someone answer this. I have used adobe illustrator for 15 years - then affinity designer for a few more years. I just want vector graphics with arrows without enormous subscription fees - damnit!
45.
▲
by
drmeister
7y ago
IMHO - you should learn Common Lisp - it solved the problems described in the talk (Nim can't redefine types on the fly) decades ago. In Common Lisp you can redefine _everything_ on the fly. You can change types (classes) in a runnin
46.
▲
by
drmeister
8y ago
We are traveling down this road. We've implemented Clasp ( https://github.com/clasp-developers/clasp.git ) - an implementation of Common Lisp that interoperates with C++ and uses llvm as the backend. On top of this
47.
▲
by
drmeister
8y ago
Lisp without s-expressions is like bathwater without a baby. S-expressions enable homo-iconic macros and make compile-time computing super easy! I spent 35 years programming in C and C-like languages and then developed my own Common Lisp im
48.
▲
by
drmeister
8y ago
It's things like the visitor pattern that led me to implement Clasp - a Common Lisp that interoperates with C++ and uses llvm as the backend (github.com/clasp-developers/clasp.git). Common Lisp has generic functions and multi
49.
▲
by
drmeister
8y ago
A growing group of us are implementing Clasp ( https://github.com/clasp-developers/clasp ) - a new Common Lisp that uses Robert Strandh's Cleavir compiler, interoperates with C++ and uses LLVM as the backend. Clasp
50.
▲
by
drmeister
8y ago
Nice - I think we will make the switch to this. We wrote a Common Lisp kernel for Clasp (Common Lisp system that interoperates with C++ and uses LLVM as the backend - https://github.com/clasp-developers/clasp ) We implem
51.
▲
by
drmeister
8y ago
Thank you. It was a talk for the llvm developers meeting and I'd been turned down for talks a couple of times a couple of years before that. I REALLY needed to get to this meeting to talk with llvm developers - so I pitched the title
52.
▲
by
drmeister
8y ago
There's a lot more to it. You need to translate native objects to and from C++ objects efficiently. You need to work with C++ exception handling to unwind the stack without clobbering RAII.
53.
▲
by
drmeister
8y ago
It's easy to say something like this in retrospect But even after working on this for a couple of years I have no idea how I would get started with SBCL. There was a team at Google that tried to add a llvm backend to SBCL and they sto
54.
▲
by
drmeister
8y ago
Yes, there is never enough time to cover all that I want. There will be more talks in the future and more as Clasp gets more exposure.
55.
▲
by
drmeister
8y ago
Thanks, everyone! I missed this thread when it first came out.
56.
▲
by
drmeister
8y ago
"A proper C++ ffi for CL with a good clbind" is easy to say but much harder to implement - no one but I have achieved it and I had to implement a Common Lisp to achieve it. It's not just calling functions and translating argu
57.
▲
by
drmeister
8y ago
My group is developing Clasp (github.com/clasp-developers/clasp.git). It's a Common Lisp implementation that interoperates with C++ and uses llvm as the backend. It's something you might want to look at because it could
58.
▲
by
drmeister
8y ago
Author here - thanks folks! I'm glad you liked it.
59.
▲
by
drmeister
8y ago
Counterpoint - I implemented a Common Lisp compiler that uses llvm as the back end ( https://github.com/clasp-developers/clasp ). I've kept up with the versions from 3.6 to 6.0 and I'm about to upgrade to 7.0.
60.
▲
by
drmeister
8y ago
I hired/partnered with one of their former engineers. QPX is most certainly still written in Common Lisp.
More ›