Re: Pegged, From EBNF to PEG

2012-03-17 Thread Philippe Sigaud
On Wed, Mar 14, 2012 at 10:48, Dmitry Olshansky dmitry.o...@gmail.com wrote: That's one of the caveats on PEG. That and greedy operators. 'a*a' never succeeds because 'a*' consumes all the available a's. Hey, wait, I thought there has to be backtrack here, i.e. when second 'a' finally

Re: Pegged: Syntax Highlighting

2012-03-17 Thread Philippe Sigaud
On Wed, Mar 14, 2012 at 21:03, Andrej Mitrovic andrej.mitrov...@gmail.com wrote: how would one use a parser like Pegged for syntax highlighting? Ok, typically one would use a lexer and not a parser. But using a parser might be more interesting for creating more complex syntax highlighting.

Re: Pegged, From EBNF to PEG

2012-03-17 Thread Dmitry Olshansky
On 17.03.2012 10:59, Philippe Sigaud wrote: On Wed, Mar 14, 2012 at 10:48, Dmitry Olshanskydmitry.o...@gmail.com wrote: That's one of the caveats on PEG. That and greedy operators. 'a*a' never succeeds because 'a*' consumes all the available a's. Hey, wait, I thought there has to be

Re: DUnit - class MyTest { mixin TestMixin; void testMethod1() {} void testMethod2() {}}

2012-03-17 Thread Marc P. Michel
On Monday, 20 February 2012 at 01:49:04 UTC, Juan Manuel Cabo wrote: I thought I could do a better effort to describe why DUnit is so extraordinary, for a native language, especially for those unfamiliar with xUnit frameworks This is great stuff, thanks ! Anyway, I'm not fond of your

Re: Pegged: Syntax Highlighting

2012-03-17 Thread Extrawurst
On 17.03.2012 08:01, Philippe Sigaud wrote: On Wed, Mar 14, 2012 at 21:03, Andrej Mitrovic andrej.mitrov...@gmail.com wrote: how would one use a parser like Pegged for syntax highlighting? Ok, typically one would use a lexer and not a parser. But using a parser might be more interesting for

Re: Pegged, From EBNF to PEG

2012-03-17 Thread Philippe Sigaud
On Sat, Mar 17, 2012 at 10:09, Dmitry Olshansky dmitry.o...@gmail.com wrote: Ok, let's agree on fact that semantically a* is : As - a As / a and a*? is this: As - a / a As Now that's local ;) It's local, yes. But the pb is with Expr - A* B C D, when D fails. PEG sequences don't

Re: Pegged: Syntax Highlighting

2012-03-17 Thread Extrawurst
On 17.03.2012 15:13, Philippe Sigaud wrote: The D grammar is a 1000-line / hundreds of rules monster. I finished writing it and am now crushing bugs. Any ETA when u gonna commit it for the public ? Wouldn't mind getting my hands dirty on it and looking for bugs too ;)

Re: Pegged, From EBNF to PEG

2012-03-17 Thread Dmitry Olshansky
On 17.03.2012 18:11, Philippe Sigaud wrote: On Sat, Mar 17, 2012 at 10:09, Dmitry Olshanskydmitry.o...@gmail.com wrote: Ok, let's agree on fact that semantically a* is : As- a As / a and a*? is this: As- a / a As Now that's local ;) It's local, yes. But the pb is with Expr- A* B C D,

Re: It's official: The D Programming Language will participate to GSoC 2012!

2012-03-17 Thread Jacob Carlborg
On 2012-03-16 19:32, Steven Schveighoffer wrote: On Fri, 16 Mar 2012 14:24:38 -0400, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: Just got the acceptance message. This is great news! If you consider being a mentor, please apply as described in http://dlang.org/gsoc2012.html.

Re: Pegged: Syntax Highlighting

2012-03-17 Thread Andrei Alexandrescu
On 3/17/12 9:13 AM, Philippe Sigaud wrote: I want to use Pegged for that purpose. So go ahead an commit the D grammar ;) Would be so awesome if Pegged would be able to parse D. ~Extrawurst The D grammar is a 1000-line / hundreds of rules monster. I finished writing it and am now crushing

Re: Pegged, From EBNF to PEG

