Eric Normand
Eric Normand
  • 235
  • 232 118

วีดีโอ

On Composition - Zach Tellman
มุมมอง 1.1K2 ปีที่แล้ว
On Composition - Zach Tellman
cljs.main - David Nolen
มุมมอง 1.3K2 ปีที่แล้ว
cljs.main - David Nolen
Code Hibernation and Survivability - George Kierstein
มุมมอง 1522 ปีที่แล้ว
Code Hibernation and Survivability - George Kierstein
apt-get install leiningen - Elana Hashman
มุมมอง 2752 ปีที่แล้ว
apt-get install leiningen - Elana Hashman
Building a World Class (Clojure) Team - Rebecca Kinsella
มุมมอง 2932 ปีที่แล้ว
Building a World Class (Clojure) Team - Rebecca Kinsella
How to Survive the Robots: Professional Development 2.0: A Business Strategy - Kim Crayton
มุมมอง 1302 ปีที่แล้ว
How to Survive the Robots: Professional Development 2.0: A Business Strategy - Kim Crayton
Revenge of the Pragmatists - Baishampayan Ghose
มุมมอง 6002 ปีที่แล้ว
Revenge of the Pragmatists - Baishampayan Ghose
Personal Data Preservation, Inspired by Ancient Writing - Will Byrd
มุมมอง 3112 ปีที่แล้ว
Personal Data Preservation, Inspired by Ancient Writing - Will Byrd
7 Falsehoods Programmers Believe about Place & Time - Emily Ashley
มุมมอง 3042 ปีที่แล้ว
7 Falsehoods Programmers Believe about Place & Time - Emily Ashley
My feelings about static vs dynamic typing
มุมมอง 2.5K2 ปีที่แล้ว
My feelings about static vs dynamic typing
Computer Science as Empirical Inquiry: Symbols and Search
มุมมอง 8452 ปีที่แล้ว
Computer Science as Empirical Inquiry: Symbols and Search
How far can we stretch technical debt?
มุมมอง 7212 ปีที่แล้ว
How far can we stretch technical debt?
How to avoid premature optimization?
มุมมอง 8122 ปีที่แล้ว
How to avoid premature optimization?
What is domain modeling?
มุมมอง 1.2K2 ปีที่แล้ว
What is domain modeling?
Computer Programming as an Art
มุมมอง 1.2K3 ปีที่แล้ว
Computer Programming as an Art
Programmer as Navigator
มุมมอง 5083 ปีที่แล้ว
Programmer as Navigator
The Humble Programmer
มุมมอง 1.2K3 ปีที่แล้ว
The Humble Programmer
What's the relationship between abstraction and generality?
มุมมอง 7673 ปีที่แล้ว
What's the relationship between abstraction and generality?
Why is data so powerful?
มุมมอง 9493 ปีที่แล้ว
Why is data so powerful?
What if data is a really bad idea?
มุมมอง 2.3K3 ปีที่แล้ว
What if data is a really bad idea?
On the criteria to be used in decomposing systems into modules
มุมมอง 1.5K3 ปีที่แล้ว
On the criteria to be used in decomposing systems into modules
What is missing from Stratified Design?
มุมมอง 6273 ปีที่แล้ว
What is missing from Stratified Design?
Generality in Artificial Intelligence
มุมมอง 4513 ปีที่แล้ว
Generality in Artificial Intelligence
Some Comments from a Numerical Analyst
มุมมอง 2993 ปีที่แล้ว
Some Comments from a Numerical Analyst
Don't overcomplicate the onion architecture
มุมมอง 2.1K3 ปีที่แล้ว
Don't overcomplicate the onion architecture
Is Haskell the best procedural language?
มุมมอง 2K3 ปีที่แล้ว
Is Haskell the best procedural language?
Do forces really exist?
มุมมอง 4533 ปีที่แล้ว
Do forces really exist?
Could we build Newtonian mechanics on purpose?
มุมมอง 2373 ปีที่แล้ว
Could we build Newtonian mechanics on purpose?
How is domain modeling related to Starbucks?
มุมมอง 3953 ปีที่แล้ว
How is domain modeling related to Starbucks?

