This was enthralling and I'm surprised at how few comments there are and the percentage of them off topic or talking about some other language he should have used. Personally this conversation bloomed my fledgling interest in lisps. I'm downloading a compiler now to get started learning. I have no delusions that I would ever make something as important with it but his interest in a forever language and one that can be adapted to the problem rather than the other way around speaks deeply to me. Great conversation, thank you to both of you.
well, i'm really glad prof. schafmeister contacted you to make this interview. it is amazing to learn about all this. especially in the context of negative news all around... awesome things are going on!
Common Lisp is around 100x faster than python. For heavy weight problems that becomes critical rapidly. Lisp can express every semantic construct in every other language and yet is super high level. That is the sense that all languages can been as a shell or embedded language on top of Lisp. Lisp was designed on computational abstract base concepts. It was made to literally reason and computably reason about functions and data environments. Lambda Language is alternative much richer equivalent of Turing Machines.
@@टिरंजननकले Not exactly. He wrote a Common Lisp compiler in C++. That makes it easy to drop down from Common Lisp to C++ if he needs to optimize the performance of a certain hot spot. The vast majority of the code is written in Lisp.
Very interesting, thaks for the video. I learned LISP in 1988 with the book The Little Lisper, I remember it was the first time I saw Escher's drawing hands and the concept of recursion. Great language. 🙂
This video is inspiring. Anyway, I didn't know that Common Lisp is very efficient until recently. By using structs and typing hinting, my programs become much faster. Moreover, many libraries Common Lisp is impressive, for example, I use Esrap to make some parsers. Using Esrap is more convenient than a Python's alternative.
Very interesting stuff. I'm a CS student currently in a placement position. I initially planned to study chemistry &/or neuroscience & aspire to eventually develop software to further these domains. I'm also very interested in common lisp as well as fine catalysis control. Nature appears to monitor reaction state & catalyse accordingly. I believe the intersection of these fields could be incredibly fruitful. My initial impressions of the future of this channel were not wrong. Captivating!
I'm old (I was right there with you both in Tandy), and in the process of getting old I've used A LOT of programming languages... but LISP (and it's chums) continue to simply "do my head in"... rather than drive me away, this has given me some kind of "morbid curiosity" and I remain fascinated by LISP and those who use it... And, being an amateur chemistry enthusiast too, Prof. Schafmeister's actual work is the icing on the cake.
If you would enjoy an introductory tour of the representative power of a lisp dialect called scheme , you might invest (worthyp you) true , in a classic publication albeit steep SICP . It is a revelation to read .
I love these episodes (and the range of nail varnish), and this one, as a Common Lisp fan, was no exception. Thanks so much for these conversations Kirs. In the spirit of conversation, I would love to hear you talk with Ginger Bill, the creator of the Odin programming language.
This was awesome - the interactive aspect and ability to pause/ resume in many lisp implementations is relatively little discussed - and very powerful in scientific computing / engineering. Longevity/ low maintenance is also an underestimated factor. I would have loved some screenshots / quick video demo. Anyway I loved that scientific computing got a peek, and hope to see more.
I just wandered in here, from the tropics, where everybody uses Javascript and Python, which I loathe :) So, Common Lisp, huh? In nanotech ... ? Well, if they hacked 'awk' into 'bioawk' to do analysis of genetic sequences, why not Common Lisp for nanotech? Very interesting that the professor explained his odysessy from BASIC to Common Lisp, via C++, Python, Small Talk. I like that he uses C for speed but Common Lisp for the interactive development environment to build his molecules. We need this guy NOT to die! And he's not using Common Lisp just to be "obscure" but because it's the only language that has lasted so long. It's a "forever" language. That's very insightful. How much of that Python code is still going to be around in 50 years? He mentioned he lost a lot of work when Python 3 came out. Effort that is lost now. People don't really think in terms of decades. They think more in terms of "what's fashionable now?". I had a client who had been running a couple of servers with the same operating systems installed on them for 10 years. Never changed a thing because they still ran. People would be aghast at that nowadays. This professor wrote code that's still running over 30 years later. I don't have any code that old. What's the longest running code in the Guiness Book of World Records? Someone said on the Compterphile channel that Lisp is also the language of choice for quantum computing. Is that true? Should we be wasting our time with languages that are going to die out when the fashion changes?
Lisp is the meta language. It's so easy to define a domain specific language with lisp that I could imagine someone doing so accidentally, and this is both one of it's greatest strengths, and one of the biggest things that hold it back The fact that you can create a domain specific language with lisp means that it's really easy for any random programmer to elevate themselves to a language designer, which is pretty dangerous when they don't put much thought into it (*especially* if they don't document their code) I'm not sure if it's still the case that lisp is the language of choice in quantum computing, it doesn't seem like there's a consensus. Quil does seem to be used though, and quil is written in common lisp. Also, qvm (quantum virtual machine) does also exist in lisp. You can still learn stuff from other languages - APL, Erlang, and Haskell all come to mind. Different programming languages can give you different abstractions with different properties, which sometimes lend themselves to different solutions. Admittedly, you'd probably learn more from any of those three than something like Golang. Collaboration is a pretty strong reason to use other languages though. Finding a rust programmer at your average college in the sea of java already isn't very common. Finding a lisp programmer is like finding a unicorn. Even though the lisp programmer might be massively more productive, their projects will likely be faced with far more variance in speed of patching bugs, updates, etc., simply because they are more likely to be the sole maintainers of their projects. People would be aghast to that sort of never updating because programmers have not really cared about security for very long, and security flaws in projects that do care still appear all the time
When you start to study Lisp seriously you quickly discover religious wars about what "real Lisp" is. It simply changes the realm of the argument away from languages defined by syntactical convenience towards s-expression languages that each contain subtly different semantics and assumptions around the development environment or how much Lisp is meant to be a complete system versus an application language. 17:45 of the interview: "...my own Common Lisp implementation". CL is, in some sense, frozen in 1994 - while you can do what this guy did and make a new implementation, what's out there and ready for consumption has a lot of ties to development in Emacs and to the Quicklisp package management system, and both of those are similarly frozen in time(the supply chain attack surface of Quicklisp is huge). And then when you go further into that, it's like, well, there's Common Lisp, but then Emacs is scripted in a different Lisp, and if you use GNU Guile, that's ALSO different. The Schemes are similarly fragmented in terms of code reuse. Clojure and Janet stand out as more modernized takes that slot into the roles of Java and Lua, respectively. I'm working in Janet right now, using it as a preprocessor system, and I think it's a good entry point for someone currently working in Python or JS. Whichever one you end up with, the s-expressions are good, and worth the few weeks of effort needed to get used to it. You're gaining more ways to express your program, and that's hard at first, and then gradually easier as you go along.
don't do python kids, is terrible, I still have nightmares for the breaking changes from python 2 to 3 back in earlh 2000s and all the pain I went through
Someone inform this professor about the Julia programming language, for expressiveness (graphs, mathematical operations), performance, automatic memory management and interoperability with C++.
Julia doesn’t have a standard and there is only one implementation, AFAIK. The interviewee said he wanted a “forever language.” Julia might become one but it’s not currently one.
Julia is nice, but I think Lisp is a better choice for what he's doing. There is a lower impedance mismatch between the code and the data he is dealing with. Plus the whole "forever language" requirement he placed on the project.
This was enthralling and I'm surprised at how few comments there are and the percentage of them off topic or talking about some other language he should have used. Personally this conversation bloomed my fledgling interest in lisps. I'm downloading a compiler now to get started learning. I have no delusions that I would ever make something as important with it but his interest in a forever language and one that can be adapted to the problem rather than the other way around speaks deeply to me. Great conversation, thank you to both of you.
huge respect. he talk about compiler design, problem in python, LLVM IR, performance. and still doing organic chemistry.
well, i'm really glad prof. schafmeister contacted you to make this interview. it is amazing to learn about all this. especially in the context of negative news all around... awesome things are going on!
Common Lisp is around 100x faster than python. For heavy weight problems that becomes critical rapidly. Lisp can express every semantic construct in every other language and yet is super high level. That is the sense that all languages can been as a shell or embedded language on top of Lisp. Lisp was designed on computational abstract base concepts. It was made to literally reason and computably reason about functions and data environments. Lambda Language is alternative much richer equivalent of Turing Machines.
Lisp ftw. Common lisp truly is the back to the future programming language.
Common Lisp is fine. But here professor is using Common LIsp as wrapper on C++ library?
@@टिरंजननकले Not exactly. He wrote a Common Lisp compiler in C++. That makes it easy to drop down from Common Lisp to C++ if he needs to optimize the performance of a certain hot spot. The vast majority of the code is written in Lisp.
This was fantastic! Thank you for the conversation.
Glad you enjoyed it!
no. 1 dev podcast hands down
Very interesting, thaks for the video. I learned LISP in 1988 with the book The Little Lisper, I remember it was the first time I saw Escher's drawing hands and the concept of recursion. Great language. 🙂
Got It, will read it later.
This video is inspiring. Anyway, I didn't know that Common Lisp is very efficient until recently. By using structs and typing hinting, my programs become much faster. Moreover, many libraries Common Lisp is impressive, for example, I use Esrap to make some parsers. Using Esrap is more convenient than a Python's alternative.
You weren't kidding when you said the podcast was venturing into the realm of sci-fi. Heady stuff. Great subject.
"I'm writing code in slime" - really taking the enzyme theme seriously
😂
Best programming language of all time.
(collide like a super nova)
Very interesting stuff. I'm a CS student currently in a placement position. I initially planned to study chemistry &/or neuroscience & aspire to eventually develop software to further these domains. I'm also very interested in common lisp as well as fine catalysis control. Nature appears to monitor reaction state & catalyse accordingly. I believe the intersection of these fields could be incredibly fruitful.
My initial impressions of the future of this channel were not wrong. Captivating!
There is a field called Computational Chemistry.
I'm old (I was right there with you both in Tandy), and in the process of getting old I've used A LOT of programming languages... but LISP (and it's chums) continue to simply "do my head in"... rather than drive me away, this has given me some kind of "morbid curiosity" and I remain fascinated by LISP and those who use it... And, being an amateur chemistry enthusiast too, Prof. Schafmeister's actual work is the icing on the cake.
If you would enjoy an introductory tour of the representative power of a lisp dialect called scheme , you might invest (worthyp you) true , in a classic publication albeit steep SICP . It is a revelation to read .
I love these episodes (and the range of nail varnish), and this one, as a Common Lisp fan, was no exception. Thanks so much for these conversations Kirs.
In the spirit of conversation, I would love to hear you talk with Ginger Bill, the creator of the Odin programming language.
Glad you're enjoying them! 😊
Bill and I actually spoke a few weeks back. You can expect that episode sometime in January. 🙂
This was awesome - the interactive aspect and ability to pause/ resume in many lisp implementations is relatively little discussed - and very powerful in scientific computing / engineering. Longevity/ low maintenance is also an underestimated factor.
I would have loved some screenshots / quick video demo.
Anyway I loved that scientific computing got a peek, and hope to see more.
Love Prof Schafmeister's way. Would be very intestering to have a coding live session using both cando & clasp!
I just wandered in here, from the tropics, where everybody uses Javascript and Python, which I loathe :)
So, Common Lisp, huh? In nanotech ... ?
Well, if they hacked 'awk' into 'bioawk' to do analysis of genetic sequences, why not Common Lisp for nanotech?
Very interesting that the professor explained his odysessy from BASIC to Common Lisp, via C++, Python, Small Talk. I like that he uses C for speed but Common Lisp for the interactive development environment to build his molecules.
We need this guy NOT to die!
And he's not using Common Lisp just to be "obscure" but because it's the only language that has lasted so long. It's a "forever" language. That's very insightful.
How much of that Python code is still going to be around in 50 years? He mentioned he lost a lot of work when Python 3 came out. Effort that is lost now.
People don't really think in terms of decades. They think more in terms of "what's fashionable now?".
I had a client who had been running a couple of servers with the same operating systems installed on them for 10 years. Never changed a thing because they still ran. People would be aghast at that nowadays.
This professor wrote code that's still running over 30 years later. I don't have any code that old.
What's the longest running code in the Guiness Book of World Records?
Someone said on the Compterphile channel that Lisp is also the language of choice for quantum computing. Is that true?
Should we be wasting our time with languages that are going to die out when the fashion changes?
Lisp is the meta language. It's so easy to define a domain specific language with lisp that I could imagine someone doing so accidentally, and this is both one of it's greatest strengths, and one of the biggest things that hold it back
The fact that you can create a domain specific language with lisp means that it's really easy for any random programmer to elevate themselves to a language designer, which is pretty dangerous when they don't put much thought into it
(*especially* if they don't document their code)
I'm not sure if it's still the case that lisp is the language of choice in quantum computing, it doesn't seem like there's a consensus. Quil does seem to be used though, and quil is written in common lisp. Also, qvm (quantum virtual machine) does also exist in lisp.
You can still learn stuff from other languages - APL, Erlang, and Haskell all come to mind. Different programming languages can give you different abstractions with different properties, which sometimes lend themselves to different solutions. Admittedly, you'd probably learn more from any of those three than something like Golang.
Collaboration is a pretty strong reason to use other languages though. Finding a rust programmer at your average college in the sea of java already isn't very common. Finding a lisp programmer is like finding a unicorn. Even though the lisp programmer might be massively more productive, their projects will likely be faced with far more variance in speed of patching bugs, updates, etc., simply because they are more likely to be the sole maintainers of their projects.
People would be aghast to that sort of never updating because programmers have not really cared about security for very long, and security flaws in projects that do care still appear all the time
When you start to study Lisp seriously you quickly discover religious wars about what "real Lisp" is. It simply changes the realm of the argument away from languages defined by syntactical convenience towards s-expression languages that each contain subtly different semantics and assumptions around the development environment or how much Lisp is meant to be a complete system versus an application language. 17:45 of the interview: "...my own Common Lisp implementation". CL is, in some sense, frozen in 1994 - while you can do what this guy did and make a new implementation, what's out there and ready for consumption has a lot of ties to development in Emacs and to the Quicklisp package management system, and both of those are similarly frozen in time(the supply chain attack surface of Quicklisp is huge). And then when you go further into that, it's like, well, there's Common Lisp, but then Emacs is scripted in a different Lisp, and if you use GNU Guile, that's ALSO different. The Schemes are similarly fragmented in terms of code reuse. Clojure and Janet stand out as more modernized takes that slot into the roles of Java and Lua, respectively. I'm working in Janet right now, using it as a preprocessor system, and I think it's a good entry point for someone currently working in Python or JS.
Whichever one you end up with, the s-expressions are good, and worth the few weeks of effort needed to get used to it. You're gaining more ways to express your program, and that's hard at first, and then gradually easier as you go along.
Lisp and Odin are two programming languages that fit in my personality
nice appearances, guys
he got inspired by Swift.
Swift got inspired by Chris Granger's Light Table
Chris Granger got inspired by Lisp and Brett Victor's work.
great episode
Lisp is the mother of all hacks, the best programming language ever, not even haskell, not even agda
meanwhile, fresh: Lisi's E8 Theory of Everything Finally Made Rigorous
department of defence - so definetly whackingtools, right, right, got it.
I wanna work with this man, I wanna be his padawan
an enzyme programmed in lisp that influence on maillard reactions? that could be amazing
I would have liked to hear from the professor if he thought that the secret to good coffee was to control the quinic acid...
you should try to get Arthur Whitney on to talk about K. Or Morten Kromberg to talk about APL.
35:31 Lead up to Crash bandicoot comment
start doing tcsemtrail damage reversal stuff, ktnxbye :)
don't do python kids, is terrible, I still have nightmares for the breaking changes from python 2 to 3 back in earlh 2000s and all the pain I went through
Someone inform this professor about the Julia programming language, for expressiveness (graphs, mathematical operations), performance, automatic memory management and interoperability with C++.
Julia doesn’t have a standard and there is only one implementation, AFAIK. The interviewee said he wanted a “forever language.” Julia might become one but it’s not currently one.
Julia is nice, but I think Lisp is a better choice for what he's doing. There is a lower impedance mismatch between the code and the data he is dealing with. Plus the whole "forever language" requirement he placed on the project.
nice hair
So I’m gonna learn Lisp! But only after Oh🐫
Love the call to p_me .