2012-03-17 Thread Philippe Sigaud
On Sat, Mar 17, 2012 at 15:48, Dmitry Olshansky dmitry.o...@gmail.com wrote: PEG sequences don't backtrack. I'd argue they do. As I see it as: Expr - As B C D / B C D As - A / A As That's what people doing Regex-to-PEG translations do, yes. But it's not the spontaneous behavior of A* B C D

Re: Pegged: Syntax Highlighting

2012-03-17 Thread Philippe Sigaud
On Sat, Mar 17, 2012 at 15:44, Extrawurst s...@extrawurst.org wrote: On 17.03.2012 15:13, Philippe Sigaud wrote: The D grammar is a 1000-line / hundreds of rules monster. I finished writing it and am now crushing bugs. Any ETA when u gonna commit it for the public ? Wouldn't mind getting my

mysql tool

2012-03-17 Thread dnewbie
Hi D friends. I'd like to share with you a little tool. It allows you to execute SQL statements in your MySQL database. It displays the data in a nice data grid widget written by David Hillard. I hope you like it. Link http://my.opera.com/run3/blog/2012/03/17/mysql-tool

Re: Pegged: Syntax Highlighting

2012-03-17 Thread Philippe Sigaud
On Sat, Mar 17, 2012 at 18:11, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: The D grammar is a 1000-line / hundreds of rules monster. I finished writing it and am now crushing bugs. God, that generates a 10_000 line module to parse it. I should simplify the code generator

Re: Pegged: Syntax Highlighting

2012-03-17 Thread bls
On 03/17/2012 01:53 PM, Philippe Sigaud wrote: Does anyone have experience with other languages similar to D and that offer AST-walking? Doesn't C# have something like this? (I'll have a look at Scala macros) Hi Philippe. Of course the visitor pattern comes in mind. Eclipse (Java) uses a

Re: D to Javascript converter (a hacked up dmd)

2012-03-17 Thread Adam D. Ruppe
This is still alive: https://github.com/adamdruppe/dmd/tree/dtojs Merging in DMD changes as they happen has been fairly easy, so we have things like UFCS in there. I'm pretty happy with the core setup, though it still isn't finished. Enough of the D language works like you expect that you can

Re: Pegged: Syntax Highlighting

2012-03-17 Thread Andrei Alexandrescu
On 3/17/12 3:53 PM, Philippe Sigaud wrote: On Sat, Mar 17, 2012 at 18:11, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: The D grammar is a 1000-line / hundreds of rules monster. I finished writing it and am now crushing bugs. God, that generates a 10_000 line module to parse it. I

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread Gour
On Sat, 17 Mar 2012 02:29:26 +0100 Andrej Mitrovic andrej.mitrov...@gmail.com wrote: Sorry for the long wait. Turns out I was *extremely* wrong about this. Generating the D side turned out to be a hell of a lot more work then I initially thought (mostly due to C++ and D type incompatibilities

Re: Interesting Memory Optimization

2012-03-17 Thread Don Clugston
On 16/03/12 13:24, Kevin Cox wrote: On Mar 16, 2012 7:45 AM, Alex Rønne Petersen xtzgzo...@gmail.com mailto:xtzgzo...@gmail.com wrote I don't see any reason why c couldn't point to element number 3 of b, and have its length set to 3... -- - Alex And the previous examples were

BlockingTextWriter?

2012-03-17 Thread Paul D. Anderson
In the Phobos documentation for std.format: [O]utput is sent do this writer. Typical output writers include std.array.Appender!string and std.stdio.BlockingTextWriter. std.stdio doesn't have a BlockingTextWriter but it does have a LockingTextWriter. Typo? Name change? BlockingTextWriter is

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread bls
On 03/16/2012 06:29 PM, Andrej Mitrovic wrote: So, stay tight! Good times ahead.:) Incredible good news! Thanks. One of the very first wxD applications could be a GUI for the generator.

Re: OpenBSD port of dmd?

2012-03-17 Thread Johannes Pfau
Am Fri, 16 Mar 2012 14:37:43 -0700 schrieb Sean Kelly s...@invisibleduck.org: On Mar 16, 2012, at 2:19 PM, Johannes Pfau wrote: Am Fri, 16 Mar 2012 12:08:01 -0700 schrieb Walter Bright newshou...@digitalmars.com: On 3/16/2012 7:53 AM, Andrei Alexandrescu wrote: Just found this, has

Re: Proposal: user defined attributes