ความคิดเห็น

  • @axel_ba1816
    @axel_ba1816 4 วันที่ผ่านมา

    I have a information system project development class and got this assignment, tysm for the explanation.

  • @DataPastor
    @DataPastor 24 วันที่ผ่านมา

    LISP is super powerful and a joy to write, but it is a write-only language. It is a mental challenge to understand a LISP source code (vs Python, Java or Go source codes which are kind of self-explanatory).

  • @SAMUEL-yr3vv
    @SAMUEL-yr3vv 24 วันที่ผ่านมา

    Its not a problem, it is what it is. You dont complain to a wizard about how they write their spellbook. Imagine a world that every wizard now has to write their spell in a particular way

  • @mehtubbhai9709
    @mehtubbhai9709 24 วันที่ผ่านมา

    @Eric. Your videos cover a lot of the questions I have about functional programming. Thanks so much for making these videos

  • @JavierRuere-t2o
    @JavierRuere-t2o 28 วันที่ผ่านมา

    I can't understand the books being recommended. Does anyone understand the names?

  • @JavierRuere-t2o
    @JavierRuere-t2o 28 วันที่ผ่านมา

    The audio is quite bad.

  • @ericnormand4210
    @ericnormand4210 28 วันที่ผ่านมา

    One thing I should have focused more on is how well-designed the new features are. They fit right in. It's a great sign that the Clojure core team values design so much!

  • @pappapez
    @pappapez 28 วันที่ผ่านมา

    At around 17:00 on being able to pass Java methods as functions directly. I think it’s a big deal for beginners. I remember tripping on it and having to ask about it. This new way is much more intuitive.

    • @ericnormand4210
      @ericnormand4210 28 วันที่ผ่านมา

      You might be right! At least the feature is well-designed!

    • @GerhardM13
      @GerhardM13 28 วันที่ผ่านมา

      Why would they put so much emphasis on how to write java from clojure? If someone wants to write java he can use java.

    • @pappapez
      @pappapez 28 วันที่ผ่านมา

      @@GerhardM13 That's precisely the why of this. Rich Hickey created Clojure because he didn't like to write Java. Yet the JVM is a wonderful thing and now we have a language to target it that is a joy to use. I can recommend the presentation A History of Clojure to hear Rich Hickey explain this and a lot more of the rationale. th-cam.com/video/nD-QHbRWcoM/w-d-xo.htmlsi=a0C4TGFWmxIquYkd

    • @GerhardM13
      @GerhardM13 27 วันที่ผ่านมา

      Thanks. Is it possible then to use new features like "virtual threads" for example from clojure or the language maintainers need to reimplement async package?

  • @thatryanp
    @thatryanp 2 หลายเดือนก่อน

    Impressive you can do this in one take while driving. You sound just like me talking to my dictation app, but fewer pauses and less rambling.

  • @idiomaxiom
    @idiomaxiom 2 หลายเดือนก่อน

    As soon as you give up the ability to handle time, the language becomes a pain in the ass for practical applications generally.

  • @PixelOutlaw
    @PixelOutlaw 2 หลายเดือนก่อน

    A maintenance disaster is what it is. It has the side effect of deferring naming things, making the code rdundant long chains of copy/pasted transformations. Tacit programming locally is OK but in the large it leads to code that is often missing the "what". Heavy de-structuring and threading macros can destroy Clojure programs quickly. It's a tool, not a religion. The greatest power we have as programmers is linguistic abstraction such that we don't need to keep rewriting the same transformations over and over but can call them by name and recreate their effects in a single line.

  • @white2bear
    @white2bear 2 หลายเดือนก่อน

    Sorry, Eric! Almost unwatchable because of audio cuts repeatedly!

  • @simonirimiya.fromnigeria
    @simonirimiya.fromnigeria 2 หลายเดือนก่อน

    Hi

  • @oitsukijudan
    @oitsukijudan 2 หลายเดือนก่อน

    Very impressive how you reformulated my question much clearer than I asked it. Thank you for answering!

  • @alskidan
    @alskidan 2 หลายเดือนก่อน

    The idea is cool. I’d add a blacklist for known VPN services. Otherwise there will be individuals who will access your site from cheapest countries. If you plan on commercializing this idea, the VPN issue might be a dealbreaker.

  • @pwhittinx
    @pwhittinx 2 หลายเดือนก่อน

    If a user is using a VPN can they spoof their actual country? If so, is there a way to detect this? I've seen tv.youtube.com do this kind of detection.

  • @RustyWalters-wm7oi
    @RustyWalters-wm7oi 2 หลายเดือนก่อน

    Your audio cuts in and out quite a bit. Seems like your microphone isn't always picking up your voice when first speaking.

  • @aguluman
    @aguluman 3 หลายเดือนก่อน

    Thank you

  • @11rchitwood
    @11rchitwood 3 หลายเดือนก่อน

    Thanks again for today!

  • @DavidLindes
    @DavidLindes 3 หลายเดือนก่อน

    "And you know how I know how I know that I'll prosper? 'Cause I stand here beside you today" - Ren (from Hi Ren)... about something quite different, but might be relevant here. Lisp is still around some 66 years after its initial creation... will it ever become comparatively popular? I don't know... but I kinda hope it does, and I certainly hope that people (including myself) put time in to collaborating on well-documented, welcoming, rich libraries, etc...

  • @Donald-x8Donald_06o3
    @Donald-x8Donald_06o3 3 หลายเดือนก่อน

    Tune into an exclusive interview with Binance's CEO for a sneak peek into future developments

  • @AndreiGeorgescu-j9p
    @AndreiGeorgescu-j9p 3 หลายเดือนก่อน

    I appreciate the video but honestly preferring a dynamically typed language is absurd. All of your complaints are that it's not a dependent total type system. So basically if you can't have a Lamborghini you don't buy a car? And for most cases quick check and quickspec get you nearly all the way there. Algebra Driven Design is a book that goes into exactly what you're talking about in haskell. Only accessible book I'm aware of that does and it relies heavily on static typing

  • @minymen75
    @minymen75 3 หลายเดือนก่อน

    Mark Normands brother!

  • @CalvaTV
    @CalvaTV 3 หลายเดือนก่อน

    That was such an awesome refactoring. Wonderful that you think out aloud so naturally.

  • @CalvaTV
    @CalvaTV 3 หลายเดือนก่อน

    There's a command in Calva for creating a Getting Started Project. It is branded a bit as Getting Started with Clojure, which is the main focus, but it starts with an intro to Calva. FYI.

    • @CalvaTV
      @CalvaTV 3 หลายเดือนก่อน

      There's a Paredit “Expand Selection” command which is good for selecting forms in a controlled manner. (Even if you do a good jib with the mouse there, it is much, much quicker to use Expand Selection.) That Getting Started Project has brief intro to Paredit too, even if geared towards people who are not familiar with structural editing at all.

    • @CalvaTV
      @CalvaTV 3 หลายเดือนก่อน

      I'd be super happy to jump into a screen sharing with you, Eric, and I can give you a crash course. We could even stream it. =) You know where to find me! /PEZ

    • @CalvaTV
      @CalvaTV 3 หลายเดือนก่อน

      At 28:20 you seem to have to fight the editor. You say something about that enter doesn't go to the next line. I've not seen that before. It may be that I have some config that avoids it, but to know that I need to know a bit more about how to reproduce the issue. Not fully following in the video...

    • @CalvaTV
      @CalvaTV 3 หลายเดือนก่อน

      I really do not understand what is going on with :item-name coming back all the time. Calva has no keystroke like that. So weird!

    • @CalvaTV
      @CalvaTV 3 หลายเดือนก่อน

      Now watched further. Seems it was something about from where the test runner was triggered? I'd love me a copy of that project so I can try reproduce.

  • @charlesdematas3742
    @charlesdematas3742 3 หลายเดือนก่อน

    What are those things on the walls.

    • @goodthink_ing1
      @goodthink_ing1 หลายเดือนก่อน

      acoustic mufflers. _zero_echo. radio studio quality sound.

  • @larionov999
    @larionov999 3 หลายเดือนก่อน

    thank you for doing these! always useful to see how other people do it. (the tooltip was infuriating me the whole way haha)

    • @CalvaTV
      @CalvaTV 3 หลายเดือนก่อน

      Those hovers popping up are driving me nuts!

  • @alexdreptu
    @alexdreptu 3 หลายเดือนก่อน

    You can disable the hover popup in VSCode by setting "editor.hover.enabled": false in User Settings JSON.

    • @pappapez
      @pappapez 3 หลายเดือนก่อน

      There's also editor.hover.delay which is set to 300 ms by default. I have set mine to 1300 and it makes things much calmer.

  • @elcapitan6126
    @elcapitan6126 3 หลายเดือนก่อน

    really enjoy watching these 👍

    • @elcapitan6126
      @elcapitan6126 3 หลายเดือนก่อน

      but did the recording cut short for some reason?

  • @government_authority
    @government_authority 3 หลายเดือนก่อน

    regarding degradation, I would remember quality of an item before update, and after update. and if it's decreased after all rules applied, amplify the difference by 2 for conjured items and 1 for normal items.

  • @amorphousblob2721
    @amorphousblob2721 3 หลายเดือนก่อน

    8:21 - No, ANTLR is NOT a 100% solution to parsing. The fact that it's hard to use is because of all the stuff it leaves unsolved. The complexity of doing that stuff is dumped into every single application that uses ANTLR, making those applications more complex, which reinforces the need to have a giant team to maintain it. Most big frameworks in mainstream languages are 80% solutions or less. True 100% solutoins require a lot of knowledge. You have to know what problems others are running into, and your language has to allow you to solve _all_ the problems, even the ones that users unconsciously just endure without complaining. An example of a 100% solution would be CLOS with the MOP included. Or Common Lisp's condition system. A ton of research went into those. Mainstream solutions are just built ad-hoc using the easiest approach given the tools already available. Then the inevitable limitations are addressed if it's easy to do so. The real curse of Lisp is that since Lisp is so powerful and you only need a few developers, those developers end up being critical to an organization, because they're the equivalent of a big team. Therefore, firing and replacing one of those developers is like laying off an entire department and rebuilding it from the ground up. Clojure escaped the "Curse of Lisp" by being an 80% Lisp. The reason you need all those Java libraries is because Clojure is relatively weak. Common Lisp has pretty good C interop, but it's not used anywhere near as frequently as Java is in Clojure programs.

  • @11rchitwood
    @11rchitwood 4 หลายเดือนก่อน

    Are you going to have office hours on the 4th?

  • @kyjo72682
    @kyjo72682 4 หลายเดือนก่อน

    I think you make a good point. People seem to (want to) misunderstand what you are actually trying to say.

    • @AllanSavolainen
      @AllanSavolainen 2 หลายเดือนก่อน

      But it is a silly point. The first part could be true, it might help the compiler to optimize better, though in C you can make cache friendly data structures more easily. Second point seems to forget that there are decades worth of libraries written for C, I would say that every data structure has C library written for it and could be used and the developer wouldn't need to write one himself. This doesn't hold true for Haskell, and mid level developer probably cannot implement random new data structure/algorithm optimally. C probably is harder to write safely than Haskell, but in many ways, it is easier. Also Haskell probably won't be faster on embedded systems etc where you don't have resources to copy stuff. Actually don't know how Haskell would handle things if there is not enough memory and it cannot mutate the data in place. Or if it can, then it really isn't functionally pure language :)

  • @shawnbadger2737
    @shawnbadger2737 4 หลายเดือนก่อน

    I love Lisp, but it suffers from the same types of problems that Python does. As it scales, it's just too easy to break things with mismatched types, number of arguments, etc... you have to exercise all code paths at runtime to have confidence in it. Compare that to Rust where if it compiles, it typically just works. If I was starting a company that needed to innovate very quickly, I'd use Lisp. But if I was a company that had mission critical systems that must work, but could take a little more time to get there, I'd likely use Rust.

    • @shaunpearce-k9p
      @shaunpearce-k9p 11 วันที่ผ่านมา

      Mission Critical.. ITA Flight scheduling software is written is Common Lisp. JPL uses Lisp extensively.

  • @timothymills5149
    @timothymills5149 4 หลายเดือนก่อน

    Thank you for the string concatenation e.g. So much easier to see the motivation behind the distinction between commutativity and associativity with a simple case where one applies and the other doesn’t.

  • @nuggetonastick1804
    @nuggetonastick1804 4 หลายเดือนก่อน

  • @BenHutchison
    @BenHutchison 4 หลายเดือนก่อน

    "monoids kick monads' butt" :facepalm:. Does true kick false's butt? Does 42 kick 41's butt? Is > greater-than <?

  • @pwhittinx
    @pwhittinx 4 หลายเดือนก่อน

    Hi Eric, FYI, the audio level is quite low compared to other TH-cam content

  • @11rchitwood
    @11rchitwood 4 หลายเดือนก่อน

    What’s the link to submit a question? I hope to join soon but have an ongoing scheduling conflict.

  • @AlexRodriguez-gb9ez
    @AlexRodriguez-gb9ez 5 หลายเดือนก่อน

    Clojure is for IQ 130 ppl, Haskell is for IQ 150 ppl...

    • @DataPastor
      @DataPastor 8 วันที่ผ่านมา

      I am 146, so still in the Clojure bucket. :)

  • @11rchitwood
    @11rchitwood 5 หลายเดือนก่อน

    Re: formalizing a domain. That's one of the reason's Ken Iverson created APL. He wanted to use it as a new, more regular notation to teach math. Bonus points that it is executable.

  • @Swimmer326
    @Swimmer326 5 หลายเดือนก่อน

    7 months late to the party, this is such a weak argument I figured I’d leave a comment anyways. Comparing Haskell to a university 100 level understanding of C is such a weak argument because the people who write C don’t only have this level of understanding. I don’t know what a monad is but that doesn’t mean I can cast doubt on the fact that serious Haskell users understand monads and when to use them. The same argument can and should be made about C. This guy doesn’t roll his own data structures or import libraries, and just assumed everyone else was doing the same. Either this person is attempting to deceive people who don’t know any better, or they truly don’t understand C development, but either option shows why not to trust this line of thinking.

  • @ratfuk9340
    @ratfuk9340 5 หลายเดือนก่อน

    All the ppl coming from Prime's video apparently can't understand what is being said. Quite literally every single comment by these guys misses the point by a fucking lightyear.

    • @kyjo72682
      @kyjo72682 4 หลายเดือนก่อน

      Exactly! Same as Prime in that video. :)

  • @gnuemacs1166
    @gnuemacs1166 5 หลายเดือนก่อน

    Even eMacs ends up not using lisp tree sitter for eMacs is c not lisp

  • @darkengine5931
    @darkengine5931 5 หลายเดือนก่อน

    The main benefit I find to dynamic typing is that it can ease the process of writing and modifying code, provided we think about our data more abstractly. The major downside to me is that it opens up far more room for runtime errors and need for more comprehensive testing (potentially including validation of input types for functions), as the omission of type specification prevents many programmer mistakes from being caught at compile time. The final one to me is that dynamic typing is hopelessly less efficient than static typing for the most performance-critical of code (ex: a game engine or path tracer), since the appropriate size and precision and even alignment of a data type is not something that an optimizer can deduce absent runtime inputs. Even an optimizer that performs contorting acts analyzing IR to determine the optimal register types and instruction selection lacks the sufficient information in advance to do so anywhere close to optimally for dynamically-typed languages. So much of the added performance of statically-typed languages comes from programmers carefully and explicitly choosing the most economical data types to optimize for locality of reference, SIMD registers, to eliminate false sharing, etc.

  • @StefaanHimpe
    @StefaanHimpe 5 หลายเดือนก่อน

    My suspicion is that FP in general is not popular because it heavily relies on recursion, which many people find hard to grasp (once you understand it, it makes sense, but until then it's deep magic, and many fail to overcome this obstacle (monads are even worse haha)). Obviously syntax matters a lot. Why did python win over perl? LISP in particular is annoying some people because of the parentheses (this I know for a fact, given that I'm one those people haha) - you can deny it, but that doesn't disprove it. To add to that, LISP comes with some really awfully named functions for basic things: wtf is a CAR and a CDR? It sounds like total nonsense. I'm already turned off before I even started :) TBH, I've never seen anything other than toy examples written in lisp or scheme (No doubt big systems exist, I just never saw them - emacs perhaps being the sole exception) which creates the impression that "no one" is using it for "real work" or that perhaps its approach of combining small functions leads to an untractable mess of thousands of weirdly named small functions (some of which probably could be almost duplicates?) trying to build the equivalent of a million line of C++ code system. It may be easy to write, but can you still understand it 3-5-10 years down the road? Here I agree with the individualism argument: if everyone starts to introduce mini DSLs, it doesn't help someone new to the system to make sense of it all. According to google trends (is that a good source?), clojure is much LESS popular than lisp nowadays, so in retrospect the JVM argument didn't really hold up. As for the argument "Parsing in LISP is easy" - sure, if you parse lisp-like trees, since they are pre-parsed by the human typing them in. However, writing a C++ parser with semantic disambiguation most likely will not be easier in lisp than in C++ because the recursive descent parsing is not where the real difficulty lies (but I'd love to be corrected on this!).

  • @faster-than-light-memes
    @faster-than-light-memes 6 หลายเดือนก่อน

    Eric, your stuff is literally in my top 3 sources on the philosophy of programming. Together with Gerald Sussman, Hal Abelson, SICP and Rich Hickey. Basically there is a whole scientific endevour that would talk about why languages are powerful and the kinds of building blocks possible and things like this. And this whole subfield basically doens't exist at the moment; And your stuff is sort of hinting at this I think.

  • @GeorgWilde
    @GeorgWilde 6 หลายเดือนก่อน

    "Is The Little Typer the static typing book I've been waiting for?" So you had 5 years to figure it out. Can you finally answer the question? Does this topic even matter?

  • @cusaint3596
    @cusaint3596 6 หลายเดือนก่อน

    I think that one big reason for low adoption of some programming languages is the difficulty of getting started. For example: difficult installation (multiple installations and complicated steps) or the installation does not work or fails or the instructions are poor or incomplete/partial or not detailed enough. On occasions you could see error messages during the installation and you could think that some things will not work or that you could get error messages at a later time or that your computer could get damaged or partially fail. Also, there might be few, poor or no video tutorials about how to install some of the programming languages or do not adequately address the installation for a popular operating system such as Windows (mainly focus on say Linux). It happened to me that I ran the installation bat file for LispStick for Windows (named run.bat), but nothing occurred (apparently nothing was installed or I did not find where those were installed). There was no Readme_First.txt file and there was neither a setup.exe nor an install.exe file. I need to read the installation instructions from the website more carefully. The website says that LispStick contains SBCL, Emacs, SLIME and Quicklisp. There were exe files in the subdirectories, but there were no instructions about the safety of running them directly. Notice that some (poorly programmed) bat files need to be in the correct directory for those to work correctly and others work no matter where the directory is located at. I do read the contents of the bat files with a text editor prior to running them but the bat files normally do not tell you everything that the installer is going to do. Some installers for Windows do not create icons and do not create Windows menus to access the software. Therefore the user has to run the software from Windows Explorer or from the command prompt. Windows software should have Windows interface installations to be believed as being advanced enough for our time. I searched for the word lipstick on TH-cam, but TH-cam was showing me topics such as the Lipstick movie and lipstick related content (cosmetics). I later found out in TH-cam that the word I needed has a different spelling (Lispstick instead of Lipstick): LispStick: www.iqool.de/lispstick.html I recommend that the names used for programming languages not be or contain words that already exist. It causes trouble/delays and confusion for users who seek information about them on the web. Some examples of those are: ABC, Actor, Apache, Ballerina, BETA, Boomerang, Carbon, Charm, Claire, Clean, COMPASS, CORAL, Crystal, Curl, Curry, Go (later using Golang) , LispStick. I do not like programming languages that would break if indentation get misplaced (such as Python). Copying and pasting code should not be affected by tabs and spaces, which are already hard to distinguish. I wish for a version of Python that does no get affected by indentation. I am willing to type more as long as that requirement is not there. I just found out about LispWorks for Windows: www.lispworks.com/products/lww.html Some people might get concerned if they install several "flavors" of a programming language in the same computer (i.e. LispStick, Common Lisp, LispWorks, Scheme, etc.), if there would be conflicts. Often there is no information about conflicts that could arise (maybe because it is unknown or maybe there is none), but most people only install one implementation. Also, the user has to decide which one would be best for him/her, and that requires researching as to which one is best and why. It could take a long time to decide which programming languages are best for what we are looking for. That is why there are some many TH-cam videos and webpages that compare them. common-lisp.net/implementations I remember that I installed Clojure and Kotlin a few years ago. It felt difficult to learn them. I thought that they were harder for me because I had no prior knowledge of Java. I remember that I watched a tutorial about Flutter on TH-cam. I noticed that it required a lot of complicated steps to achieve very little (likely because it is multiplatform, which makes things more complicated). Then I decided not to learn it. Later on, I read or watched comments that it was easy to learn and that made me wonder if the makers of Flutter had made it a lot less complicated to use, but I doubted it. I have researched about numerous programming languages and I am very interested in learning Common Lisp. Cesar from CesarUSA.com