Julia tries to attract people from Python & R, which use `in`. As for matlab, it is not a direct competitor.
Anyway, I think we only need 1 of the 2. "There should be one-- and preferably only one --obvious way to do it." Maybe enhance the documentation for the time being. On 27 October 2015 at 16:38, Glen O <gjo1...@gmail.com> wrote: > "When calculating a Fibonacci number, we have to apply F_n=F_(n-1)+F_(n-2) > repeatedly. So to find F_6, we apply the equation for n equals 3 through > 6". Writing it as "for n in 3 through 6" or "for n in the range 3 through > 6" wouldn't make nearly as much sense. > > As I said, for general iterables, like vectors, the "in" keyword makes > more sense. But when you're talking about a counter variable, equals makes > a much more natural expression - you're not really constructing the range > object, you're just telling the program you want the counter to start at > the first value, and increment until it reaches the second value. > > On Wednesday, 28 October 2015 02:23:54 UTC+10, Tom Breloff wrote: >> >> It definitely makes sense for a range. >> >> >> Sorry... gotta disagree... mathematical set notation is more appropriate, >> especially for scientific computing. This is coming from a former matlab >> user, btw, so it's not like I was confused by the syntax. The "for i = >> 1:5" syntax is actually more reminiscent of C: "for (int i=1; i<=5; i++)", >> and I'm guessing that the syntax originated more from that rather than >> scientific concepts. >> >> On Tue, Oct 27, 2015 at 11:58 AM, feza <moham...@gmail.com> wrote: >> >>> +1 @Tom Breloff . >>> I was confused about this when starting out. Comparing `for i in >>> 1:3` vs `for i = 1:3`, even though I regularly use matlab if you think >>> about it for `i = 1:10` doesn't really make a lot of sense. It would be >>> nice if it was just one way as opposed to the confusion about whether = or >>> in should be used. >>> >>> On Tuesday, October 27, 2015 at 10:26:44 AM UTC-4, Tom Breloff wrote: >>>> >>>> It's harmless, sure, but I would prefer that everyone uses "in" >>>> exclusively so that there's one less thing to waste brainpower on. You >>>> don't say "for each x equals the range 1 to n", you say "for each x in the >>>> range 1 to n". I don't think "=" has a place here at all except to allow >>>> copy/pasting of Matlab code (which creates other performance problems >>>> anyways). >>>> >>>> On Tue, Oct 27, 2015 at 10:04 AM, Stefan Karpinski < >>>> ste...@karpinski.org> wrote: >>>> >>>>> My general approach is to only use = when the RHS is an explicit >>>>> range, as in `for i = 1:n`. For everything else I use `for i in v`. I >>>>> would >>>>> be ok with dropping the = syntax at some point, but it seems pretty >>>>> harmless to have it. >>>>> >>>>> On Tue, Oct 27, 2015 at 8:56 AM, FANG Colin <coli...@gmail.com> wrote: >>>>> >>>>>> Thank you. In that case I will happily stick with `in`. >>>>>> >>>>>> >>>>>> On Monday, October 26, 2015 at 8:43:22 PM UTC, Alireza Nejati wrote: >>>>>>> >>>>>>> There is no difference, as far as I know. >>>>>>> >>>>>>> '=' seems to be used more for explicit ranges (i = 1:5) and 'in' >>>>>>> seems to be used more for variables (i in mylist). But using 'in' for >>>>>>> everything is ok too. >>>>>>> >>>>>>> The '=' is there for familiarity with matlab. Remember that julia's >>>>>>> syntax was in part designed to be familiar to matlab users. >>>>>>> >>>>>>> On Tuesday, October 27, 2015 at 8:26:07 AM UTC+13, FANG Colin wrote: >>>>>>>> >>>>>>>> Hi All >>>>>>>> >>>>>>>> I have got a stupid question: >>>>>>>> >>>>>>>> Are there any difference in "for i in 1:5" and "for i = 1:5"? >>>>>>>> >>>>>>>> Does the julia community prefer one to the other? I see use of both >>>>>>>> in the documentations and source code. >>>>>>>> >>>>>>>> Personally I haven't seen much use of "for i = 1:5" in other >>>>>>>> languages. >>>>>>>> >>>>>>>> Thanks. >>>>>>>> >>>>>>> >>>>> >>>> >>