Jump to page: 1 2
Thread overview
D on other platforms than Win,Lin,Mac?
Sep 06, 2011
lurker57
Sep 06, 2011
Jacob Carlborg
Sep 06, 2011
Trass3r
Sep 06, 2011
Nick Sabalausky
Sep 06, 2011
Trass3r
Sep 06, 2011
bearophile
Sep 06, 2011
Andrew Wiley
Sep 06, 2011
Johannes Pfau
Sep 06, 2011
Trass3r
Sep 07, 2011
Johannes Pfau
Sep 06, 2011
Andrew Wiley
Sep 07, 2011
Johannes Pfau
Sep 07, 2011
Andrew Wiley
September 06, 2011
Hi!

I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux.

Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?

September 06, 2011
On 2011-09-06 16:21, lurker57 wrote:
> Hi!
>
> I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux.
>
> Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?
>

DMD currently only supports X86 and X86-64 platforms. I don't know about ldc or gdc (the DMD front end on the LLVM and GCC backend). The backends support ARM but the runtime needs to support ARM as well.

-- 
/Jacob Carlborg
September 06, 2011
> I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux.
>
> Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?

You'd have to use gdc or ldc and patch at least druntime.
Some people already managed to get stuff running on ARM but it's tricky.
I think the GC is problematic, thus you also have to avoid most of phobos.
September 06, 2011
"Trass3r" <un@known.com> wrote in message news:op.v1edf3bj3ncmek@enigma...
>> I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux.
>>
>> Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?
>
> You'd have to use gdc or ldc and patch at least druntime.
> Some people already managed to get stuff running on ARM but it's tricky.
> I think the GC is problematic, thus you also have to avoid most of phobos.

For a language that aims at C/C++'s domain, it's extremely depressing that this is still the case. I *really* think this needs to be one of D's top priorities at this point. I honestly see it as D's #1 biggest glaring hole ATM (Honestly, I've always cared about embedded/non-x86 processors *far* more than the native 64-bit support that got enormous attention awhile back). 'Course I'm kinda just blowing smoke out my ass since I unfortunately have neither the time nor ability to help tackle this goal :(


September 06, 2011
> For a language that aims at C/C++'s domain, it's extremely depressing that this is still the case. I *really* think this needs to be one of D's top
> priorities at this point. I honestly see it as D's #1 biggest glaring hole

We have much bigger problems that need attention.
And there's nothing preventing the few people demanding ARM support from patching druntime etc. and creating a pull request to add it.
The thing is that simply nobody wants to do the dirty base work.
September 06, 2011
Trass3r wrote:
>> I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux.
>>
>> Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?
>
>You'd have to use gdc or ldc and patch at least druntime.
>Some people already managed to get stuff running on ARM but it's
>tricky.

At least for gdc only hello-world like code works. Real code hits this
issue:
https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-arm

This also applies to all platforms which aren't supported by dmd.

> I think the GC is problematic, thus you also have to avoid
>most of phobos.

The GC seems to work if druntime is compiled with
-fno-section-anchors , but no real testing was done.
https://bitbucket.org/goshawk/gdc/issue/120/fsection-anchors-broken-on-arm
might also be caused by bug 215.

-- 
Johannes Pfau

September 06, 2011
> At least for gdc only hello-world like code works. Real code hits this
> issue:
> https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-arm

Did you ever try with LDC?
September 06, 2011
Nick Sabalausky:

> I *really* think this needs to be one of D's top priorities at this point.

In my opinion at the moment one of the highest priorities of D (maybe _the_ top one) is to find a ways to improve and speed up the process of reviewing, fixing and applying pull requests for DMD/Phobos.

Bye,
bearophile
September 06, 2011
On Tue, Sep 6, 2011 at 2:25 PM, Johannes Pfau <spam@example.com> wrote:

> Trass3r wrote:
> >> I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux.
> >>
> >> Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?
> >
> >You'd have to use gdc or ldc and patch at least druntime.
> >Some people already managed to get stuff running on ARM but it's
> >tricky.
>
> At least for gdc only hello-world like code works. Real code hits this issue:
>
> https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-arm
>
> This also applies to all platforms which aren't supported by dmd.
>
> > I think the GC is problematic, thus you also have to avoid
> >most of phobos.
>
> The GC seems to work if druntime is compiled with
> -fno-section-anchors , but no real testing was done.
> https://bitbucket.org/goshawk/gdc/issue/120/fsection-anchors-broken-on-arm
> might also be caused by bug 215.
>
>
+1

If you're looking at an ARMv7 platform (my Tegra is ARMv7, dunno if they all are), I believe you can set the Linux kernel to handle faults caused by unaligned memory accesses, which *should* make D run with a performance hit until this bug gets fixed. Keep in mind that the library situation is largely untested, although Iain seems to have quietly done a lot of work in Druntime at some point to make it all build. Once I've got my Tegra up and running (need a serial cable - it's in the mail), I'll be able to say more.


September 06, 2011
On Tue, Sep 6, 2011 at 1:51 PM, Nick Sabalausky <a@a.a> wrote:

> "Trass3r" <un@known.com> wrote in message news:op.v1edf3bj3ncmek@enigma...
> >> I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux.
> >>
> >> Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?
> >
> > You'd have to use gdc or ldc and patch at least druntime.
> > Some people already managed to get stuff running on ARM but it's tricky.
> > I think the GC is problematic, thus you also have to avoid most of
> phobos.
>
> For a language that aims at C/C++'s domain, it's extremely depressing that
> this is still the case. I *really* think this needs to be one of D's top
> priorities at this point. I honestly see it as D's #1 biggest glaring hole
> ATM (Honestly, I've always cared about embedded/non-x86 processors *far*
> more than the native 64-bit support that got enormous attention awhile
> back). 'Course I'm kinda just blowing smoke out my ass since I
> unfortunately
> have neither the time nor ability to help tackle this goal :(
>
>
The problem is that the most direct way to do this is to use a compiler backend that isn't Digital Mars, and there's far fewer people working on other backends. This is why I asked whether anything had happened with GCC inclusion a while back. If that could happen, D would get a large leap forward in this area.

I agree that a systems language that only works on x86/x86_64 is a depressing concept, and I think it's about to become unacceptable in the next few years.


« First   ‹ Prev
1 2