2012-03-17 Thread Manu
On 17 March 2012 02:53, Andrej Mitrovic andrej.mitrov...@gmail.com wrote: On 3/17/12, Kapps opantm2+s...@gmail.com wrote: @WebForm(Account); @PostTo(Services/CreateAccount) @SecureOnly(true) struct CreateAccountForm { That kind of turns D from a structural to a declarative language. :p

Re: OpenBSD port of dmd?

2012-03-17 Thread Alix Pexton
I think Walter and Andrei are both right, just about different things. I think Walter is right that there is no such thing as a default implementation when it comes to compatibility with the host environment, and asserting is the best course of action. I think Andrei is right that when a

Re: Scala macros

2012-03-17 Thread Tobias Pankrath
There a different tools for rewriting code out there. Maybe you can get some inspiration by there syntax. Examples are: TXL (www.txl.ca) Domain Maintenance System (www.semdesigns.com) Raincode (www.raincode.com) where the last one probably isn't worth the look.

Re: Proposal: user defined attributes

2012-03-17 Thread Gor Gyolchanyan
What we're talking about here is subject-oriented programming: having the attributes get enclosed into objects, rather then objects enclosing attributes. And this is extremely useful, IMO. On Sat, Mar 17, 2012 at 1:23 PM, Manu turkey...@gmail.com wrote: On 17 March 2012 02:53, Andrej Mitrovic

Re: OpenBSD port of dmd?

2012-03-17 Thread Sean Kelly
On Mar 17, 2012, at 1:25 AM, Johannes Pfau nos...@example.com wrote: Am Fri, 16 Mar 2012 14:37:43 -0700 schrieb Sean Kelly s...@invisibleduck.org: On Mar 16, 2012, at 2:19 PM, Johannes Pfau wrote: Am Fri, 16 Mar 2012 12:08:01 -0700 schrieb Walter Bright newshou...@digitalmars.com: On

Re: OpenBSD port of dmd?

2012-03-17 Thread Sean Kelly
Pretty much. I'd expect to see: version (linux) { // optimized impl } else version (OSX) { version = UseDefault; } else { static assert(false, unknown platform); } version (UseDefault) { ... } This way, new platforms have to be evaluated, but once they are they can all share

More putrid beef soup (Was: Re: Implicit string lit conversion to wstring/dstring)

2012-03-17 Thread H. S. Teoh
On Wed, Mar 14, 2012 at 02:07:04PM -0500, Andrei Alexandrescu wrote: [...] Aha! This is one of those cases in which built-in magic smells of putrid beef soup. [...] It gets worse than we first thought: void f1(dstring x) { dstring y = x; } void f2()(dstring x) { dstring y = x;

Re: Turning a SIGSEGV into a regular function call under Linux, allowing throw

2012-03-17 Thread deadalnix
Le 15/03/2012 21:20, FeepingCreature a écrit : On 03/15/12 16:16, Kagamin wrote: Does it recover from void function() f=null; f(); Not as currently written, no. It should be possible to detect this case and get a proper stackframe back, though. It is supported as written in my sample

Re: Proposal: user defined attributes

2012-03-17 Thread Jacob Carlborg
On 2012-03-16 14:35, Adam D. Ruppe wrote: On the ride over here today, I had a thought that I think neatly solves the user defined attribute question. I would love to have user defined attributes in D but I'm not completely like your approach. I would go with something more like Java

Re: OpenBSD port of dmd?

2012-03-17 Thread Jose Armando Garcia
On Sat, Mar 17, 2012 at 7:10 AM, Sean Kelly s...@invisibleduck.org wrote: Pretty much. I'd expect to see: version (linux) {    // optimized impl } else version (OSX) {    version = UseDefault; Speaking of version specification, in this particular example is version(UseDefault) only define

Re: BlockingTextWriter?

2012-03-17 Thread Andrei Alexandrescu
On 3/17/12 2:29 AM, Paul D. Anderson wrote: In the Phobos documentation for std.format: [O]utput is sent do this writer. Typical output writers include std.array.Appender!string and std.stdio.BlockingTextWriter. std.stdio doesn't have a BlockingTextWriter but it does have a LockingTextWriter.

Re: OpenBSD port of dmd?

2012-03-17 Thread Andrei Alexandrescu
On 3/17/12 9:10 AM, Sean Kelly wrote: Pretty much. I'd expect to see: version (linux) { // optimized impl } else version (OSX) { version = UseDefault; } else { static assert(false, unknown platform); } version (UseDefault) { ... } Taking this to its logical conclusion

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread Jacob Carlborg
On 2012-03-17 04:34, Andrej Mitrovic wrote: On 3/17/12, Brad Andersone...@gnuk.net wrote: Could the wxc generator be be used as a base for building bindings for other libraries? I hope it will be. It's kind of crazy that the first thing I'm using it on is a huge library like wxD, this will

confused about pure functions

2012-03-17 Thread markusle
Using dmd 2.058 I can compile the following pure bool has_path(string paths[], string needle) { paths[0] = bad; ... do something else ... return false; } and change the passed in array paths. Isn't this a violation of has_path's pure contract? Shouldn't all pure function parameters

Re: confused about pure functions

2012-03-17 Thread Adam D. Ruppe
In D, pure means it doesn't have any side effects outside its parameter list. It can change what you pass in, but nothing else. Pass it all in, const, or best of all, immutable params and it can't change anything - that's the pure you're probably thinking of. The reason it lets you change

Understanding Templates: why can't anybody do it?

2012-03-17 Thread Entity325
(Sorry if this is the wrong place for this, or if there's already a thread in existence which would be better. If either of these is the case, simply point me in the right direction, and I'll be on my way.) My first interaction with Templates was about 5 years ago, in a C++ class at my

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread bls
On 03/17/2012 09:50 AM, Jacob Carlborg wrote: This is why a proper compiler is needed, this will not work in the long run. Are you aware that doxgen's xml output is based on gcc-xml ? I think it is necessary to say that doxygen, respective gcc-xml, is working on stripped and annotated header

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread Jacob Carlborg
On 2012-03-17 18:36, bls wrote: On 03/17/2012 09:50 AM, Jacob Carlborg wrote: This is why a proper compiler is needed, this will not work in the long run. Are you aware that doxgen's xml output is based on gcc-xml ? No, I was not aware of that. What is the problem then, doxygen choking on

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread bls
On 03/17/2012 10:44 AM, Jacob Carlborg wrote: On 2012-03-17 18:36, bls wrote: On 03/17/2012 09:50 AM, Jacob Carlborg wrote: This is why a proper compiler is needed, this will not work in the long run. Are you aware that doxgen's xml output is based on gcc-xml ? No, I was not aware of that.

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread bls
On 03/17/2012 10:44 AM, Jacob Carlborg wrote: What is the problem then, doxygen choking on the XML or GCC choking on the include files? gcc-xml is stalled. Means newer C++ stuff is not supported. See news... http://www.gccxml.org/HTML/News.html

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Andrei Alexandrescu
On 3/17/12 12:14 PM, Entity325 wrote: Who's with me? Anybody have a short(but COMPLETE!) example of code that makes use of Templates that you actually understand what's going on there? You're on to something here. Then, as usual, from idea to realization there are quite a few steps. I took

Re: confused about pure functions

2012-03-17 Thread Andrei Alexandrescu
On 3/17/12 12:02 PM, markusle wrote: Using dmd 2.058 I can compile the following pure bool has_path(string paths[], string needle) { paths[0] = bad; ... do something else ... return false; } and change the passed in array paths. Isn't this a violation of has_path's pure contract? Shouldn't

Re: OpenBSD port of dmd?

2012-03-17 Thread Walter Bright
On 3/17/2012 9:16 AM, Jose Armando Garcia wrote: On Sat, Mar 17, 2012 at 7:10 AM, Sean Kellys...@invisibleduck.org wrote: version (linux) { // optimized impl } else version (OSX) { version = UseDefault; Speaking of version specification, in this particular example is

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread bls
On 03/17/2012 10:51 AM, bls wrote: Are you aware that doxgen's xml output is based on gcc-xml ? I should be more carefull :( It's another wxWidgets utility that is using gcc-xml.

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Walter Bright
On 3/17/2012 10:55 AM, Andrei Alexandrescu wrote: On 3/17/12 12:14 PM, Entity325 wrote: Who's with me? Anybody have a short(but COMPLETE!) example of code that makes use of Templates that you actually understand what's going on there? You're on to something here. Then, as usual, from idea to

Re: OpenBSD port of dmd?

2012-03-17 Thread Sean Kelly
On Mar 17, 2012, at 9:43 AM, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: On 3/17/12 9:10 AM, Sean Kelly wrote: Pretty much. I'd expect to see: version (linux) { // optimized impl } else version (OSX) { version = UseDefault; } else { static assert(false, unknown

Re: confused about pure functions

2012-03-17 Thread markusle
On Saturday, 17 March 2012 at 17:59:12 UTC, Andrei Alexandrescu wrote: On 3/17/12 12:02 PM, markusle wrote: Using dmd 2.058 I can compile the following pure bool has_path(string paths[], string needle) { paths[0] = bad; ... do something else ... return false; } and change the passed in

Re: OpenBSD port of dmd?

2012-03-17 Thread Johannes Pfau
Am Sat, 17 Mar 2012 07:04:20 -0700 schrieb Sean Kelly s...@invisibleduck.org: On Mar 17, 2012, at 1:25 AM, Johannes Pfau nos...@example.com wrote: Am Fri, 16 Mar 2012 14:37:43 -0700 schrieb Sean Kelly s...@invisibleduck.org: OSX pre-Lion doesn't support __thread either, so DMD

Re: std.simd

2012-03-17 Thread Robert Jacques
On Fri, 16 Mar 2012 16:45:05 -0500, Manu turkey...@gmail.com wrote: On 16 March 2012 22:39, Robert Jacques sandf...@jhu.edu wrote: On Fri, 16 Mar 2012 08:24:58 -0500, David Nadlinger s...@klickverbot.at wrote: On Thursday, 15 March 2012 at 23:32:29 UTC, Robert Jacques wrote: [snip]

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Xinok
On Saturday, 17 March 2012 at 18:16:31 UTC, Walter Bright wrote: i.e. templates are type parameters. Maybe in C++. In C++, templates are attached to a class or function, where as in D, they're an independent construct. The way I think of it, templates are a tool for building static code

Re: OpenBSD port of dmd?

2012-03-17 Thread Martin Nowak
On Fri, 16 Mar 2012 21:00:47 +0100, Nick Sabalausky a@a.a wrote: Martin Nowak d...@dawgfoto.de wrote in message news:op.wa9r9izqsqugbd@localhost... On Fri, 16 Mar 2012 15:53:45 +0100, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: Just found this, has anyone tried dmd or friends on

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Paulo Pinto
Maybe you should first try to learn some concepts about generic programming http://en.wikipedia.org/wiki/Generic_programming You will see this is nothing specific to C++ or D, and almost all modern languages do have some form of genericity. If you still cannot understand them, you cold try to

Re: std.simd

2012-03-17 Thread Manu
On 17 March 2012 20:42, Robert Jacques sandf...@jhu.edu wrote: On Fri, 16 Mar 2012 16:45:05 -0500, Manu turkey...@gmail.com wrote: Can you give me an example of a non-simd context where this is the case? Don't say shaders, because that is supported in hardware, and that's my point. Also

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread Andrej Mitrovic
On 3/17/12, Jacob Carlborg d...@me.com wrote: This is why a proper compiler is needed, this will not work in the long run. The generator doesn't really care which tool you use to extract the data. It should be possible to use a tool such as LLVM to fill the structs with all the information it

Re: OpenBSD port of dmd?

2012-03-17 Thread Martin Nowak
AFAICS OpenBSD doesn't support TLS (the __thread tls, posix pthread_getspecific works of course). Can D work at all without TLS support? (We have a similar problem with Android, I know for sure TLS isn't supported there.) Which is just strange given how little effort is needed to implement this

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Ali Çehreli
On 03/17/2012 10:14 AM, Entity325 wrote: Who's with me? Anybody have a short(but COMPLETE!) example of code that makes use of Templates that you actually understand what's going on there? The Templates chapter of Programming in D is supposed to be a gentle introduction to templates:

Re: Proposal: user defined attributes

2012-03-17 Thread Walter Bright
On 3/16/2012 7:11 AM, Manu wrote: attribute myAttribute { this(int something); bool bNeedsAttention; property void refresh(bool bRefresh) { bNeedsAttention = bRefresh; } } @myAttribute(10) int thing; thing.refresh = true; Under the hood, where would that per-instance data be

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Ali Çehreli
On 03/17/2012 12:57 PM, Ali Çehreli wrote: http://ddili.org/ders/d.en/templates.html [...] The chapter also contains a link to Philippe Sigaud's D Templates: A Tutorial. Sorry, I did not intend to leave the link to that document out:

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Max Klyga
On 2012-03-17 20:14:47 +0300, Entity325 said: Who's with me? Anybody have a short(but COMPLETE!) example of code that makes use of Templates that you actually understand what's going on there? Philippe Sigaud made a very good tutorial on templates in D -

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Nick Sabalausky
Entity325 lonewolf...@gmail.com wrote in message news:pgzkvphadihglayfu...@forum.dlang.org... That is to say, nobody understands how Templates work is because, as was the case for me, the sum total of explanation we are given on them in programming class is These are Templates. They exist.

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Andrej Mitrovic
On 3/17/12, Entity325 lonewolf...@gmail.com wrote: Who's with me? Anybody have a short(but COMPLETE!) example of code that makes use of Templates that you actually understand what's going on there? I wrote this a long time ago when I was just figuring out what templates were about (it's not a

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread novice2
templates are a tool for building static code from a set of parameters. unfortunately (imho), there is no way to see the result code

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Gour
On Sat, 17 Mar 2012 21:29:18 +0100 Andrej Mitrovic andrej.mitrov...@gmail.com wrote: I had no idea what templates were when I started using D, and I thought I would never need to use them either. But now I use them extensively. They really become a natural tool in programming. They're so nice

Re: automated C++ binding generation.. Booost D, NO , Not us. SIMD is more important.

2012-03-17 Thread Jacob Carlborg
On 2012-03-17 20:20, Andrej Mitrovic wrote: On 3/17/12, Jacob Carlborgd...@me.com wrote: This is why a proper compiler is needed, this will not work in the long run. The generator doesn't really care which tool you use to extract the data. It should be possible to use a tool such as LLVM to

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread novice2
How it come, that we build another abstartion level above strong typed language? Onece we builded high level language above assembler. Are we now building another more high level? Will temlate will become another language used as complete language? Will generic prigramming become mainstream,

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Paulo Pinto
Am 17.03.2012 21:20, schrieb Nick Sabalausky: Entity325lonewolf...@gmail.com wrote in message news:pgzkvphadihglayfu...@forum.dlang.org... That is to say, nobody understands how Templates work is because, as was the case for me, the sum total of explanation we are given on them in programming

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Simen Kjærås
On Sat, 17 Mar 2012 21:56:14 +0100, novice2 so...@noem.ail wrote: How it come, that we build another abstartion level above strong typed language? Onece we builded high level language above assembler. Are we now building another more high level? Will temlate will become another language

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Paulo Pinto
Am 17.03.2012 21:56, schrieb novice2: How it come, that we build another abstartion level above strong typed language? Onece we builded high level language above assembler. Are we now building another more high level? Will temlate will become another language used as complete language? Will

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Simen Kjærås
On Sat, 17 Mar 2012 22:16:37 +0100, Paulo Pinto pj...@progtools.org wrote: Am 17.03.2012 21:56, schrieb novice2: How it come, that we build another abstartion level above strong typed language? Onece we builded high level language above assembler. Are we now building another more high level?

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Simen Kjærås
On Sat, 17 Mar 2012 21:20:42 +0100, Nick Sabalausky a@a.a wrote: I've spent a total of about 6 years in college, always got A's and B's in the CS classes, and yet I'm convinced that programming classes are completely and utterly useless. Most of the instructors themselves barely even know how

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Paulo Pinto
Am 17.03.2012 22:19, schrieb Simen Kjærås: On Sat, 17 Mar 2012 22:16:37 +0100, Paulo Pinto pj...@progtools.org wrote: Am 17.03.2012 21:56, schrieb novice2: How it come, that we build another abstartion level above strong typed language? Onece we builded high level language above assembler.

Re: Proposal: user defined attributes

2012-03-17 Thread Manu
On 17 March 2012 21:56, Walter Bright newshou...@digitalmars.com wrote: On 3/16/2012 7:11 AM, Manu wrote: attribute myAttribute { this(int something); bool bNeedsAttention; property void refresh(bool bRefresh) { bNeedsAttention = bRefresh; } } @myAttribute(10) int thing;

Re: Proposal: user defined attributes

2012-03-17 Thread Manu
On 17 March 2012 23:52, Manu turkey...@gmail.com wrote: On 17 March 2012 21:56, Walter Bright newshou...@digitalmars.com wrote: On 3/16/2012 7:11 AM, Manu wrote: attribute myAttribute { this(int something); bool bNeedsAttention; property void refresh(bool bRefresh) {

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread H. S. Teoh
On Sat, Mar 17, 2012 at 10:13:44PM +0100, Paulo Pinto wrote: Am 17.03.2012 21:20, schrieb Nick Sabalausky: [...] I've spent a total of about 6 years in college, always got A's and B's in the CS classes, and yet I'm convinced that programming classes are completely and utterly useless. Most of

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread H. S. Teoh
On Sat, Mar 17, 2012 at 10:15:26PM +0100, Simen Kjærås wrote: On Sat, 17 Mar 2012 21:56:14 +0100, novice2 so...@noem.ail wrote: How it come, that we build another abstartion level above strong typed language? Onece we builded high level language above assembler. Are we now building another

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread H. S. Teoh
On Sat, Mar 17, 2012 at 09:45:51PM +0100, Gour wrote: On Sat, 17 Mar 2012 21:29:18 +0100 Andrej Mitrovic andrej.mitrov...@gmail.com wrote: I had no idea what templates were when I started using D, and I thought I would never need to use them either. But now I use them extensively. They

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Jos van Uden
On 17-3-2012 21:20, Nick Sabalausky wrote: Here's a little templates primer, I hope it helps: [...] Part of this primer would serve well as introduction to Phillipe's tutorial, because it skips the basics. (I knew the basics, but not everybody does.) Jos

force inline/not-inline

2012-03-17 Thread Manu
I just started writing an emulator in D for some fun; I needed an application to case-study aggressive performance characteristics in hot-loop situations. I know this has come up time and time again, but I just want to put it out there again... if I were shipping this product, I would NEED

Re: force inline/not-inline

2012-03-17 Thread Alex Rønne Petersen
On 17-03-2012 23:53, Manu wrote: I just started writing an emulator in D for some fun; I needed an application to case-study aggressive performance characteristics in hot-loop situations. I know this has come up time and time again, but I just want to put it out there again... if I were shipping

Re: force inline/not-inline

2012-03-17 Thread Andrej Mitrovic
On 3/17/12, Manu turkey...@gmail.com wrote: I just started writing an emulator in D for some fun FWIW another dev did this http://code.google.com/p/pspemu/

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Entity325
Wow, popular thread is popular. Thanks for all the help, everyone. I haven't read all of it, but I will take the time to sift through everything and see what I can apply. Response to some of what I did read: -I didn't conclude that templates are confusing because they confused me. I

Re: force inline/not-inline

2012-03-17 Thread Manu
On 18 March 2012 01:51, Andrej Mitrovic andrej.mitrov...@gmail.com wrote: On 3/17/12, Manu turkey...@gmail.com wrote: I just started writing an emulator in D for some fun FWIW another dev did this http://code.google.com/p/pspemu/ Yeah, I've seen that. But it's a PC app, and JITs. Different

Re: OpenBSD port of dmd?

2012-03-17 Thread Alix Pexton
On 17/03/2012 16:43, Andrei Alexandrescu wrote: On 3/17/12 9:10 AM, Sean Kelly wrote: Pretty much. I'd expect to see: version (linux) { // optimized impl } else version (OSX) { version = UseDefault; } else { static assert(false, unknown platform); } version (UseDefault) { ... } Taking this

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Nick Sabalausky
H. S. Teoh hst...@quickfur.ath.cx wrote in message news:mailman.834.1332023905.4860.digitalmar...@puremagic.com... (Not to mention, D templates can do some stuff that no OO can hope to attain. But it goes both ways. Templates can't do runtime polymorphism either.) Combined with compile-time

Re: OpenBSD port of dmd?

2012-03-17 Thread Sean Kelly
In truth it would be else version (Posix) Anyway, which isn't the bare else Walter was advising against. On Mar 17, 2012, at 5:10 PM, Alix Pexton alix.dot.pex...@gmail.dot.com wrote: On 17/03/2012 16:43, Andrei Alexandrescu wrote: On 3/17/12 9:10 AM, Sean Kelly wrote: Pretty much. I'd

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread H. S. Teoh
On Sat, Mar 17, 2012 at 08:37:35PM -0400, Nick Sabalausky wrote: H. S. Teoh hst...@quickfur.ath.cx wrote in message news:mailman.834.1332023905.4860.digitalmar...@puremagic.com... (Not to mention, D templates can do some stuff that no OO can hope to attain. But it goes both ways.

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Nick Sabalausky
Entity325 lonewolf...@gmail.com wrote in message news:vxadflowsujbbmpnr...@forum.dlang.org... -While most of my programming professors had a decent idea of what they were doing, the classes themselves left massive, gaping holes in my education that I never even realized were there until I

Re: OpenBSD port of dmd?

2012-03-17 Thread Walter Bright
On 3/17/2012 5:40 PM, Sean Kelly wrote: In truth it would be else version (Posix) Anyway, which isn't the bare else Walter was advising against. And is Posix really predictably compatible across diverse systems?

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Nick Sabalausky
Simen Kjærås simen.kja...@gmail.com wrote in message news:op.wbb24i010gp...@biotronic.lan... On Sat, 17 Mar 2012 21:20:42 +0100, Nick Sabalausky a@a.a wrote: I've spent a total of about 6 years in college, always got A's and B's in the CS classes, and yet I'm convinced that programming

Re: OpenBSD port of dmd?

2012-03-17 Thread Bernard Helyer
On Sunday, 18 March 2012 at 00:53:17 UTC, Walter Bright wrote: On 3/17/2012 5:40 PM, Sean Kelly wrote: In truth it would be else version (Posix) Anyway, which isn't the bare else Walter was advising against. And is Posix really predictably compatible across diverse systems? If you

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Nick Sabalausky
H. S. Teoh hst...@quickfur.ath.cx wrote in message news:mailman.839.1332031513.4860.digitalmar...@puremagic.com... On Sat, Mar 17, 2012 at 08:37:35PM -0400, Nick Sabalausky wrote: H. S. Teoh hst...@quickfur.ath.cx wrote in message news:mailman.834.1332023905.4860.digitalmar...@puremagic.com...

Re: Proposal: user defined attributes

2012-03-17 Thread Walter Bright
On 3/17/2012 2:55 PM, Manu wrote: I tend to think of 'struct's as 'passive', and compile-time annotations would provide me with every use case I can imagine for my own purposes in the case of structs. classes seem far more likely to need stateful attributes. I currently find the notion of

Re: Understanding Templates: why can't anybody do it?

2012-03-17 Thread Nick Sabalausky
novice2 so...@noem.ail wrote in message news:hzbmfpsyzezjwzshx...@forum.dlang.org... How it come, that we build another abstartion level above strong typed language? Onece we builded high level language above assembler. Are we now building another more high level? Will temlate will become

virtual-by-default rant

2012-03-17 Thread Manu
The virtual model broken. I've complained about it lots, and people always say stfu, use 'final:' at the top of your class. That sounds tolerable in theory, except there's no 'virtual' keyword to keep the virtual-ness of those 1-2 virtual functions I have... so it's no good (unless I rearrange my

Re: Proposal: user defined attributes

2012-03-17 Thread Manu
On 18 March 2012 03:10, Walter Bright newshou...@digitalmars.com wrote: On 3/17/2012 2:55 PM, Manu wrote: I tend to think of 'struct's as 'passive', and compile-time annotations would provide me with every use case I can imagine for my own purposes in the case of structs. classes seem far

Re: virtual-by-default rant

2012-03-17 Thread Bernard Helyer
On Sunday, 18 March 2012 at 01:23:42 UTC, Manu wrote: My minimum recommendation: D needs an explicit 'virtual' keyword, and to fix that D1 bug, so putting final: at the top of your class works, and everything from there works as it should. Agreed. Final by default is a proposition long gone,

Re: virtual-by-default rant

2012-03-17 Thread Simen Kjærås
On Sun, 18 Mar 2012 02:23:31 +0100, Manu turkey...@gmail.com wrote: The virtual model broken. I've complained about it lots, and people always say stfu, use 'final:' at the top of your class. That sounds tolerable in theory, except there's no 'virtual' keyword to keep the virtual-ness of

Re: Proposal: user defined attributes

2012-03-17 Thread Walter Bright
On 3/17/2012 6:39 PM, Manu wrote: I'm sure C# already answers all these questions. It has precisely the same set of issues associated. C# doesn't have RAII, immutable, nor the notion of threadlocal/shared types.

  1   2   >