Exactly my problem here, stuggling to understand what "global variables" are in the context of what I see as a script which I assumed was running in its own context. I am new to Julia and hardly ever used dynamic languages before so lots of strange and magic behaviour here for me. Some of my problems might be obvious for people here but for not me as the only real programming I have done was device drivers in C and assembly more than 10 years ago. So don't take any of my comments as criticism of the work done on Julia but rather as complete lack of understanding of what is going on and a willingness to learn. I hope no one was offended here and keep up the good work
On Thursday, 24 July 2014 12:42:32 UTC+1, Tomas Lycken wrote: > (Making an attempt at going back somewhat on topic...) > > I think some of the frustration here is also that it's not entirely > obvious even from the performance tips > <http://docs.julialang.org/en/latest/manual/performance-tips/> that > putting your code in a function will make such a huge difference. The > mechanisms that are responsible for making it so are explained in detail in > the very first section ("Avoid global variables") but I can understand why > especially people new to Julia don't immediately associate this to putting > code in a function when measuring performance. Perhaps renaming the section > to "Avoid global variables, and put your code in functions" would help > straighten some of these question marks out? > > //T > > On Thursday, July 24, 2014 6:29:59 AM UTC+2, Tony Kelman wrote: >> >> Live editor/IDE integration of linting (and type-checking) a la Matlab >> would be quite nice to have one of these days. Julia seems to self-select >> for the type of people who actually listen to suggestions and are willing >> to experiment with refactoring and profiling, but I still fear the piles of >> awful Matlab code I've dealt with over the years with every single line >> covered in orange underlines (I think we've all been there). Tough balance >> to strike with "if you ignore these, your code will run slowly" in a way >> that doesn't lead to new users just tuning out all advice. >> >> >> On Wednesday, July 23, 2014 3:27:24 PM UTC-7, Stefan Karpinski wrote: >>> >>> My inclination is to include type checking and linting in base Julia, >>> automatically invoked by a "paranoid" mode that also ignores inbounds >>> annotations and such. Then the testing infrastructure should run tests in >>> paranoid mode, linting and type checking the code to be tested. This seems >>> like a good point to have that kind of check automatically since you're >>> already asking for that kind of feedback. Since packages should always have >>> tests, this will also serve to make sure that packages pass type check and >>> lint inspection. >>> >>> On Jul 23, 2014, at 2:05 PM, Sam L <[email protected]> wrote: >>> >>> > I'd be strongly in favor of that, but it would make Julia feel more >>> like one of those static languages for which compilers readily warn you >>> about your bad habits. >>> >>> Maybe Lint and TypeCheck should display their message with a >>> `suggest("blah")` or `hint("blah")` that is printed in purple instead of a >>> red warning. :) >>> >>> On Wednesday, July 23, 2014 12:39:11 PM UTC-7, Bradley Alpert wrote: >>>> >>>> I for one am thrilled to be able to program every day in such a >>>> beautiful, flexible, clean language with generally good performance and in >>>> which sparkling performance is possible. By comparison, performance >>>> instability is a minor matter. >>>> >>>> There, I have thoroughly discredited myself by banal chatter! >>>> >>>>
