The reason why I like watching your videos is that, you don't treat your viewers like complete idiots and elaborate on every single point. You don't waste our time either.
Agreed. I like the brisk pacing of the videos, as it gives the general assumption that you have programmed before and you just want to learn new syntax.
I’m taking a class at ASU where we learn a new language/ paradigm every week. So far you have had a great video or series on every one. Java, C, C++, Prolog and Lisp. Thanks for getting us up to speed quickly!
I am weary. My breath is short, and my voice is raspy. I am crawling against the floor with no hope. All I see is black, but then. A shining light appears before me and then I hear. "Well hello internet". The holy arbiter of programming, the LORD himself has come.
saMEEE!! i need to speak with a lisp for a drama performance and was really happy to finally find a tutorial on how to speak with a lisp, then i saw the length of it and was quite confused, but still ready for the ride...
amazing video man. I've been reading LISP tutorials on and off for months now and never fully got it, because I'm a hands on type who likes to see the actual thing being done. This video cleared up SOOOO much, and just in time to give a report on the differences between C++/Java and LISP programming. You're a champ!
wow, this is the greatest tutorial i have ever seen for any topic. This has saved me soooo much time. I love it. I could learn a new language every night like this. Sure I still have to play with it but getting this far up to speed so quickly and knowing the basic format and limitations is all i need to start playing around. Thanks man. You just saved a month of my life.
God bless you, Derek! I chose LISP as a functional paradigm language to be presented at my university class and was feeling pretty lost until I found your video. Kind regards from Brazil!
Hello! I am 14 years old. I know c, c++,python,perl,rust,javascript,python,bash,batch,golang. You are my real hero in the process of learning lisp! Thank you so much!
I was watching this tut some months ago and dint understand it at all, though with more experience it all makes SO much sense. Lisp seems really awesome! ( nice tut as always )
Hey Derek, a little feedback: At 43:40, when you were explaining quasiquoting, I spend 30 minutes trying to figure out why my code wasn't working, finally I realized that I was using an single quote( ' ) , instead of the thingy under the tilde ( ` ). Im my opinion you should have stated it to avoid confusion, would have saved me so much time, especially since we put single quotes in front of variables often!
they should imo remove that symbol, I mean from english/unicode, or change the design. I have heard people having very bad problems due to that symbol, there is this guy on YT, who once deleted some teams entire DB because he used ' instead of ` . I had the same problem as you a week ago when I was learning quasiquoting from a book, which didnt mention it too.
Well I just got my FIRST fiverr order and it was related to lisp. I took the order anyway although I have never even seen someone code lisp before. And here I am, learning lisp in an hour and I can easily say this video will help me code whatever customer needs. XD
Hey, are you planning to do Clojure/ClojureScript tutorial any time soon? I really believe that your tutorials genuinely help people get the grasp of a language much faster than a book - Thanks :)
I thought this was great, I posted a link to it on /r/Common_Lisp subreddit. Good Job. As a regular user of Common Lisp (and a contributor to the sbcl compiler) I approve of this video. You have done the community a great service. Thanks!
Cody Mallery Wow thank you :) I have been using Lisp and Prolog a lot on a local university project and thought I'd see if I could help people see how awesome it is. I'm very happy that you liked it.
Dude. You are teaching so many programming languages. What actually you use at your workplace? And yes, thanx for this nice tutorial. Keep up the great work.
Amazing videos. If you think that khan academy is great being free, this is different. Compact, time efficient learning. Other media can fill in the gaps such as books, more complete videos, courses, etc, but this overview idea is a really need learning tool, and Mr. Banas does it so well.
Thanks for this very nice Video Derek. After watching this, there just so much Information for me to lookup/think about etc. But you did a good Job. Appreciated watching it, while learning Lisp ^^
Something Emacs related would be really helpful. A Text Editor so famous, its like a religion to some people, there's got to be something really special about that..
for me the same. I have learned this tutor from Mr. Derek in four seasons, each one ca 30 min. and made meany exercises . At the end I have a compound Idea how can I for my programming in Lisp, use the features He taught me. Thanx Mr. Derek
You may dislike Common Lisp, It may not have tons of libraries or a nice community (they are pretty violent over on comp.lang.lisp), It may have strange conventions and language warts. Some implementations generate huge binaries because they ship the entire runtime inside the executable. However Common Lisp has a standard that is set in stone, meaning the language is stable, you do not have to learn a new language core api every 6 months or worry about legacy lisp code not running. Common lisp is a stable platform to get real world problems done. A tool box containing C/C++, a Lisp implementation, and a web language is hard to beat. Remember use the right tool for the job, no matter how amazing lisp seems, sometimes lisp is not the tool you are looking for.
Some things you should know before you start learning LISP. Lisp is case insensitive (Mentioned) Lisp is fully functional language ... Hence everything is inside parenthesis (). LISP uses prefix format ... That's why Operators are always placed to the left of the operands ...
"Things inside parenthesis" don't make a language functional. The use of parenthesis everywhere is just the consequence of Lisp lacking a syntax (or its syntax being extremely simple, if you will)
I can't decide whether it was a coincidence that the stylized "LISP" logo looks like the outline of a boot nested inside the back side of a farm animal. Orwell would be proud.
Hey Derek! I have a question, can structs have a pointer to another struct? And if yes, how would one access the value of that another struct? Thank you for your great videos!
Couple things: 1. Please don't introduce the concept of state so early :( There are pedagogically-sound ways to draw parallels without introducing something so unnatural to lisp. 2. Cons cells are 'constructed memory objects' - they aren't 'consecutive' (www-formal.stanford.edu/jmc/recursive.pdf p28)
+Sean Allred Sorry about the cons mess up. I looked back through my notes and realized that I have been calling them consecutive cells for years because of how they were first described to me. You are correct. I basically tried to teach Lisp in a way that I thought would be easier to digest then what I saw in other text books. I'm sorry if you didn't like it.
It's alright :) I'm not myself a fan of your pedagogical strategy with this one, but I understand the parallels you're trying to draw with languages or patterns your audience may already be familiar with :) And it's amazing all the things we go through life thinking! XD I've discovered a bunch of those things and I'm sure there are more to turn over. (Though aside, I can see where 'consecutive' makes sense, too - being a linked list and all. Just isn't what's in the paper ;)
Before I say what I came here to say, I just wanted to say that this is awesome, and I've been looking for a good introduction to Lisp (and functional programming in general). I've been messing around with Lisp for a few hours now and it's a lot of fun. That said: I'm gonna be super honest here: I think functional languages are pretty cool, but I don't think they do a great job of empowering the user to better use their hardware, which is basically what a programming language is for. I think it's great if you're working purely with mathematical data (like in statistics and higher-level math), but I feel like for everything else, anything that has more structure than just "numbers and lists of numbers" (which seems to me to be how Lisp treats everything), procedural and/or OOP paradigms seem to be much better, and I think that most of the use cases developers are seeing these days *are* the kinds of highly-structured problems that procedural languages do great at. Basically, I think Lisp (and functional programming in general) abstracts *too much* away from what is actually going on, or at least abstracts it in such a way that it makes a lot of the more common problems more difficult to solve. But then, that might be because it was designed to solve *un*common problems, which I don't have enough experience to judge. But, then again, I grew up with Python. It's like a strange hybrid of OO, procedural and functional, so I don't know what that says about my opinion. P.S. )))))))))))))))))))))))))))) ALL THE CLOSING PARENS!
Christopher Pilcher The parenthesis cracked me up :) I agree with much of what you said and I also think that these beliefs are very common to the point that many people see no point in using a functional language at all. This very well may say more about the lack of proper teaching in regards to how to structure programs using a functional language. I think the main reason why people struggle with OOP languages is because they don't have a solid understanding of boring UML. I also see that a tutorial on SML may be very important. I'm going to work more on making videos on these and related subjects. Thank you for the good comment / questions :)
I totally agree! I'm all for using the right tool for the job, and I'm really glad you helped me start adding this one to my belt. :) Thanks for the videos. You keep 'em coming and I'll keep watching!
Ah! I have figured it out. First I must make a command window, go in that window to the clisp directory, and then I can run the compiled fas file directly with C:\Data\Lisp\HelloWorld.fas I wish you were more clear about how to run lisp on a windows computer.
Derek, I've been watching many of the videos that you've posted and enjoy them. I've learned a lot. I have been toying around with some of the tips I've learned from you and am trying to figure out how to display, sort and filter data pulled from MySQL via PHP to a webpage. The thought is to be able to click the header and sort the data, have a hierarchical filter system and be able to display a page at a time. Just a thought for a series possibly? Or maybe you have a good reference? Thanks again, the work you do has inspired me.
Ben Elder Thank you :) It would be easy to pull the data into a table and then use a plugin like this to sort everything dynamically tablesorter.com/docs/ Anything dynamic will have to be implemented with JavaScript. I plan on making many more useful JavaScript videos soon.
I have heard a lot of people say that Lisp (and many other languages similar to it) are not useful for any practical purposes? Then is there a reason why so many people are interested in Lisp? Also, can you please make a video tutorial on emacs? It would be wonderful to supplement some interesting aspects of Lisp as well as help newbies like me become more productive.
+Jash Gala Lisp is widely used in the travel industry and to a lesser extent in universities for AI. Either way I find learning other languages like lisp are a great way to expand your mind and improve problem solving abilities. I have implemented capabilities in other languages into Java because Java didn't have those abilities. I would have never known I needed them unless I was introduced to them in other languages.
Hi, with sbcl I found seemingly a little error at 34 : 33, list counting is 0 indexed that means after the list '(2 4 6) is pushed with 1, it becomes '(1 2 4 6) so (nth 2 *nums*) actually returns the 3rd element of the list. I love your tutorials, they are so brilliant, I have watched a whole bunch of them, really getting inspired. So a million words into one ---- Thank you Derek my great teacher :)
im confused sir maybe i will read some of the basics then i go back here for sure. first time in my life to see a code in reverse and a lot of parenthesis haha nice tutorial sir
I feel lucky to see u r tutorial it is so simple and awsome . Thanks so much. Can u please suggest some other languages that i Should study. I know php,python,c and c ++(basics level).
Derek Banas I have been following your channel ever since your first programming tutorial in one video, and my mind state towards your videos has changed from simply interesting to truly impressive over time. How long is your learning cycle to a new programming language? Do you cover esoteric programming language? (Just kidding, don't be serious!) Thank you very much all the time.
Large O Thank you for the compliment :) After doing this for 30 years it is pretty easy to change languages for me. I do a lot of free work helping students on projects and it is fun to use languages I haven't used for years. Lisp was an old favorite of mine that I have happily been able to have fun with over the last few months and I thought I'd share the fun.
Man, again... you're awesome! Haha. A freaking machine! I vote for Scala for the next video, or maybe Haskell or Earlang/Elixir, that would be awesome! :)
Learn in One Videos for Every Programming Language
Subscribe to Bookmark them: bit.ly/2FWQZTx
C++ : th-cam.com/video/Rub-JsjMhWY/w-d-xo.html
Python : th-cam.com/video/N4mEzFDjqtA/w-d-xo.html
Java : th-cam.com/video/n-xAqcBCws4/w-d-xo.html
PHP : th-cam.com/video/7TF00hJI78Y/w-d-xo.html
MySQL : th-cam.com/video/yPu6qV5byu4/w-d-xo.html
JavaScript : th-cam.com/video/fju9ii8YsGs/w-d-xo.html
C# : th-cam.com/video/lisiwUZJXqQ/w-d-xo.html
HTML5 : th-cam.com/video/kDyJN7qQETA/w-d-xo.html
CSS3 : th-cam.com/video/CUxH_rWSI1k/w-d-xo.html
JQuery : th-cam.com/video/BWXggB-T1jQ/w-d-xo.html
TypeScript : th-cam.com/video/-PR_XqW9JJU/w-d-xo.html
ECMAScript : th-cam.com/video/Jakoi0G8lBg/w-d-xo.html
Swift : th-cam.com/video/dKaojOZ-az8/w-d-xo.html
R : th-cam.com/video/s3FozVfd7q4/w-d-xo.html
Haskell : th-cam.com/video/02_H3LjqMr8/w-d-xo.html
Handlebars : th-cam.com/video/4HuAnM6b2d8/w-d-xo.html
Bootstrap : th-cam.com/video/gqOEoUR5RHg/w-d-xo.html
Rust : th-cam.com/video/U1EFgCNLDB8/w-d-xo.html
Matlab : th-cam.com/video/NSSTkkKRabI/w-d-xo.html
Arduino : th-cam.com/video/QO_Jlz1qpDw/w-d-xo.html
Crystal : th-cam.com/video/DxFP-Wjqtsc/w-d-xo.html
Emacs : th-cam.com/video/Iagbv974GlQ/w-d-xo.html
Clojure : th-cam.com/video/ciGyHkDuPAE/w-d-xo.html
Shell : th-cam.com/video/hwrnmQumtPw/w-d-xo.html
Perl : th-cam.com/video/WEghIXs8F6c/w-d-xo.html
Perl6 : th-cam.com/video/l0zPwhgWTgM/w-d-xo.html
Elixir : th-cam.com/video/pBNOavRoNL0/w-d-xo.html
D : th-cam.com/video/rwZFTnf9bDU/w-d-xo.html
Fortran : th-cam.com/video/__2UgFNYgf8/w-d-xo.html
LaTeX : th-cam.com/video/VhmkLrOjLsw/w-d-xo.html
F# : th-cam.com/video/c7eNDJN758U/w-d-xo.html
Kotlin : th-cam.com/video/H_oGi8uuDpA/w-d-xo.html
Erlang : th-cam.com/video/IEhwc2q1zG4/w-d-xo.html
Groovy : th-cam.com/video/B98jc8hdu9g/w-d-xo.html
Scala : th-cam.com/video/DzFt0YkZo8M/w-d-xo.html
Lua : th-cam.com/video/iMacxZQMPXs/w-d-xo.html
Ruby : th-cam.com/video/Dji9ALCgfpM/w-d-xo.html
Go : th-cam.com/video/CF9S4QZuV30/w-d-xo.html
Objective C : th-cam.com/video/5esQqZIJ83g/w-d-xo.html
Prolog : th-cam.com/video/SykxWpFwMGs/w-d-xo.html
LISP : th-cam.com/video/ymSq4wHrqyU/w-d-xo.html
Express : th-cam.com/video/xDCKcNBFsuI/w-d-xo.html
Jade : th-cam.com/video/l5AXcXAP4r8/w-d-xo.html
Sass : th-cam.com/video/wz3kElLbEHE/w-d-xo.html
Holy list
if only this video was around back in 94 when i failed to learn this beautiful language.
Oracle please
Hey Dee, how about C?
If you would bro. Thank you.
What a pro
The reason why I like watching your videos is that, you don't treat your viewers like complete idiots and elaborate on every single point. You don't waste our time either.
Agreed. I like the brisk pacing of the videos, as it gives the general assumption that you have programmed before and you just want to learn new syntax.
this is so true.
Install Lisp 00:54 Introduction 02:50 Format 12:09 Math Functions 13:26 Equality 15:11 If 18:13 Case 23:03 When 24:17 Unless 24:52 Cond 25:16 Loop 26:38 DoTimes 28:33 Lists 28:59 Car / Cdr 29:56 Association List 36:35 Functions 38:24 Optional 39:34 Receive Multiple Values 40:18 Key 41:09 Return-From 42:14 Quasi Quoting 42:46 MapCar 44:16 Return Multiple Values 47:16 Higher Order Functions 48:05 Lambda 50:30 Macros 51:20 Classes 56:25 Generic Function 1:00:46 Inheritance 1:05:06 Arrays 1:06:09 Hash Table 1:08:29 Structures 1:10:41 File I/O 1:13:05
Nilesh Pathare Edits 🙏🙏🙏
Pin this @Derek
Thanks a lot
Great man
thank u soo much this is what I was looking for good one. U save my life
One of the best tutorials I've ever seen, some programming language like Lisp is a bit of hard to find useful tutorials...thanks!
Thank you for the nice compliment :) I always try to do my best
@@derekbanas hope you made a profit on this video. it seems like you put the same effort in this video but got much less views.
I’m taking a class at ASU where we learn a new language/ paradigm every week. So far you have had a great video or series on every one. Java, C, C++, Prolog and Lisp. Thanks for getting us up to speed quickly!
Thank you for the compliment. I'm happy I have been of help.
I envy you
Cse 240 has brought me here as well
I am weary. My breath is short, and my voice is raspy. I am crawling against the floor with no hope. All I see is black, but then. A shining light appears before me and then I hear. "Well hello internet". The holy arbiter of programming, the LORD himself has come.
That's funny :) I'm happy to be of help
"Well hello internet"
i read it in his voice😂
not kidding I thought this was a tutorial on how to speak with a lisp but I was greatly mistaken
That's funny :)
Just don't name your dog sylvester... like my former co-worker did. He had a lisp... even he laughed at that one.
Dan Campbell 😂
Larissa Wratney RIGHTTTT
saMEEE!! i need to speak with a lisp for a drama performance and was really happy to finally find a tutorial on how to speak with a lisp, then i saw the length of it and was quite confused, but still ready for the ride...
amazing video man. I've been reading LISP tutorials on and off for months now and never fully got it, because I'm a hands on type who likes to see the actual thing being done. This video cleared up SOOOO much, and just in time to give a report on the differences between C++/Java and LISP programming. You're a champ!
+Joe Bochinski thank you very much 😀 I'm glad I cleared it up
Excellent. Suggestion to viewers: watch at .75x the first time for deeper understanding. Derek moves along briskly!
wow, this is the greatest tutorial i have ever seen for any topic. This has saved me soooo much time. I love it. I could learn a new language every night like this. Sure I still have to play with it but getting this far up to speed so quickly and knowing the basic format and limitations is all i need to start playing around. Thanks man. You just saved a month of my life.
Thank you very much :) I'm glad they help
God bless you, Derek! I chose LISP as a functional paradigm language to be presented at my university class and was feeling pretty lost until I found your video.
Kind regards from Brazil!
I'm happy I could help :) May God bless you as well.
Hello! I am 14 years old. I know c, c++,python,perl,rust,javascript,python,bash,batch,golang. You are my real hero in the process of learning lisp! Thank you so much!
Thank you for taking the time to write such a nice message :) I wish you all the best and I'm happy that I could help you along on your journey!
@@derekbanasWhat programming language do you recommend I learn? I am a bored competitive programmer.
@@contprogramare1126 learn haskell and dart
@@blog.daLuna Thank you. Learning haskell was a really battle, but I wined it. Dart sounds good.
I was watching this tut some months ago and dint understand it at all, though with more experience it all makes SO much sense. Lisp seems really awesome! ( nice tut as always )
Dude is there a language that you don't know?
I'm old so I've used mostly all of them :)
Do you even assembly?
can you assist with the XKCD degree in the universe? because that might actually need to be a thing.
do you have any videos on SML?
perhaps Chinese :)
@21:18 [line no. 6] The variable *Work* can never be =67 at the same time
These "in one video" tutorials are great Derek! These are very great to take a look at it before getting started. Keep it going buddy!
Thank you very much :) Happy I could help
@@derekbanas Do you have a Github profile, sir?
This is awesome....finally a one point resource for an entire programming language.
Thanks a lot Derek Banas
Thank you :) I'm very happy you liked it
I found this video a super nice refreshment after haven't used lisp for ten years!
Thank you!
Jiaqi Liu Thank you :) You're very welcome
Hey Derek, a little feedback:
At 43:40, when you were explaining quasiquoting, I spend 30 minutes trying to figure out why my code wasn't working, finally I realized that I was using an single quote( ' ) , instead of the thingy under the tilde ( ` ). Im my opinion you should have stated it to avoid confusion, would have saved me so much time, especially since we put single quotes in front of variables often!
Sorry for not explaining that better
"Thingy under the tilde" is called backquote, or backtick.
I use that thing a lot in javascript, but i can understand, they look similar
they should imo remove that symbol, I mean from english/unicode, or change the design. I have heard people having very bad problems due to that symbol, there is this guy on YT, who once deleted some teams entire DB because he used ' instead of ` . I had the same problem as you a week ago when I was learning quasiquoting from a book, which didnt mention it too.
@@vyrsh0 while theyre at it, they should remove capital I and lowercase l too
Thanks for creating this video, you're a good teacher! I'm getting into Common Lisp and this helps expedite the learning process.
Thank you :) I'm happy I could help
I'm not sure why but learning at this pace...(with a few pauses) is really exciting!! good Job making these videos.
Thank you :) I try to make videos that can be paused through so everyone can learn at their own pace
From your experience working with many languages, has an underlying ethos or Tao of programming revealed itself to you?
Derek is a walking talking programming machine. Love these vids :)
Ith thith doing it right?
Derek Banas ...thank you very much ... i have learned so much from your tutorials ....again thank you very much
Well I just got my FIRST fiverr order and it was related to lisp. I took the order anyway although I have never even seen someone code lisp before. And here I am, learning lisp in an hour and I can easily say this video will help me code whatever customer needs. XD
I'm happy I could help :)
@@derekbanas You and those guys at stackoverflow helped me complete a project in under 24 hrs when I was extremely new to lisp
OMG! I've just started learning LISP and have been wondering if you have this video! What a coincidence!
after a year, result u got was worth it?
Yeah, I'm quite happy to have some experience in working with LISP
Lisp is one of the best, why? Cos its just way out there with the aliens, man, its a supernova on steroids
Hey, are you planning to do Clojure/ClojureScript tutorial any time soon?
I really believe that your tutorials genuinely help people get the grasp of a language much faster than a book - Thanks :)
Thank you :) Yes Clojure is on the list
I thought this was great, I posted a link to it on /r/Common_Lisp subreddit. Good Job. As a regular user of Common Lisp (and a contributor to the sbcl compiler) I approve of this video. You have done the community a great service. Thanks!
Cody Mallery Wow thank you :) I have been using Lisp and Prolog a lot on a local university project and thought I'd see if I could help people see how awesome it is. I'm very happy that you liked it.
Dude. You are teaching so many programming languages. What actually you use at your workplace?
And yes, thanx for this nice tutorial. Keep up the great work.
Thank you :) The languages I tend to use the most are JS, PHP, C#, Python, Swift and Kotlin. In the real world I make shopping carts and mobile apps.
Lisp has a certain charm to it :D
+Sébastien Laberge I love lisp! It is amazing that it has stuck around this long.
@@derekbanas If you love lisp, why do you close the brackets in new lines? It hurts man.
Amazing videos. If you think that khan academy is great being free, this is different. Compact, time efficient learning. Other media can fill in the gaps such as books, more complete videos, courses, etc, but this overview idea is a really need learning tool, and Mr. Banas does it so well.
Thank you for the nice compliment :)
Thanks a lot for the tutorial. The most helpful resource that I was able to find for lisp out there.
I’m happy I could help :)
Thanks for this very nice Video Derek. After watching this, there just so much Information for me to lookup/think about etc. But you did a good Job. Appreciated watching it, while learning Lisp ^^
You're very welcome :) I'm glad I helped
Thank You Derek Banas, you made learning fun and easy.
Thank you for the nice compliment :)
Lifesaver for my Programming Languages class. Donation heading your way
Thank you :) I'm very happy I could help
You sir... are the philanthropic God of coding.
Thank you for the nice compliment :) I'm very lucky to be able to help
my vote is for F# in one video! would be super awesome! thanks for making these =3
CynicatPro I'll cover F# very soon
Derek Banas yay x3
Derek Banas isn't f# used in banking
NirajC72 its a really cool language, very multithreading/math friendly =3
what sort of careers would use f#
Derek, I think this is the best video I have seen of yours. Others are a bit too... much, hah, but I salute those, too. You do good work.
Tank you for the compliment :)
C, Python, and MATLAB coder. Lex Fridman brought me here. Mahalo!
Seriously? He referred my video? If that’s true that is pretty cool
Thank you Derek for this very interesting video!
Awesome tutorial. Thanks a lot for your help man ! Appreciated it :)
Man... There is one word to describe you: "Awesome"! Thanks a lot :)
+Douglas Rocha Thank you :) You're very welcome
Thank you very much for your comprehend Lecture. I have learned and practiced every Item which was very helpful for my Lisp-Experience.
Thank you I'm happy to be of help :)
This is an excellent tutorial on lisp. Thanks.
Thank you :)
Something Emacs related would be really helpful. A Text Editor so famous, its like a religion to some people, there's got to be something really special about that..
It's great! Thnak you!
I need to learn Lisp in one day and you video seems to make it possible.
You're very welcome :)
for me the same. I have learned this tutor from Mr. Derek in four seasons, each one ca 30 min. and made meany exercises . At the end I have a compound Idea how can I for my programming in Lisp, use the features He taught me. Thanx Mr. Derek
alexandra-stefania moloiu hi , if you learned, language of lisp, please give me idea, i would do my own lisp
You may dislike Common Lisp, It may not have tons of libraries or a nice community (they are pretty violent over on comp.lang.lisp), It may have strange conventions and language warts. Some implementations generate huge binaries because they ship the entire runtime inside the executable. However Common Lisp has a standard that is set in stone, meaning the language is stable, you do not have to learn a new language core api every 6 months or worry about legacy lisp code not running. Common lisp is a stable platform to get real world problems done. A tool box containing C/C++, a Lisp implementation, and a web language is hard to beat. Remember use the right tool for the job, no matter how amazing lisp seems, sometimes lisp is not the tool you are looking for.
Cody Mallery I agree that Lisp definitely isn't perfect for every situation, but when it's good there is nothing else quite like it.
Lisp looks surprisingly more alien than Clojure.
Haha...its really alienated..
To inherit multiple classes separate the class names with spaces not commas.
PuercoPop Whoops you are correct. Sorry about that error. I was getting tired :(
The *cons* operator stands for "CONStruct[or]" - not "consecutive". en.wikipedia.org/wiki/Cons
Thanks my knowledgeable teacher Derek Banas.
+Halil İbrahim Oymacı You're very welcome :)
Elixir should be next. It's Awesome!
santicomp I will definitely cover Elixir soon. Thank you for the request :)
Some things you should know before you start learning LISP.
Lisp is case insensitive (Mentioned)
Lisp is fully functional language ... Hence everything is inside parenthesis ().
LISP uses prefix format ... That's why Operators are always placed to the left of the operands ...
Thank you for the input :)
Lisp is multi paradigm not really functional
"Things inside parenthesis" don't make a language functional. The use of parenthesis everywhere is just the consequence of Lisp lacking a syntax (or its syntax being extremely simple, if you will)
I can't decide whether it was a coincidence that the stylized "LISP" logo looks like the outline of a boot nested inside the back side of a farm animal. Orwell would be proud.
That's funny :)
I've been waiting for this for a long time many thanks to you Derek
ShellBullet1011 It is one of my favorite languages. I'm very happy that I could cover it.
Derek Banas I love LISP. Amazing Language.
AF1FHT12 Yes very cool!
Can you do a tutorial on Racket? It's much more beginner friendly and it's also very powerful.
I'll see what I can do
Lisp is great!!!!!
I know you reply to every comment. Got one for a Haskell video and Java. This time learning Nyquist, an XLisp dialect. Thanks!
I'm very happy that the videos have helped :)
Lisp rocks. So does Derek...
Roman Medvid Thank you :) It is a very cool language.
Hey Derek!
I have a question, can structs have a pointer to another struct? And if yes, how would one access the value of that another struct?
Thank you for your great videos!
Couple things:
1. Please don't introduce the concept of state so early :( There are pedagogically-sound ways to draw parallels without introducing something so unnatural to lisp.
2. Cons cells are 'constructed memory objects' - they aren't 'consecutive' (www-formal.stanford.edu/jmc/recursive.pdf p28)
+Sean Allred Sorry about the cons mess up. I looked back through my notes and realized that I have been calling them consecutive cells for years because of how they were first described to me. You are correct. I basically tried to teach Lisp in a way that I thought would be easier to digest then what I saw in other text books. I'm sorry if you didn't like it.
It's alright :) I'm not myself a fan of your pedagogical strategy with this one, but I understand the parallels you're trying to draw with languages or patterns your audience may already be familiar with :)
And it's amazing all the things we go through life thinking! XD I've discovered a bunch of those things and I'm sure there are more to turn over.
(Though aside, I can see where 'consecutive' makes sense, too - being a linked list and all. Just isn't what's in the paper ;)
Why not use a REPL for the demo, rather than wrap everything in "format t ..." functions. It would be less confusing for your audience.
Before I say what I came here to say, I just wanted to say that this is awesome, and I've been looking for a good introduction to Lisp (and functional programming in general). I've been messing around with Lisp for a few hours now and it's a lot of fun. That said:
I'm gonna be super honest here: I think functional languages are pretty cool, but I don't think they do a great job of empowering the user to better use their hardware, which is basically what a programming language is for.
I think it's great if you're working purely with mathematical data (like in statistics and higher-level math), but I feel like for everything else, anything that has more structure than just "numbers and lists of numbers" (which seems to me to be how Lisp treats everything), procedural and/or OOP paradigms seem to be much better, and I think that most of the use cases developers are seeing these days *are* the kinds of highly-structured problems that procedural languages do great at.
Basically, I think Lisp (and functional programming in general) abstracts *too much* away from what is actually going on, or at least abstracts it in such a way that it makes a lot of the more common problems more difficult to solve. But then, that might be because it was designed to solve *un*common problems, which I don't have enough experience to judge.
But, then again, I grew up with Python. It's like a strange hybrid of OO, procedural and functional, so I don't know what that says about my opinion.
P.S. )))))))))))))))))))))))))))) ALL THE CLOSING PARENS!
Christopher Pilcher The parenthesis cracked me up :) I agree with much of what you said and I also think that these beliefs are very common to the point that many people see no point in using a functional language at all. This very well may say more about the lack of proper teaching in regards to how to structure programs using a functional language. I think the main reason why people struggle with OOP languages is because they don't have a solid understanding of boring UML. I also see that a tutorial on SML may be very important. I'm going to work more on making videos on these and related subjects. Thank you for the good comment / questions :)
I totally agree! I'm all for using the right tool for the job, and I'm really glad you helped me start adding this one to my belt. :) Thanks for the videos. You keep 'em coming and I'll keep watching!
Thanks for this amazing tutorial !! :P
Thank you very much :)
can you make a video on basics of lisp and also the difference between lisp and python
it will be very usefull to eveyone
Ah! I have figured it out.
First I must make a command window, go in that window to the clisp directory, and then I can run the compiled fas file directly with C:\Data\Lisp\HelloWorld.fas
I wish you were more clear about how to run lisp on a windows computer.
Oh- I... this isn't what I thought it was gonna be but interesting!
Great intro. Thank you.
Thank you :)
I love it! ❤
Really nice.
Derek, I've been watching many of the videos that you've posted and enjoy them. I've learned a lot. I have been toying around with some of the tips I've learned from you and am trying to figure out how to display, sort and filter data pulled from MySQL via PHP to a webpage. The thought is to be able to click the header and sort the data, have a hierarchical filter system and be able to display a page at a time. Just a thought for a series possibly? Or maybe you have a good reference? Thanks again, the work you do has inspired me.
Ben Elder Thank you :) It would be easy to pull the data into a table and then use a plugin like this to sort everything dynamically tablesorter.com/docs/
Anything dynamic will have to be implemented with JavaScript. I plan on making many more useful JavaScript videos soon.
That was awesome. You saved me a month of reading
Thank you :) I'm happy I could help
ur a godsend
I have heard a lot of people say that Lisp (and many other languages similar to it) are not useful for any practical purposes? Then is there a reason why so many people are interested in Lisp? Also, can you please make a video tutorial on emacs? It would be wonderful to supplement some interesting aspects of Lisp as well as help newbies like me become more productive.
+Jash Gala Lisp is widely used in the travel industry and to a lesser extent in universities for AI. Either way I find learning other languages like lisp are a great way to expand your mind and improve problem solving abilities. I have implemented capabilities in other languages into Java because Java didn't have those abilities. I would have never known I needed them unless I was introduced to them in other languages.
Hi, with sbcl I found seemingly a little error at 34 : 33, list counting is 0 indexed that means after the list '(2 4 6) is pushed with 1, it becomes '(1 2 4 6) so (nth 2 *nums*) actually returns the 3rd element of the list.
I love your tutorials, they are so brilliant, I have watched a whole bunch of them, really getting inspired. So a million words into one ---- Thank you Derek my great teacher :)
Thank you for the correction and the compliment :)
im confused sir maybe i will read some of the basics then i go back here for sure. first time in my life to see a code in reverse and a lot of parenthesis haha nice tutorial sir
Lisp takes a while to learn because it is a bit strange
I feel lucky to see u r tutorial it is so simple and awsome .
Thanks so much.
Can u please suggest some other languages that i Should study.
I know php,python,c and c ++(basics level).
Thank you :) C# is a fantastic language that I use every day. Also JavaScript
Not going to lie I thought this channel was called Derek Bananas for the past 3 years
That has been my nickname my whole life :) It fits
This language makes me feel big brain
I feel like Scheme / Racket is much cleaner than Common Lisp. Currently learning Racket...
how was your experience with racket?
Can you make a video about scheme and recursion in lisp?
Derek Banas I have been following your channel ever since your first programming tutorial in one video, and my mind state towards your videos has changed from simply interesting to truly impressive over time. How long is your learning cycle to a new programming language? Do you cover esoteric programming language? (Just kidding, don't be serious!) Thank you very much all the time.
Large O Thank you for the compliment :) After doing this for 30 years it is pretty easy to change languages for me. I do a lot of free work helping students on projects and it is fun to use languages I haven't used for years. Lisp was an old favorite of mine that I have happily been able to have fun with over the last few months and I thought I'd share the fun.
Very good tutorial!
Do you also plan to do a Forth tutorial?
Another amazing video! Have you thought of putting up anything related to Clojure and ClojureScript? Thank you Derek!
+Jeff Foster Thank you :) Yes Clojure is coming soon.
still waiting for clojure.
Man, again... you're awesome! Haha. A freaking machine!
I vote for Scala for the next video, or maybe Haskell or Earlang/Elixir, that would be awesome! :)
Otniel Aguilar Thank you :) I'll cover all of the above for sure.
BTW, what's the difference between
Common_Lisp & Emacs_Lisp???
Do I need to re-learn something for each of them???
Thank you very much, been waiting for this! And please do cover perl on next video.
Keep the good work up!
System You're very welcome :) I'll definitely cover Perl very soon.
Well made video!! Thank you for your help!!
Thank you :) I'm happy I could help
The most important is forgotten ! difference between : x 'x **x** =>such a shame
Thank you for this video and I really hate the light theme!
Great Video to get anyone started on C#. I wish you had published it earlier :-)
Great tutorial love it ;D thank you Derek
Thank you very much :)
Not a complaint but just my thoughts:
lisp syntax is unbelievable. LOL and keywords like "defvar" and "defun". good lord. -0:)
Derek, you are awesome!
Thank you :) I try to do my best
awesome tutorial thanks for responding to our requests .
can you do prolog tutorial next?
Andreas Chari Prolog would be a great video to follow Lisp for AI reasons alone. I'm leaning that way.
How to define counter variables/ how to define two counter variables?
Took me a while to get that quasiquotation is just like template strings in javascript.
Is there going to be a ADA, PASCAL, FORTRAN or COBOL video?
I've considered Fortran and Cobol and will do them if I get enough requests
Ada.
and Pascal (basic pascal- almost no material from the last 20 years!)
Lol don't tempt him 🤣🤣🤣
FORTRAN please
I searched JavaScript , I find Netscape , I searched it , find scheme , which led me to java , then lisp here now backkkk
(equal 'car 'truck) has to be a sly Lisp pun. I wonder if (equal 'cons 'pros)
LOL