Тёмный

How Lisp is designing Nanotechnology (with Prof. Christian Schafmeister) 

Developer Voices
Подписаться 19 тыс.
Просмотров 8 тыс.
50% 1

One of our oldest languages meets one of our newest sciences in this episode, as we talk with Professor Christian Schafmeister, an award-winning nanotech researcher who's been developing a language and a design suite to help research the future molecular machines.
In this episode Christian gives us a quick chemistry lesson to explain what his research is trying to achieve, then we get into the software that's doing it: A new flavour of Common Lisp. But why Lisp? What advantages does a 60 year old language design offer? How does he strike a balance between high-level language features and the need for exceptional performance and parallelism? And what tricks does his development environment have that modern IDEs could still learn a thing or two from?
--
Clasp (the Lisp): github.com/clasp-developers/c...
Cando (the design language): github.com/cando-developers/c...
The Feynman Prize: en.wikipedia.org/wiki/Feynman...
Alphafold: alphafold.ebi.ac.uk/
More on LEaP: ambermd.org/tutorials/pengfei/
Interactive Development of Crash Bandicoot: all-things-andy-gavin.com/201...
Christian's Research Group: www.schafmeistergroup.com/
Kris on Twitter: / krisajenkins
Kris on LinkedIn: / krisjenkins
--
0:00 Intro
1:20 Podcast
51:45 Outro
#programming #software #lisplang #commonlisp #nanotech

Опубликовано:

 

5 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 38   
@budiardjo6610
@budiardjo6610 6 месяцев назад
huge respect. he talk about compiler design, problem in python, LLVM IR, performance. and still doing organic chemistry.
@ssg6499
@ssg6499 6 месяцев назад
Lisp ftw. Common lisp truly is the back to the future programming language.
@user-zx3vp8mw7d
@user-zx3vp8mw7d 4 месяца назад
Common Lisp is fine. But here professor is using Common LIsp as wrapper on C++ library?
@shawnbadger2737
@shawnbadger2737 2 дня назад
@@user-zx3vp8mw7d 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.
@sjatkins
@sjatkins 5 месяцев назад
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.
@veer66
@veer66 6 месяцев назад
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.
@TJ-hs1qm
@TJ-hs1qm 29 дней назад
no. 1 dev podcast hands down
@theena
@theena 6 месяцев назад
You weren't kidding when you said the podcast was venturing into the realm of sci-fi. Heady stuff. Great subject.
@delibellus
@delibellus 6 месяцев назад
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!
@JorgeMartinez-xb2ks
@JorgeMartinez-xb2ks 6 месяцев назад
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. 🙂
@rato_gordo
@rato_gordo 6 месяцев назад
Got It, will read it later.
@RyanWhitlie
@RyanWhitlie 6 месяцев назад
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.
@DeveloperVoices
@DeveloperVoices 6 месяцев назад
Glad you're enjoying them! 😊 Bill and I actually spoke a few weeks back. You can expect that episode sometime in January. 🙂
@ap0s7le
@ap0s7le 5 месяцев назад
This was fantastic! Thank you for the conversation.
@DeveloperVoices
@DeveloperVoices 5 месяцев назад
Glad you enjoyed it!
@roryboyes2307
@roryboyes2307 6 месяцев назад
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!
@PRIMARYATIAS
@PRIMARYATIAS 6 месяцев назад
There is a field called Computational Chemistry.
@snyadmin
@snyadmin 6 месяцев назад
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.
@weld3964
@weld3964 6 месяцев назад
Love Prof Schafmeister's way. Would be very intestering to have a coding live session using both cando & clasp!
@edgeeffect
@edgeeffect 3 месяца назад
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.
@SpacemanY2K38
@SpacemanY2K38 3 дня назад
Best programming language of all time. (collide like a super nova)
@jorgeosorio1613
@jorgeosorio1613 6 месяцев назад
great episode
@sethbrown1763
@sethbrown1763 6 месяцев назад
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?
@lambdalambdalambda-oq6xt
@lambdalambdalambda-oq6xt 4 месяца назад
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
@JH-pe3ro
@JH-pe3ro 2 месяца назад
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.
@v2ike6udik
@v2ike6udik 6 месяцев назад
department of defence - so definetly whackingtools, right, right, got it.
@v2ike6udik
@v2ike6udik 6 месяцев назад
meanwhile, fresh: Lisi's E8 Theory of Everything Finally Made Rigorous
@kahnfatman
@kahnfatman 17 дней назад
So I’m gonna learn Lisp! But only after Oh🐫
@v2ike6udik
@v2ike6udik 6 месяцев назад
start doing tcsemtrail damage reversal stuff, ktnxbye :)
@dmg46664
@dmg46664 6 месяцев назад
35:31 Lead up to Crash bandicoot comment
@nanthilrodriguez
@nanthilrodriguez 6 месяцев назад
you should try to get Arthur Whitney on to talk about K. Or Morten Kromberg to talk about APL.
@programmingdesign4382
@programmingdesign4382 6 месяцев назад
Someone inform this professor about the Julia programming language, for expressiveness (graphs, mathematical operations), performance, automatic memory management and interoperability with C++.
@dd884e5d8a
@dd884e5d8a 6 месяцев назад
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.
@shawnbadger2737
@shawnbadger2737 2 дня назад
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.
@dhuxdheerdahir2736
@dhuxdheerdahir2736 6 месяцев назад
nice hair
@jondor654
@jondor654 5 месяцев назад
Love the call to p_me .
Далее
Июль в Tanks Blitz
51:46
Просмотров 91 тыс.
💜☀️✨
00:47
Просмотров 128 тыс.
Кто понял тот понял
00:24
Просмотров 325 тыс.
FARUX RAIMOV AVJIGA CHIQDI - JAVOHIR🔥
01:01
Просмотров 1,7 млн
What is the Curse of Lisp?
25:09
Просмотров 26 тыс.
The Vlang Drama
43:35
Просмотров 97 тыс.
Taking Erlang to OCaml 5 (with Leandro Ostera)
1:03:57
Why LISP Is The Language of Legends
9:05
Просмотров 32 тыс.
Is Odin "Programming done right"? (with Bill Hall)
1:00:05
Designing Actor-Based Software (with Hugh McKee)
1:12:03
Июль в Tanks Blitz
51:46
Просмотров 91 тыс.