Re: Is it possible to handle 'magic' property assignments a'la PHP?

2014-01-06 Thread Jacob Carlborg
On 2014-01-06 22:07, Philippe Sigaud wrote: Ruby does have a clean syntax (though I find blocks to be a bit heavy). I like the block syntax. It allows one to create what looks like new statements: loop do # endless loop end I would like to have that in D as well, but with braces instead:

Re: How do I choose the correct primative?

2014-01-06 Thread Jake Thomas
Well since you could potentially create classes through Object.factory at runtime the code for unused classes will be compiled into the binary anyways this is even if you never use Object.factory directly in the code. I am not 100% sure but i think the main problem is ModuleInfo that keeps ever

Re: How do I choose the correct primative?

2014-01-06 Thread TheFlyingFiddle
On Monday, 6 January 2014 at 20:08:27 UTC, Jake Thomas wrote: Things like Object.factory also pulls in it's fair share due to not being able to remove classes. So we get alot of fluff in small programs. What do you mean by not being able to remove classes? Isn't the whole point of offeri

Re: Implicitly converting a newly allocated array to immutable

2014-01-06 Thread H. S. Teoh
On Tue, Jan 07, 2014 at 12:01:33AM +, Meta wrote: [...] > Also, is there any hack that I can use to build an AA at compile time? > I have a module level variable that's a string[][string] and I'd like > to initialize it without resorting to static this. Unfortunately, this is currently impossi

Re: Implicitly converting a newly allocated array to immutable

2014-01-06 Thread Meta
On Monday, 6 January 2014 at 04:10:04 UTC, Ali Çehreli wrote: On 01/05/2014 05:19 PM, Meta wrote:> The following doesn`t work: > > immutable(string[]) strArr = new string[](10); A pure function is a workaround. The return value of a pure function is implicitly convertible to immutable: pure s

Re: Is it possible to handle 'magic' property assignments a'la PHP?

2014-01-06 Thread Philippe Sigaud
>> I didn't know that, thanks. I read it during the holidays in Martin >> Fowler's book on DSL, but indeed that book is from 2005, IIRC. > > > That's a bit old :). According to this site[1] Rails 1.0 was released in > December 2005. Rails 4.0 was released in June 2013. Ouch, that was 2010, my bad.

Re: How do I choose the correct primative?

2014-01-06 Thread Jake Thomas
Oh, and that was made from: int main() { int loadMe = 10; return loadMe; }

Re: How do I choose the correct primative?

2014-01-06 Thread Jake Thomas
Ok, I figured out how to use obj2asm. The trick is to cd to the directory holding the file you wish to dissassemble and _not_ specify the whole path, or else it throws a confusing "Fatal error: unrecognized flag" error. I ran: obj2asm intLoadTest.o intLoadTest.d > intLoadTest.s and got this:

Re: How do I choose the correct primative?

2014-01-06 Thread Jake Thomas
On Sunday, 5 January 2014 at 08:23:45 UTC, TheFlyingFiddle wrote: On Sunday, 5 January 2014 at 06:31:38 UTC, Jake Thomas wrote: And got 86,421 lines of assembly!! I expected a load instruction to load whatever was at loadMe's location into r0 (the return register) and not much else. Maybe 10 li

Re: Is it possible to handle 'magic' property assignments a'la PHP?

2014-01-06 Thread Jacob Carlborg
On 2014-01-05 22:44, Philippe Sigaud wrote: I didn't know that, thanks. I read it during the holidays in Martin Fowler's book on DSL, but indeed that book is from 2005, IIRC. That's a bit old :). According to this site[1] Rails 1.0 was released in December 2005. Rails 4.0 was released in June

Re: Shared library extern (C) variables

2014-01-06 Thread TheFlyingFiddle
On Monday, 6 January 2014 at 09:27:26 UTC, Jacob Carlborg wrote: To be able to load symbols from libraries at runtime they have to be declared with extern. "export", not "extern". Yeah typo sry.

Re: Shared library extern (C) variables

2014-01-06 Thread Jacob Carlborg
On 2014-01-05 22:15, TheFlyingFiddle wrote: Export is currently somewhat broken see DIP45 for an indepth explanation (link) To be able to load symbols from libraries at runtime they have to be declared with extern. "export", not "extern". This rule does not hold on linux though since it sim