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.
>>>>>>>>
>>>>>>>
>>>>>
>>>>
>>

Reply via email to