On Thursday, 28 January 2016 at 13:26:27 UTC, Andrea Fontana
wrote:
On Thursday, 28 January 2016 at 13:18:55 UTC, pineapple wrote:
I experimented with using the character 'ħ' in a variable
name, and wasn't terribly surprised when the compiler didn't
like it. What did surprise me is that I still got a compile
error even when the character was in a comment. Is there any
way to make dmd not get fussy about unicode?
Hmmm it's strange: I think d should support unicode on both
comment and vars name.
This code works for me ;)
float distance(T)(T from, T to)
{
import std.math;
auto toRadians = (float dec) => dec/180.0f*PI;
auto R = 6371;
auto φ1 = toRadians(from.lat);
auto φ2 = toRadians(to.lat);
auto Δφ = toRadians(to.lat-from.lat);
auto Δλ = toRadians(to.lng-from.lng);
float a = sin(Δφ/2) * sin(Δφ/2) + cos(φ1) * cos(φ2) *
sin(Δλ/2) * sin(Δλ/2);
float c = 2 * atan2(sqrt(a), sqrt(1-a));
return R * c;
}
What compiler version do you use?
I tried to compile your code on dpaste (2.070.0) and got this:
/d213/f100.d(8): Error: character '\' is not a valid token
/d213/f100.d(9): Error: character '\' is not a valid token
/d213/f100.d(10): Error: character '\' is not a valid token
/d213/f100.d(10): Error: character '\' is not a valid token
/d213/f100.d(11): Error: character '\' is not a valid token
/d213/f100.d(11): Error: character '\' is not a valid token
/d213/f100.d(13): Error: character '\' is not a valid token
/d213/f100.d(13): Error: character '\' is not a valid token
/d213/f100.d(13): Error: found 'u03c6' when expecting ','
/d213/f100.d(13): Error: expression expected, not '/'
/d213/f100.d(13): Error: found '2' when expecting ','
/d213/f100.d(13): Error: character '\' is not a valid token
/d213/f100.d(13): Error: character '\' is not a valid token
/d213/f100.d(13): Error: found 'u03c6' when expecting ','
/d213/f100.d(13): Error: expression expected, not '/'
/d213/f100.d(13): Error: found '2' when expecting ','
/d213/f100.d(13): Error: character '\' is not a valid token
/d213/f100.d(13): Error: character '\' is not a valid token
/d213/f100.d(13): Error: character '\' is not a valid token
/d213/f100.d(13): Error: character '\' is not a valid token