Re: GSoC 2016 Postmortem

2017-01-13 Thread CRAIG DILLABAUGH via Digitalmars-d-announce

On Friday, 13 January 2017 at 13:12:19 UTC, Mike Parker wrote:
Craig Dillabaugh is ramping up for Google Summer of Code 2017. 
He took some time out to give a report on GSoC 2016 and 
recommendations for how to improve the process this year.


Blog:
https://dlang.org/blog/2017/01/13/the-d-language-foundation-google-summer-of-code-2016-postmortem/

Reddit:
https://www.reddit.com/r/d_language/comments/5nqi54/the_d_language_foundation_google_summer_of_code/


Thanks Mike for getting this posted.  Just noticed info on the 
2017 GSoC has been posted now.  Time to get back to work.


https://developers.google.com/open-source/gsoc/

Note that the 2017 Ideas page has been set up, its a little light 
on content at the moment:


https://wiki.dlang.org/GSOC_2017_Ideas


GSoC 2016 Postmortem

2017-01-13 Thread Mike Parker via Digitalmars-d-announce
Craig Dillabaugh is ramping up for Google Summer of Code 2017. He 
took some time out to give a report on GSoC 2016 and 
recommendations for how to improve the process this year.


Blog:
https://dlang.org/blog/2017/01/13/the-d-language-foundation-google-summer-of-code-2016-postmortem/

Reddit:
https://www.reddit.com/r/d_language/comments/5nqi54/the_d_language_foundation_google_summer_of_code/


Re: GSoC 2016 - std.experimental.xml after a month

2016-06-29 Thread Ola Fosheim Grøstad via Digitalmars-d
On Wednesday, 29 June 2016 at 12:06:23 UTC, Lodovico Giaretta 
wrote:
the idea is that if we have a good, modular, extendable XML 
library, then we can build everything on top of it as separate 
projects. This is because one person cannot maintain all the 
possible extensions (XPath, XSD, JAXB, XQuery, ...)


Indeed, but maybe you would consider making it possible to either 
inject a user defined field into the Element node or make it 
possible to provide a custom Element node as generic parameter, 
for book-keeping. And some hooks for when the DOM is 
built/mutated.







Re: GSoC 2016 - std.experimental.xml after a month

2016-06-29 Thread Lodovico Giaretta via Digitalmars-d

On Tuesday, 28 June 2016 at 12:14:40 UTC, Nikolay wrote:

DOM - Any plans for Xpath?

DTD check - What about XSD? XSD is more popular now.

Also it would be nice to have something like JAXB 
(automatically bind and map DLang struct/classes to/from XML). 
But it may be part of next iteration or project.


PS

I find https://github.com/lodo1995/experimental.xml/issues/11 
so actually you already answer to my questions about XSD & 
XPath.


About XPath and XSD, you already found the answer.

About automatic binding (JAXB like), I wasn't planning it, but 
the idea is that if we have a good, modular, extendable XML 
library, then we can build everything on top of it as separate 
projects. This is because one person cannot maintain all the 
possible extensions (XPath, XSD, JAXB, XQuery, ...) and because 
most of these should be provided by external packages, not by the 
standard library (otherwise the std XML library would end up 
being half the entire size of Phobos).


Thank you for your feedback.


Re: GSoC 2016 - std.experimental.xml after a month

2016-06-28 Thread Nikolay via Digitalmars-d
On Thursday, 23 June 2016 at 20:04:26 UTC, Lodovico Giaretta 
wrote:

-- Brace yourself: a very long post is coming --

What is planned for the near future?
- When the DOM classes will be usable (even if not 100% 
complete) I will start working on a DOM parser to build them 
from the source;
- DTD check and entity substitution have to be implemented, and 
they will (I hope) fit nicely as pluggable components for the 
validating cursor;



DOM - Any plans for Xpath?

DTD check - What about XSD? XSD is more popular now.

Also it would be nice to have something like JAXB (automatically 
bind and map DLang struct/classes to/from XML). But it may be 
part of next iteration or project.


PS

I find https://github.com/lodo1995/experimental.xml/issues/11 so 
actually you already answer to my questions about XSD & XPath.




Re: GSoC 2016 - std.experimental.xml after a month

2016-06-28 Thread Steven Schveighoffer via Digitalmars-d

On 6/28/16 4:04 AM, Lodovico Giaretta wrote:

On Monday, 27 June 2016 at 22:36:36 UTC, Martin Nowak wrote:

On 06/25/2016 10:33 PM, Lodovico Giaretta wrote:

But your idea about a stack keeping all the context informations is
quite valuable, given that some validations need them (e.g. checking
that all prefixes have been declared, and retrieving prefix/namespace
associations).


In any case it should be optional so that use cases that don't need
parent information can avoid the overhead.


I absolutely agree on this.



In the case of ranges, front should be accessible, which means you have 
to cache it.


It should be optional in the sense that if you are not parsing using 
nested ranges, but straight SAX, then you don't need to save state.


-Steve


Re: GSoC 2016 - std.experimental.xml after a month

2016-06-28 Thread Lodovico Giaretta via Digitalmars-d

On Monday, 27 June 2016 at 22:36:36 UTC, Martin Nowak wrote:

On 06/25/2016 10:33 PM, Lodovico Giaretta wrote:
But your idea about a stack keeping all the context 
informations is quite valuable, given that some validations 
need them (e.g. checking that all prefixes have been declared, 
and retrieving prefix/namespace associations).


In any case it should be optional so that use cases that don't 
need parent information can avoid the overhead.


I absolutely agree on this.



Re: GSoC 2016 - std.experimental.xml after a month

2016-06-27 Thread Martin Nowak via Digitalmars-d
On 06/25/2016 10:33 PM, Lodovico Giaretta wrote:
> 
> But my implementation does not maintain the state of the parents, so you
> can't get any info about the parent from the children, unless you use
> exit() (in which case, you can get the parent's name from the closing tag).
> 
> But your idea about a stack keeping all the context informations is
> quite valuable, given that some validations need them (e.g. checking
> that all prefixes have been declared, and retrieving prefix/namespace
> associations).

In any case it should be optional so that use cases that don't need
parent information can avoid the overhead.


Re: GSoC 2016 - std.experimental.xml after a month

2016-06-25 Thread Lodovico Giaretta via Digitalmars-d

On Saturday, 25 June 2016 at 20:32:33 UTC, Walter Bright wrote:

Thank you for your hard work on this important project.

Please ensure that it has a range interface - a range is used 
as input.


You mean that the document source may be a range?

In that case, I already implemented a lexer that works with any 
InputRange, and another one that works with ForwardRanges (I 
hoped it to be way faster than the first, but it currently 
isn't). Both are way slower than the two lexers based on slices, 
of course.





Re: GSoC 2016 - std.experimental.xml after a month

2016-06-25 Thread Lodovico Giaretta via Digitalmars-d
On Saturday, 25 June 2016 at 20:16:09 UTC, Steven Schveighoffer 
wrote:
When I had the gumption to try and make an XML parser range, 
the idea I had was to have the current element's tag and 
attributes, all parent elements' tags and attributes, and the 
currently parsed entity inside the element. If the entity you 
were parsing was an element, you could either popFront it, to 
get to the next element, or descend into it's children, and the 
element and it's attributes would be pushed onto the "element" 
stack.


The idea is to keep all the context alive, but not have to keep 
the entire file in memory.


Anyway, that's how I envisioned it. Haven't finished my i/o 
package yet, so it didn't materialize :)


-Steve


Thank you for your feedback.

You idea is similar to my Cursor API, which has next() to reach 
the next element and enter()/exit() to descend to the first child 
or ascend to the closing tag of the parent.


But my implementation does not maintain the state of the parents, 
so you can't get any info about the parent from the children, 
unless you use exit() (in which case, you can get the parent's 
name from the closing tag).


But your idea about a stack keeping all the context informations 
is quite valuable, given that some validations need them (e.g. 
checking that all prefixes have been declared, and retrieving 
prefix/namespace associations).




Re: GSoC 2016 - std.experimental.xml after a month

2016-06-25 Thread Walter Bright via Digitalmars-d

On 6/23/2016 1:04 PM, Lodovico Giaretta wrote:

One month after the official GSoC start, I want to share with you what's in
std.experimental.xml and what will hopefully be there


Thank you for your hard work on this important project.

Please ensure that it has a range interface - a range is used as input.


Re: GSoC 2016 - std.experimental.xml after a month

2016-06-25 Thread Steven Schveighoffer via Digitalmars-d

On 6/25/16 12:26 PM, Lodovico Giaretta wrote:

On Saturday, 25 June 2016 at 15:59:40 UTC, Jacob Carlborg wrote:

Any range API, or plan for?


Hi,

I'm definitely going to provide a wrapper around the Cursor API, that
will provide InputRange access to all the children of the current node
(this way the tree structure is maintained). I plan to upload it in a
couple of days.

I'm still pondering if it's worth providing also a way to get a Range of
the entire document tree, flattened; it's nodes would be in one-to-one
correspondence with the events generated by a SAX parser (another API
which does not preserve the tree structure).


When I had the gumption to try and make an XML parser range, the idea I 
had was to have the current element's tag and attributes, all parent 
elements' tags and attributes, and the currently parsed entity inside 
the element. If the entity you were parsing was an element, you could 
either popFront it, to get to the next element, or descend into it's 
children, and the element and it's attributes would be pushed onto the 
"element" stack.


The idea is to keep all the context alive, but not have to keep the 
entire file in memory.


Anyway, that's how I envisioned it. Haven't finished my i/o package yet, 
so it didn't materialize :)


-Steve


Re: GSoC 2016 - std.experimental.xml after a month

2016-06-25 Thread Lodovico Giaretta via Digitalmars-d

On Saturday, 25 June 2016 at 15:59:40 UTC, Jacob Carlborg wrote:

Any range API, or plan for?


Hi,

I'm definitely going to provide a wrapper around the Cursor API, 
that will provide InputRange access to all the children of the 
current node (this way the tree structure is maintained). I plan 
to upload it in a couple of days.


I'm still pondering if it's worth providing also a way to get a 
Range of the entire document tree, flattened; it's nodes would be 
in one-to-one correspondence with the events generated by a SAX 
parser (another API which does not preserve the tree structure).


Re: GSoC 2016 - std.experimental.xml after a month

2016-06-25 Thread Jacob Carlborg via Digitalmars-d

On 23/06/16 22:04, Lodovico Giaretta wrote:


What is working?
- Four lexers are provided to abstract different kinds of input from the
other layers, providing different speed characteristics;
- The parser splits the document into nodes, doing most of the hard work;
- A cursor sits on top of the parser, providing an API to advance in the
document and get information about the current node; it supports string
interning, which can drastically lower memory consumption (given that
most nodes share names and attributes);
- A validating cursor is the same as a cursor, but allows the user to
plug custom validators, that are executed while advancing in the input;
in the future the library will provide some predefined validators to use
with it;
- A very simple SAX API built on top of the cursor API is the last thing
added and tested;
- A partial reimplementation of std.xml is there; when completed it will
allow a gradual code transition.


Any range API, or plan for?

--
/Jacob Carlborg


GSoC 2016 - std.experimental.xml after a month

2016-06-23 Thread Lodovico Giaretta via Digitalmars-d

-- Brace yourself: a very long post is coming --

Hi,

One month after the official GSoC start, I want to share with you 
what's in std.experimental.xml and what will hopefully be there. 
If you have any question/improvement or anything to say, just 
leave a comment here or an issue on GitHub 
(https://github.com/lodo1995/experimental.xml).


In particular, if you think there are problems with the current 
structure of the project, or major flaws in the APIs, that will 
be very difficult to solve at a later stage, please let me know. 
(Walter and Andrei, I'd really appreciate your feedback here).


Thank you in advance to all who will take time to read this...

What is working?
- Four lexers are provided to abstract different kinds of input 
from the other layers, providing different speed characteristics;
- The parser splits the document into nodes, doing most of the 
hard work;
- A cursor sits on top of the parser, providing an API to advance 
in the document and get information about the current node; it 
supports string interning, which can drastically lower memory 
consumption (given that most nodes share names and attributes);
- A validating cursor is the same as a cursor, but allows the 
user to plug custom validators, that are executed while advancing 
in the input; in the future the library will provide some 
predefined validators to use with it;
- A very simple SAX API built on top of the cursor API is the 
last thing added and tested;
- A partial reimplementation of std.xml is there; when completed 
it will allow a gradual code transition.


What am I working on right now?
I'm trying to implement the DOM level 3 API. The API per se is 
not that difficult, but the infrastructure I'm building around it 
is a hell. In fact, I'm trying to make the DOM nodes reference 
counted and allocated with a custom allocator, to allow their 
usage in @nogc code. This is quite painful (because the DOM has 
lots of circular references, and "normal" reference counting does 
not work with them), but with enough time I will probably manage 
to make it work.


What is planned for the near future?
- When the DOM classes will be usable (even if not 100% complete) 
I will start working on a DOM parser to build them from the 
source;
- DTD check and entity substitution have to be implemented, and 
they will (I hope) fit nicely as pluggable components for the 
validating cursor;

- And of course some APIs to output XML.

What is (incidentally) inside the repository?
- Along with the DOM classes comes a wrapper that allows to 
allocate classes with a custom allocator and reference count them 
(that is, a RefCounted!T that works only for classes);
- A wonderful (or maybe not) benchmark driver that benchmarks the 
various components with various kinds of random generated files 
and prints some wonderful statistics and graphs;
- Needed by the benchmarking code, a simple API to collect 
statistical infos (average, median, deviation) from a range of 
measures;
- Needed by the cursor API, an Interner that can intern not only 
strings, but any array or class.


Thank you again for your time and help.

Lodovico Giaretta


Re: GSoC 2016 - Precise GC

2016-05-08 Thread thedeemon via Digitalmars-d-announce

On Sunday, 8 May 2016 at 11:16:56 UTC, deadalnix wrote:

Ones that have only pointers are probably OK too. Though I'm 
not sure if a precise scanner takes into account the type of 
the pointer. I would expect it to use embedded typeinfo in 
target block.


-Steve


Because of void* and classes, the GC MUST be able to find out 
what type was actually allocated, or at least its pointer 
bitmask.


Yep, and it does that by looking at metadata of the pointed 
object itself, it doesn't care about the type of pointer to that 
object. I mean if we have object x of class X in heap and 
pointers "X p1", "void* p2" and "Y p3" all having same value  
(pointing to the same address) then GC will have no problem in 
scanning x as long as it can access x's type info knowing the 
address of x in heap. Which means all p1, p2 and p3 might easily 
be just at one position in a union and that would not be a 
problem.


Re: GSoC 2016 - Precise GC

2016-05-08 Thread Pham via Digitalmars-d-announce

On Friday, 6 May 2016 at 09:06:59 UTC, Dmitry Olshansky wrote:

On 06-May-2016 05:37, Jeremy DeHaan wrote:

On Wednesday, 4 May 2016 at 12:42:30 UTC, jmh530 wrote:

On Wednesday, 4 May 2016 at 02:50:08 UTC, Jeremy DeHaan wrote:

You can identify safe functions with
https://dlang.org/phobos/std_traits.html#isSafe
or
https://dlang.org/phobos/std_traits.html#functionAttributes


All I meant was that I don't know enough about what the 
compiler does
with built in types to make this work. It almost sounds like 
we would
need a safe union and unsafe union type and do some extra 
stuff for the

unsafe union, but I'm just starting to learn about this stuff.


I'd note that a union without pointers doesn't hurt precise 
scanner, it's only the ones with pointers that are bad.


Union is an user-defined-kind value and only user codes can tell 
the difference. I believe this will also effect the reference 
count implementation. I suggest that when a type has a union 
member, it should create a function such as gcValues with a 
parameter of output range of record (offset: size_t, type: 
typeid). the function should return that info based on whatever 
the actual value of those pointer types.  If that function is 
missing, use conservative approach as before


Cheers
Pham


Re: GSoC 2016 - Precise GC

2016-05-08 Thread deadalnix via Digitalmars-d-announce

On Friday, 6 May 2016 at 09:31:08 UTC, Steven Schveighoffer wrote:

On 5/6/16 11:06 AM, Dmitry Olshansky wrote:

On 06-May-2016 05:37, Jeremy DeHaan wrote:

On Wednesday, 4 May 2016 at 12:42:30 UTC, jmh530 wrote:
On Wednesday, 4 May 2016 at 02:50:08 UTC, Jeremy DeHaan 
wrote:


I'm not sure, but one would think that @safe code wouldn't 
need any

extra information about the union. I wouldn't know how to
differentiate between them though during runtime. Probably 
someone
with more experience with the compiler would know more 
about that

kind of thing.


You can identify safe functions with
https://dlang.org/phobos/std_traits.html#isSafe
or
https://dlang.org/phobos/std_traits.html#functionAttributes


All I meant was that I don't know enough about what the 
compiler does
with built in types to make this work. It almost sounds like 
we would
need a safe union and unsafe union type and do some extra 
stuff for the

unsafe union, but I'm just starting to learn about this stuff.


I'd note that a union without pointers doesn't hurt precise 
scanner,

it's only the ones with pointers that are bad.



Ones that have only pointers are probably OK too. Though I'm 
not sure if a precise scanner takes into account the type of 
the pointer. I would expect it to use embedded typeinfo in 
target block.


-Steve


Because of void* and classes, the GC MUST be able to find out 
what type was actually allocated, or at least its pointer bitmask.


Re: GSoC 2016 - Precise GC

2016-05-06 Thread Leandro Lucarella via Digitalmars-d-announce

On Tuesday, 3 May 2016 at 18:15:20 UTC, Jeremy DeHaan wrote:
Not sure if it is something I can get to in the course of my 
project though. Scanning only unions conservatively is still 
pretty good.


And the stack, and the CPU registers, but yeah, it should be a 
minority.


Re: GSoC 2016 - Precise GC

2016-05-06 Thread Steven Schveighoffer via Digitalmars-d-announce

On 5/6/16 11:06 AM, Dmitry Olshansky wrote:

On 06-May-2016 05:37, Jeremy DeHaan wrote:

On Wednesday, 4 May 2016 at 12:42:30 UTC, jmh530 wrote:

On Wednesday, 4 May 2016 at 02:50:08 UTC, Jeremy DeHaan wrote:


I'm not sure, but one would think that @safe code wouldn't need any
extra information about the union. I wouldn't know how to
differentiate between them though during runtime. Probably someone
with more experience with the compiler would know more about that
kind of thing.


You can identify safe functions with
https://dlang.org/phobos/std_traits.html#isSafe
or
https://dlang.org/phobos/std_traits.html#functionAttributes


All I meant was that I don't know enough about what the compiler does
with built in types to make this work. It almost sounds like we would
need a safe union and unsafe union type and do some extra stuff for the
unsafe union, but I'm just starting to learn about this stuff.


I'd note that a union without pointers doesn't hurt precise scanner,
it's only the ones with pointers that are bad.



Ones that have only pointers are probably OK too. Though I'm not sure if 
a precise scanner takes into account the type of the pointer. I would 
expect it to use embedded typeinfo in target block.


-Steve


Re: GSoC 2016 - Precise GC

2016-05-06 Thread Dmitry Olshansky via Digitalmars-d-announce

On 06-May-2016 05:37, Jeremy DeHaan wrote:

On Wednesday, 4 May 2016 at 12:42:30 UTC, jmh530 wrote:

On Wednesday, 4 May 2016 at 02:50:08 UTC, Jeremy DeHaan wrote:


I'm not sure, but one would think that @safe code wouldn't need any
extra information about the union. I wouldn't know how to
differentiate between them though during runtime. Probably someone
with more experience with the compiler would know more about that
kind of thing.


You can identify safe functions with
https://dlang.org/phobos/std_traits.html#isSafe
or
https://dlang.org/phobos/std_traits.html#functionAttributes


All I meant was that I don't know enough about what the compiler does
with built in types to make this work. It almost sounds like we would
need a safe union and unsafe union type and do some extra stuff for the
unsafe union, but I'm just starting to learn about this stuff.


I'd note that a union without pointers doesn't hurt precise scanner, 
it's only the ones with pointers that are bad.


--
Dmitry Olshansky


Re: GSoC 2016 - Precise GC

2016-05-05 Thread Jeremy DeHaan via Digitalmars-d-announce

On Wednesday, 4 May 2016 at 12:42:30 UTC, jmh530 wrote:

On Wednesday, 4 May 2016 at 02:50:08 UTC, Jeremy DeHaan wrote:


I'm not sure, but one would think that @safe code wouldn't 
need any extra information about the union. I wouldn't know 
how to differentiate between them though during runtime. 
Probably someone with more experience with the compiler would 
know more about that kind of thing.


You can identify safe functions with
https://dlang.org/phobos/std_traits.html#isSafe
or
https://dlang.org/phobos/std_traits.html#functionAttributes


All I meant was that I don't know enough about what the compiler 
does with built in types to make this work. It almost sounds like 
we would need a safe union and unsafe union type and do some 
extra stuff for the unsafe union, but I'm just starting to learn 
about this stuff.


Re: GSoC 2016 - Precise GC

2016-05-04 Thread jmh530 via Digitalmars-d-announce

On Wednesday, 4 May 2016 at 02:50:08 UTC, Jeremy DeHaan wrote:


I'm not sure, but one would thing that @safe code wouldn't need 
any extra information about the union. I wouldn't know how to 
differentiate between them though during runtime. Probably 
someone with more experience with the compiler would know more 
about that kind of thing.


You can identify safe functions with
https://dlang.org/phobos/std_traits.html#isSafe
or
https://dlang.org/phobos/std_traits.html#functionAttributes


Re: GSoC 2016 - Precise GC

2016-05-03 Thread Dsby via Digitalmars-d-announce

On Monday, 2 May 2016 at 15:29:15 UTC, Jeremy DeHaan wrote:

Hi everyone!

I'm a little late to the party as far as my announcement goes, 
but I have been busy reading code and doing research for my 
project.


[...]


Great!


Re: GSoC 2016 - Precise GC

2016-05-03 Thread Jeremy DeHaan via Digitalmars-d-announce

On Tuesday, 3 May 2016 at 19:05:22 UTC, jmh530 wrote:

On Tuesday, 3 May 2016 at 18:15:20 UTC, Jeremy DeHaan wrote:


I am reading a paper on how one could use extra information 
about what was last assigned to a union in order to scan them 
precisely. I haven't read the whole thing yet, but it looks 
like it could be done.


Not sure if it is something I can get to in the course of my 
project though. Scanning only unions conservatively is still 
pretty good.


Does it matter that @safe code does not allow unions of 
pointers and non-pointers?


I'm not sure, but one would thing that @safe code wouldn't need 
any extra information about the union. I wouldn't know how to 
differentiate between them though during runtime. Probably 
someone with more experience with the compiler would know more 
about that kind of thing.


Re: GSoC 2016 - Precise GC

2016-05-03 Thread jmh530 via Digitalmars-d-announce

On Tuesday, 3 May 2016 at 18:15:20 UTC, Jeremy DeHaan wrote:


I am reading a paper on how one could use extra information 
about what was last assigned to a union in order to scan them 
precisely. I haven't read the whole thing yet, but it looks 
like it could be done.


Not sure if it is something I can get to in the course of my 
project though. Scanning only unions conservatively is still 
pretty good.


Does it matter that @safe code does not allow unions of pointers 
and non-pointers?


Re: GSoC 2016 - Precise GC

2016-05-03 Thread Jeremy DeHaan via Digitalmars-d-announce

On Tuesday, 3 May 2016 at 16:44:32 UTC, Jack Stouffer wrote:

On Tuesday, 3 May 2016 at 16:15:27 UTC, Jeremy DeHaan wrote:
I agree, but a precise heap scan should be the easiest part of 
this project. Rainer Schuetze has already implemented this and 
presented it at a dconf a few years ago(2013?). My plan is to 
use that since I know it works, and that frees up my time to 
focus on pretty much everything else.


I don't remember all the details, but I'm pretty sure that 
Rainer, or maybe someone else, was talking about how a precise 
GC is not completely possible in D because D has unions.


I am reading a paper on how one could use extra information about 
what was last assigned to a union in order to scan them 
precisely. I haven't read the whole thing yet, but it looks like 
it could be done.


Not sure if it is something I can get to in the course of my 
project though. Scanning only unions conservatively is still 
pretty good.


Re: GSoC 2016 - Precise GC

2016-05-03 Thread jmh530 via Digitalmars-d-announce

On Tuesday, 3 May 2016 at 16:44:32 UTC, Jack Stouffer wrote:


I don't remember all the details, but I'm pretty sure that 
Rainer, or maybe someone else, was talking about how a precise 
GC is not completely possible in D because D has unions.


Discussed in this thread (among others)
http://forum.dlang.org/thread/bzcatcalqsxqvptxl...@forum.dlang.org


Re: GSoC 2016 - Precise GC

2016-05-03 Thread Jack Stouffer via Digitalmars-d-announce

On Tuesday, 3 May 2016 at 16:15:27 UTC, Jeremy DeHaan wrote:
I agree, but a precise heap scan should be the easiest part of 
this project. Rainer Schuetze has already implemented this and 
presented it at a dconf a few years ago(2013?). My plan is to 
use that since I know it works, and that frees up my time to 
focus on pretty much everything else.


I don't remember all the details, but I'm pretty sure that 
Rainer, or maybe someone else, was talking about how a precise GC 
is not completely possible in D because D has unions.


Re: GSoC 2016 - Precise GC

2016-05-03 Thread Jeremy DeHaan via Digitalmars-d-announce

On Tuesday, 3 May 2016 at 06:23:51 UTC, Yura Sokolov wrote:

On Monday, 2 May 2016 at 15:29:15 UTC, Jeremy DeHaan wrote:

Hi everyone!

I'm a little late to the party as far as my announcement goes, 
but I have been busy reading code and doing research for my 
project.


[...]


Great! That is what should have been done long time ago.

I'm pretty sure, if you implement just precise heap scan (and 
lock removal), it will be already huge win.


I agree, but a precise heap scan should be the easiest part of 
this project. Rainer Schuetze has already implemented this and 
presented it at a dconf a few years ago(2013?). My plan is to use 
that since I know it works, and that frees up my time to focus on 
pretty much everything else.


Re: GSoC 2016 - Precise GC

2016-05-03 Thread Yura Sokolov via Digitalmars-d-announce

On Monday, 2 May 2016 at 15:29:15 UTC, Jeremy DeHaan wrote:

Hi everyone!

I'm a little late to the party as far as my announcement goes, 
but I have been busy reading code and doing research for my 
project.


[...]


Great! That is what should have been done long time ago.

I'm pretty sure, if you implement just precise heap scan (and 
lock removal), it will be already huge win.


GSoC 2016 - Precise GC

2016-05-02 Thread Jeremy DeHaan via Digitalmars-d-announce

Hi everyone!

I'm a little late to the party as far as my announcement goes, 
but I have been busy reading code and doing research for my 
project.


I was selected for this year's GSoC to implement a Precise GC, 
but I'm also planning to remove the lock on allocations as 
outlined in my proposal: 
https://drive.google.com/file/d/0B-UTFTbYro4vV0ljMUlSTEc2eEU/view?usp=sharing



My repository for the code can be found here: 
https://github.com/Jebbs/druntime



I will be posting of my progress in this thread throughout the 
course of the summer, but right now I am mainly focusing on 
familiarizing myself with all of the GC code since there is quite 
a lot of it. You will probably see me pushing some updates to 
documentation between now and when GSoC officially starts, but I 
hope to have already started making progress before then.


I'll do my best to not let you all down!


Re: GSoC 2016 - std.experimental.xml progress

2016-05-02 Thread Steven Schveighoffer via Digitalmars-d-announce

On 5/2/16 8:25 AM, 9il wrote:

On Monday, 2 May 2016 at 08:45:59 UTC, Lodovico Giaretta wrote:

Hi,

Just a little update about my project...
After days of bugfixes, the first almost-high-level API (XMLCursor) is
now quite usable.
Now I can start working on other APIs (e.g. DOM) based on it.

If you're interested you can find some usage examples in files
benchmark.d and test.d .
Any comment is highly appreciated.

(If you missed it, the repo is
https://github.com/lodo1995/experimental.xml ).

Thank you in advance.

Lodovico Giaretta


Hello Lodovico,

Thank you for working on new xml. Please use size_t and sizediff_t
instead of uint and int in your loops:

for (auto i = 0; i < t.length; i++)

should be replaced with

foreach (size_t i; 0 .. t.length)


It's not obvious, but you identified 2 different things here.

auto i = 0 -> typeof(i) == int

size_t i = 0 -> typeof(i) == size_t

AND

use foreach instead of for loops for simple index traversal.

Note: foreach(i; 0 .. t.length) should correctly type i as size_t, there 
is no need to force it.


-Steve


Re: GSoC 2016 - std.experimental.xml progress

2016-05-02 Thread Lodovico Giaretta via Digitalmars-d-announce

On Monday, 2 May 2016 at 12:25:03 UTC, 9il wrote:

Hello Lodovico,

Thank you for working on new xml. Please use size_t and 
sizediff_t instead of uint and int in your loops:


for (auto i = 0; i < t.length; i++)

should be replaced with

foreach (size_t i; 0 .. t.length)

Best regards,
Ilya


I'll fix this. Thank you very much.


Re: GSoC 2016 - std.experimental.xml progress

2016-05-02 Thread 9il via Digitalmars-d-announce

On Monday, 2 May 2016 at 08:45:59 UTC, Lodovico Giaretta wrote:

Hi,

Just a little update about my project...
After days of bugfixes, the first almost-high-level API 
(XMLCursor) is now quite usable.

Now I can start working on other APIs (e.g. DOM) based on it.

If you're interested you can find some usage examples in files 
benchmark.d and test.d .

Any comment is highly appreciated.

(If you missed it, the repo is 
https://github.com/lodo1995/experimental.xml ).


Thank you in advance.

Lodovico Giaretta


Hello Lodovico,

Thank you for working on new xml. Please use size_t and 
sizediff_t instead of uint and int in your loops:


for (auto i = 0; i < t.length; i++)

should be replaced with

foreach (size_t i; 0 .. t.length)

Best regards,
Ilya


GSoC 2016 - std.experimental.xml progress

2016-05-02 Thread Lodovico Giaretta via Digitalmars-d-announce

Hi,

Just a little update about my project...
After days of bugfixes, the first almost-high-level API 
(XMLCursor) is now quite usable.

Now I can start working on other APIs (e.g. DOM) based on it.

If you're interested you can find some usage examples in files 
benchmark.d and test.d .

Any comment is highly appreciated.

(If you missed it, the repo is 
https://github.com/lodo1995/experimental.xml ).


Thank you in advance.

Lodovico Giaretta


Re: GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-24 Thread Chris via Digitalmars-d
On Saturday, 23 April 2016 at 08:30:32 UTC, Lodovico Giaretta 
wrote:

Hi,

I'm Lodovico Giaretta and I've been selected by the D 
Foundation for GSoC 2016.


First of all, I'd like to thank the D Foundation for this 
fantastic opportunity.
In particular, I'd like to thank Craig Dillabaugh and Robert 
Schadek for their patience in helping me from my first contacts 
till now.
I'll do my best to implement my proposal and make this 
experience really unique.


My proposal is available online: 
https://drive.google.com/file/d/0B2_hnTCdWtH-eEplQ3hZdnY2Wlk/view?usp=sharing


Also, while writing the proposal, I started implementing some 
small components. You can find my efforts here: 
https://github.com/lodo1995/experimental.xml

I expect that I'll restart updating it in a couple of days.

This is my first experience at GSoC and also my first 
collaboration with a big open source project, so if you have 
any suggestion about my proposal or my early implementation, 
feel free to tell me.


Thank you very much to everybody.

Lodovico Giaretta


Great! We really need proper XML support in Phobos.


Re: GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-24 Thread Lodovico Giaretta via Digitalmars-d

On Saturday, 23 April 2016 at 18:49:00 UTC, Jack Stouffer wrote:
If you want, you can get more feedback by submitting a work in 
progress PR to Phobos so people can see the development of the 
library and comment on it as you go. This would also allow you 
to test your code with the Phobos CI which has a 10 different 
platforms.


This is a very good idea, but I think I'll not apply it now. In 
my opinion, the code is not mature enough to be integrated with 
Phobos. I hope that for May 23rd (when GSoC coding phase 
officially begins) my repository will have switched from the 
"sketch" phase to the "development towards an almost-well-defined 
design" phase. In that case, I'll submit a PR, so that the 
details of interfaces and implementation can be easily discussed.




Re: GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-24 Thread Lodovico Giaretta via Digitalmars-d

On Saturday, 23 April 2016 at 14:38:36 UTC, Seb wrote:

Do you know about these two projects?

https://github.com/jacob-carlborg/orange
https://github.com/s-ludwig/std_data_json

It would be great if your xml library could work with the 
proposed std.data specification. Ideally switching from Json 
output to xml output, should be changing one line.


--- WARNING: NOOB QUESTION ---
I've heard something about std.data, but I know almost nothing 
about it. Where can I find the proposed specification?

--- END OF NOOB QUESTION ---

By the way, I think that std.xml will end up having lots of 
compile-time configurations (via templates), so it will have a 
simple wrapper on top of it, which can of course obey the 
std.data specification. This will allow casual users to have the 
job done in a few lines without any pain.





Re: GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-23 Thread Jack Stouffer via Digitalmars-d
On Saturday, 23 April 2016 at 08:30:32 UTC, Lodovico Giaretta 
wrote:

Hi,

I'm Lodovico Giaretta and I've been selected by the D 
Foundation for GSoC 2016.


First of all, I'd like to thank the D Foundation for this 
fantastic opportunity.
In particular, I'd like to thank Craig Dillabaugh and Robert 
Schadek for their patience in helping me from my first contacts 
till now.
I'll do my best to implement my proposal and make this 
experience really unique.


My proposal is available online: 
https://drive.google.com/file/d/0B2_hnTCdWtH-eEplQ3hZdnY2Wlk/view?usp=sharing


Also, while writing the proposal, I started implementing some 
small components. You can find my efforts here: 
https://github.com/lodo1995/experimental.xml

I expect that I'll restart updating it in a couple of days.

This is my first experience at GSoC and also my first 
collaboration with a big open source project, so if you have 
any suggestion about my proposal or my early implementation, 
feel free to tell me.


Thank you very much to everybody.

Lodovico Giaretta


If you want, you can get more feedback by submitting a work in 
progress PR to Phobos so people can see the development of the 
library and comment on it as you go. This would also allow you to 
test your code with the Phobos CI which has a 10 different 
platforms.


Re: GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-23 Thread Seb via Digitalmars-d
On Saturday, 23 April 2016 at 08:30:32 UTC, Lodovico Giaretta 
wrote:

Hi,

I'm Lodovico Giaretta and I've been selected by the D 
Foundation for GSoC 2016.


First of all, I'd like to thank the D Foundation for this 
fantastic opportunity.
In particular, I'd like to thank Craig Dillabaugh and Robert 
Schadek for their patience in helping me from my first contacts 
till now.
I'll do my best to implement my proposal and make this 
experience really unique.


My proposal is available online: 
https://drive.google.com/file/d/0B2_hnTCdWtH-eEplQ3hZdnY2Wlk/view?usp=sharing


Also, while writing the proposal, I started implementing some 
small components. You can find my efforts here: 
https://github.com/lodo1995/experimental.xml

I expect that I'll restart updating it in a couple of days.

This is my first experience at GSoC and also my first 
collaboration with a big open source project, so if you have 
any suggestion about my proposal or my early implementation, 
feel free to tell me.


Thank you very much to everybody.

Lodovico Giaretta


Do you know about these two projects?

https://github.com/jacob-carlborg/orange
https://github.com/s-ludwig/std_data_json

It would be great if your xml library could work with the 
proposed std.data specification. Ideally switching from Json 
output to xml output, should be changing one line.


Re: GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-23 Thread Lodovico Giaretta via Digitalmars-d

On Saturday, 23 April 2016 at 11:03:03 UTC, Ed wrote:
Your D style is 90% Phobos compatible. There are few details 
you need to fix before writing more: you tend to forget the 
space after "if", "foreach" and "while". You'll see that 
actually this space makes the things more beautiful because the 
identifier used after the opening parenthesis and the first 
identifier used after the indentation are aligned.


if (wellAligned)
wellAligned++;


You can fix existing work with Dfmt if you dont want to process 
manually.


Thank you for pointing this out.

Lodovico Giaretta


Re: GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-23 Thread Ed via Digitalmars-d
On Saturday, 23 April 2016 at 08:30:32 UTC, Lodovico Giaretta 
wrote:
This is my first experience at GSoC and also my first 
collaboration with a big open source project, so if you have 
any suggestion about my proposal or my early implementation, 
feel free to tell me.


Thank you very much to everybody.

Lodovico Giaretta


Your D style is 90% Phobos compatible. There are few details you 
need to fix before writing more: you tend to forget the space 
after "if", "foreach" and "while". You'll see that actually this 
space makes the things more beautiful because the identifier used 
after the opening parenthesis and the first identifier used after 
the indentation are aligned.


if (wellAligned)
wellAligned++;


You can fix existing work with Dfmt if you dont want to process 
manually.


Re: GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-23 Thread rikki cattermole via Digitalmars-d

On 23/04/2016 8:30 PM, Lodovico Giaretta wrote:

Hi,

I'm Lodovico Giaretta and I've been selected by the D Foundation for
GSoC 2016.

First of all, I'd like to thank the D Foundation for this fantastic
opportunity.
In particular, I'd like to thank Craig Dillabaugh and Robert Schadek for
their patience in helping me from my first contacts till now.
I'll do my best to implement my proposal and make this experience really
unique.

My proposal is available online:
https://drive.google.com/file/d/0B2_hnTCdWtH-eEplQ3hZdnY2Wlk/view?usp=sharing


Also, while writing the proposal, I started implementing some small
components. You can find my efforts here:
https://github.com/lodo1995/experimental.xml
I expect that I'll restart updating it in a couple of days.

This is my first experience at GSoC and also my first collaboration with
a big open source project, so if you have any suggestion about my
proposal or my early implementation, feel free to tell me.

Thank you very much to everybody.

Lodovico Giaretta


Welcome!
If you're able to a lot of us hang out on #d on Freenode, if you wish to 
join please do!


GSoC 2016 - A replacement of std.xml for the Phobos standard library

2016-04-23 Thread Lodovico Giaretta via Digitalmars-d

Hi,

I'm Lodovico Giaretta and I've been selected by the D Foundation 
for GSoC 2016.


First of all, I'd like to thank the D Foundation for this 
fantastic opportunity.
In particular, I'd like to thank Craig Dillabaugh and Robert 
Schadek for their patience in helping me from my first contacts 
till now.
I'll do my best to implement my proposal and make this experience 
really unique.


My proposal is available online: 
https://drive.google.com/file/d/0B2_hnTCdWtH-eEplQ3hZdnY2Wlk/view?usp=sharing


Also, while writing the proposal, I started implementing some 
small components. You can find my efforts here: 
https://github.com/lodo1995/experimental.xml

I expect that I'll restart updating it in a couple of days.

This is my first experience at GSoC and also my first 
collaboration with a big open source project, so if you have any 
suggestion about my proposal or my early implementation, feel 
free to tell me.


Thank you very much to everybody.

Lodovico Giaretta


Re: GSoC 2016

2016-04-22 Thread ciechowoj via Digitalmars-d

List of accepted projects : D:

https://summerofcode.withgoogle.com/organizations/5078256051027968/#projects





Re: GSoC 2016

2016-03-21 Thread Craig Dillabaugh via Digitalmars-d

On Monday, 21 March 2016 at 21:12:30 UTC, Jacob Carlborg wrote:

On 2016-03-21 14:54, Craig Dillabaugh wrote:

Jacob Carlborg ... if you are reading this would you be able 
to lend a
hand in advising on the proposals?   I believe these projects 
a mostly
related to C => D conversion tools.  Maybe you can email 
russel or

myself if you can:


I'm not really sure what that would imply.


I recall you said you didn't have time to mentor, but might be 
able to provide advice.  I was wondering if you might be able to 
read over the proposals and provide some feedback (is the 
proposal achievable, helpful?  Can you see any obvious 
improvements the student could make)  From my experience most of 
the proposals are two or three pages long - so its not too much 
reading.


If you think you have time then feel free to email me and I can 
try and work something out with Russel.  If you are too busy then 
we will make due.


Cheers,

Craig




Re: GSoC 2016

2016-03-21 Thread Jacob Carlborg via Digitalmars-d

On 2016-03-21 14:54, Craig Dillabaugh wrote:


Jacob Carlborg ... if you are reading this would you be able to lend a
hand in advising on the proposals?   I believe these projects a mostly
related to C => D conversion tools.  Maybe you can email russel or
myself if you can:


I'm not really sure what that would imply.

--
/Jacob Carlborg


Re: GSoC 2016

2016-03-21 Thread Craig Dillabaugh via Digitalmars-d

On Sunday, 20 March 2016 at 15:03:16 UTC, Russel Winder wrote:
Due to unforseen circumstances, I am well behind dealing wit 
GSoC email, an
I doubt I will beable to get on top of it till Thursday. There 
are at least
five peopl I should be having conversations with but I fear it 
is unlikely

to happen in the next three days :-(

Russel.
=
Dr Russel Winder t:+44 20 7585 2200   voip:sip:
russel.win...@ekiga.net
41 Buckmaster Road   m:+44 7770 465 077   
xmpp:rus...@winder.org.uk

London SW11 1EN, UK  w: www.russel.org.uk skype:russel_winder


Jacob Carlborg ... if you are reading this would you be able to 
lend a hand in advising on the proposals?   I believe these 
projects a mostly related to C => D conversion tools.  Maybe you 
can email russel or myself if you can:


craig dot dillabaugh at gmail dot com

Craig


Re: GSoC 2016

2016-03-20 Thread rikki cattermole via Digitalmars-d

On 21/03/16 4:03 AM, Russel Winder via Digitalmars-d wrote:

Due to unforseen circumstances, I am well behind dealing wit GSoC email, an
I doubt I will beable to get on top of it till Thursday. There are at least
five peopl I should be having conversations with but I fear it is unlikely
to happen in the next three days :-(

Russel.
=
Dr Russel Winder t:+44 20 7585 2200   voip:sip:
russel.win...@ekiga.net
41 Buckmaster Road   m:+44 7770 465 077   xmpp:rus...@winder.org.uk
London SW11 1EN, UK  w: www.russel.org.uk skype:russel_winder


No worries, just get well!


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus



GSoC 2016

2016-03-20 Thread Russel Winder via Digitalmars-d
Due to unforseen circumstances, I am well behind dealing wit GSoC email, an
I doubt I will beable to get on top of it till Thursday. There are at least
five peopl I should be having conversations with but I fear it is unlikely
to happen in the next three days :-(
 
Russel.
=
Dr Russel Winder t:+44 20 7585 2200   voip:sip:
russel.win...@ekiga.net
41 Buckmaster Road   m:+44 7770 465 077   xmpp:rus...@winder.org.uk
London SW11 1EN, UK  w: www.russel.org.uk skype:russel_winder

signature.asc
Description: This is a digitally signed message part


Re: GSoC 2016 - std.xml rewrite

2016-03-10 Thread Marc Schütz via Digitalmars-d

On Tuesday, 8 March 2016 at 18:01:25 UTC, Lodovico Giaretta wrote:
- one accepting InputRanges, that can work with almost any data 
source and does not require the entire input to be available at 
the same time; it's cons are that it must allocate lots of 
small strings (one for each token) and grow them one char at a 
time, so it's not so fast;


It could reuse its buffer though, and deal in `const(char)[]` 
instead of `string`. The consumer is responsible for copying if 
they need it. But I guess this will only be useful for the pull 
parser, or for one-pass filters/lookups.



This is just an early sketch, but I'd love to get some feedback.
Thank you for your time.


You might also check out Steven Schveighoffer's experimental IO 
module for stream parsing:


https://forum.dlang.org/thread/na14ul$30uo$1...@digitalmars.com


GSoC 2016 in social media

2016-03-08 Thread Andrei Alexandrescu via Digitalmars-d-announce

https://www.facebook.com/dlang.org/posts/1242909802389365

https://twitter.com/D_Programming/status/707315004056281088

I also noticed GSoC 2016 hasn't been announced on reddit, so:

https://www.reddit.com/r/programming/comments/49knvu/google_summer_of_code_2016_accepted_organizations/


Andrei


Re: GSoC 2016 - std.xml rewrite

2016-03-08 Thread Lodovico Giaretta via Digitalmars-d

On Tuesday, 8 March 2016 at 16:20:00 UTC, CraigDillabaugh wrote:
Also, if you have concrete ideas feel free to post those on 
here if you want feedback.


I was thinking about the general structure of the parsing 
library, and I came up with this schema:


Lexer -> Low Level Parser -> High Level API

There should be various lexers feeding the low level parser, 
differing in the kind of input they accept:
- one accepting InputRanges, that can work with almost any data 
source and does not require the entire input to be available at 
the same time; it's cons are that it must allocate lots of small 
strings (one for each token) and grow them one char at a time, so 
it's not so fast;
- one accepting Slices, that benefits from fast searches and 
slicing, without needing any additional allocation; it's cons is 
that the entire input has to be loaded in RAM;
- an hybrid lexer, that tries to get the pros of both and the 
cons of none.


There should be various APIs feeded by the low level parser. Here 
I took inspiration from Java:

- a DOM API;
- a push parser (like SAX), conceptually similar to the actual 
std.xml.ElementParser;
- a pull parser (somehow inspired by StAX), that provides a 
cursor to scroll the input and also an InputRange interface, for 
easy integration with other D libraries (like std.algorithm).


Validating the input for well-formedness should probably be done 
between the parser and the high level API, so that structural 
issues (like missing close tags) are found and handled before 
affecting, for example, the building of the Document object.
Checking the validity of the document (such as conformance to the 
DTD) should instead be done on top of the high level API, which 
gives easy access, for example, to namespaces and attributes 
(which the low level parser leaves unparsed).


Both kinds of validators should be pluggable and configurable via 
template parameters, allowing to select which checks to perform 
and how to handle errors (throwing exceptions, calling registered 
callbacks or whatever).


After all of this is done, the next step should be an XPath 
library (I don't know much about this).


This is just an early sketch, but I'd love to get some feedback.
Thank you for your time.


Re: GSoC 2016 - std.xml rewrite

2016-03-08 Thread CraigDillabaugh via Digitalmars-d

On Tuesday, 8 March 2016 at 14:55:07 UTC, Lodovico Giaretta wrote:

Hi!
My name is Lodovico Giaretta and I'm a second year CS student 
at University of Trento, Italy.


I saw on the D ideas page that std.xml needs a rewrite, and I 
also read a thread regarding this need 
(https://forum.dlang.org/thread/vsbsxfeciryrdsjhh...@forum.dlang.org).


I'm willing to partecipate to this task (in fact, I'm already 
looking at some other xml APIs and sketching some ideas...), 
mainly because I find D to be a very good language and I think 
that a more complete standard library would surely help it to 
spread.


What should I do to get in touch while waiting for the 
application period?


Thanks in advance for your time (and your patience)!


If you email me (craig dot dillabaugh at gmail dot com ) I can 
get you in touch with potential mentors (but I don't like posting 
other folks emails on here).


Also, if you have concrete ideas feel free to post those on here 
if you want feedback.


GSoC 2016 - std.xml rewrite

2016-03-08 Thread Lodovico Giaretta via Digitalmars-d

Hi!
My name is Lodovico Giaretta and I'm a second year CS student at 
University of Trento, Italy.


I saw on the D ideas page that std.xml needs a rewrite, and I 
also read a thread regarding this need 
(https://forum.dlang.org/thread/vsbsxfeciryrdsjhh...@forum.dlang.org).


I'm willing to partecipate to this task (in fact, I'm already 
looking at some other xml APIs and sketching some ideas...), 
mainly because I find D to be a very good language and I think 
that a more complete standard library would surely help it to 
spread.


What should I do to get in touch while waiting for the 
application period?


Thanks in advance for your time (and your patience)!


Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-07 Thread Abhishek Kumar via Digitalmars-d

Hello
I have fixed https://issues.dlang.org/show_bug.cgi?id=4509 and 
sent a PR.Please have a look.How should I discuss my GSoC 
proposal, what things I should work upon etc.?


Thanks
Abhishek Kumar


Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-07 Thread CraigDillabaugh via Digitalmars-d

On Monday, 7 March 2016 at 12:46:51 UTC, Abhishek Kumar wrote:

Hello
While looking into D language I found few Phobos standard 
libraries very interesting to work upon during GSoC.I will like 
to work on std.i18n or xml parsing libraries.I looked into 
Phobos github repositories but there's no issues section that I 
can work upon.Can someone help me with some beginner tasks?I'm 
familiar with GNU gettext and D language.I saw Mr. Andrei 
Alexandrescu as prospective mentor.How can I contact him?


Thanks
Abhishek


First off, read the following thread:

http://forum.dlang.org/thread/vsbsxfeciryrdsjhh...@forum.dlang.org

For contact info you can email me:

craig dot dillabaugh at gmail dot com

Cheers,

Craig




Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-07 Thread Seb via Digitalmars-d

On Monday, 7 March 2016 at 12:46:51 UTC, Abhishek Kumar wrote:

Hello
While looking into D language I found few Phobos standard 
libraries very interesting to work upon during GSoC.I will like 
to work on std.i18n or xml parsing libraries.I looked into 
Phobos github repositories but there's no issues section that I 
can work upon.Can someone help me with some beginner tasks?I'm 
familiar with GNU gettext and D language.I saw Mr. Andrei 
Alexandrescu as prospective mentor.How can I contact him?


Thanks
Abhishek


Look into the issue tracker (issues.dlang.org), pick some tasks 
to get started and submit PRs - that is the best way to get in 
touch with him.


Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-07 Thread Abhishek Kumar via Digitalmars-d

Hello
While looking into D language I found few Phobos standard 
libraries very interesting to work upon during GSoC.I will like 
to work on std.i18n or xml parsing libraries.I looked into Phobos 
github repositories but there's no issues section that I can work 
upon.Can someone help me with some beginner tasks?I'm familiar 
with GNU gettext and D language.I saw Mr. Andrei Alexandrescu as 
prospective mentor.How can I contact him?


Thanks
Abhishek


Re: I guess this is good GSOC 2016 news?

2016-03-04 Thread Craig Dillabaugh via Digitalmars-d

On Monday, 29 February 2016 at 21:33:47 UTC, Wyatt wrote:
On Monday, 29 February 2016 at 21:22:44 UTC, Jonas Drewsen 
wrote:

https://summerofcode.withgoogle.com/organizations/?sp-category=languages


Yes, that IS great news!  Though it doesn't seem to say how 
many slots were given?  Craig, any word?


-Wyatt


Sorry, missed this thread somehow.  I am not sure how many slots 
we have.  Perhaps Google hasn't decided that yet, but I am still 
familiarizing myself with the new GSoC site.


When I find anything out I will be sure to post it on the Forum.

Cheers,

Craig


Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-03 Thread tsbockman via Digitalmars-d
On Thursday, 3 March 2016 at 03:22:02 UTC, Andrei Alexandrescu 
wrote:

On 03/02/2016 05:38 PM, tsbockman wrote:
Once you've familiarized yourself with the basics of using D, 
you can

read this:
http://wiki.dlang.org/Starting_as_a_Contributor
To help you get started contributing.


I see each section in that document is still broken down by OS, 
instead of the entire document being broken down by OS, in 
spite of my repeated demands that that be changed.


Somehow I doubt that "demands" will get you very far on an 
volunteer project...


Also, of the eleven sections listed under "Contents", only two 
are broken down by OS. For the other nine, the content is shared 
across all platforms.


I don't think your proposed re-org actually makes sense. This is 
likely part of why no one has done it for you yet.


Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-02 Thread Andrei Alexandrescu via Digitalmars-d

On 03/02/2016 05:38 PM, tsbockman wrote:

Once you've familiarized yourself with the basics of using D, you can
read this:
http://wiki.dlang.org/Starting_as_a_Contributor
To help you get started contributing.


I see each section in that document is still broken down by OS, instead 
of the entire document being broken down by OS, in spite of my repeated 
demands that that be changed.


Could the contributor who added Windows and OSX change the document 
accordingly at their earliest convenience. Thanks.



Andrei



Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-02 Thread tsbockman via Digitalmars-d

On Wednesday, 2 March 2016 at 06:44:24 UTC, Abhishek Kumar wrote:

On Tuesday, 1 March 2016 at 11:50:02 UTC, Abhishek Kumar wrote:

Hello
I am Abhishek Kumar,computer science student from India.I am 
interested in working on D language during GSoC 2016.I found 
"GDC Project - The GNU D Compiler" interesting.
I have interest in programming languages and compilers.I have 
been working on a Python to C++ code converter,also I am 
writing a Javascript parser for code minification in 
Scala(Using scala fastparse). I have prior open source 
experience in Scala and good knowledge of C/C++.
  Can someone help me with how to start and get familiar with 
D?

I'll be glad to have your help and suggestions.

Thanks
Abhishek Kumar


Hello
Thanks for your help.I am reading D and hope I'll get familiar 
shortly.Can you give me some

beginner friendly task to get acquainted with the D compiler?

Thanks
Abhishek Kumar


Once you've familiarized yourself with the basics of using D, you 
can read this:

http://wiki.dlang.org/Starting_as_a_Contributor
To help you get started contributing.

You can also learn a lot just by going onto D's Github 
organization and reviewing some of the open pull requests:

https://github.com/D-Programming-Language/dmd/pulls
https://github.com/D-Programming-Language/druntime/pulls
https://github.com/D-Programming-Language/phobos/pulls

For GDC, specifically, you'll need to talk to Ian Buclaw, as that 
is mostly his project. (But it shares most of its D-specific code 
with Walter Bright's DMD compiler, so you should still checkout 
the links I gave above.)


Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-02 Thread ZombineDev via Digitalmars-d

On Wednesday, 2 March 2016 at 06:44:24 UTC, Abhishek Kumar wrote:

On Tuesday, 1 March 2016 at 11:50:02 UTC, Abhishek Kumar wrote:

Hello
I am Abhishek Kumar,computer science student from India.I am 
interested in working on D language during GSoC 2016.I found 
"GDC Project - The GNU D Compiler" interesting.
I have interest in programming languages and compilers.I have 
been working on a Python to C++ code converter,also I am 
writing a Javascript parser for code minification in 
Scala(Using scala fastparse). I have prior open source 
experience in Scala and good knowledge of C/C++.
  Can someone help me with how to start and get familiar with 
D?

I'll be glad to have your help and suggestions.

Thanks
Abhishek Kumar


Hello
Thanks for your help.I am reading D and hope I'll get familiar 
shortly.Can you give me some

beginner friendly task to get acquainted with the D compiler?

Thanks
Abhishek Kumar


Hi

First I would suggest getting familiar with the langauge. Ali's 
book is a great starting point: 
http://ddili.org/ders/d.en/index.html


Next would suggest git cloning and building the source code the 
get some familiarity with the development process and then 
reading the open or closed (merged) pull requests to get an idea 
what is currently worked on.


The source code is here:
https://github.com/D-Programming-GDC/GDC

Also if your not familiar with git and github, these articles 
maybe helpful: 
http://readwrite.com/2013/09/30/understanding-github-a-journey-for-beginners-part-1


https://guides.github.com/introduction/flow/


=
Some background information

A D implementation generally consists of 3 to 5 parts:
1) compiler - reads source files and generates object files.

2) Linker - D is compatible with the platform liknker (ld.bfd, 
ld.gold, lld, MSVC) however on Windows we also distribute the 
OptLink linker (which part of an older compiler project named 
DMC) for linking 32-bit OMF object files.


3) DRuntime - library that implements the language featutes that 
require run-time support and overall provides platform 
abstraction. This what you need to port when you want to expand 
the D support to another platform. (e.g. ARM/iOS, ARM/Android, 
PPC, etc.) See here for more info: 
https://github.com/D-Programming-Language/druntime


4) Phobos - the D standard library. Builds on top DRuntime to 
provide high-level features for the users of the language. See 
http://dlang.org/phobos/ and 
https://github.com/D-Programming-Language/phobos/ for more info.


5) Dub - the D package manager and build system. Initially 
developed independently, but recently gained enough popularity to 
be regarded as part of the D ecosystem. See 
http://code.dlang.org/getting_started and 
https://github.com/D-Programming-Language/dub.


3), 4) and 5) are written completely in D. 1) was initially C++ 
only, but now DMD's frontend is translated in D.


For 2) we rely on the developer's platform, but we still 
distribute OptLink on Windows for legacy reasons.


1), 3) and 4) are currently bundled together, and in the future 
the installation package will also include 5).


There are 3 major D compilers currently - DMD, GDC and LDC. They 
all share the same frontend, which is responsible for lexing 
(converting source files into a stream of tokens), parsing 
(creating AST from the token stream) and semantic analysis 
(verfying the correctness of AST, template instantiation, 
overload resolution, compile-time function evaluation (CTFE), ... 
all the language  rules are here).

GDC uses the GCC backend and LDC uses the LLVM backend.
Initially there was only DMD, which was developed by the creator 
of the language (Walter Bright) and so it is currently the 
reference implementation. DMD is based Walter Bright's older DMC 
C/C++ compiler and currently DMC and DMD share the same backend. 
It provides fast compilation times and ok code generation.
GDC and LDC on the other hand have slighly slower compilation 
time, however they produce much faster machine code than DMD.


As DMD is the reference implementation, it uses the newest 
version of the frontend and GDC and LDC are lagging behind.
I think that the most important thing that you can help with is 
giving Iain Buclaw (the main maintainer of GDC) a hand in porting 
GDC to the newest frontend version. Currently GDC is at version 
2.067 while DMD uses 2.070. This is very important because it 
would allow users of GDC to uses newer features of language or 
the standard library that are currently only available on DMD. 
And it would also make possible the use of newer D libraries on 
other platforms that DMD doesn't support.






Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-02 Thread Abhishek Kumar via Digitalmars-d

On Tuesday, 1 March 2016 at 11:50:02 UTC, Abhishek Kumar wrote:

Hello
I am Abhishek Kumar,computer science student from India.I am 
interested in working on D language during GSoC 2016.I found 
"GDC Project - The GNU D Compiler" interesting.
I have interest in programming languages and compilers.I have 
been working on a Python to C++ code converter,also I am 
writing a Javascript parser for code minification in 
Scala(Using scala fastparse). I have prior open source 
experience in Scala and good knowledge of C/C++.

  Can someone help me with how to start and get familiar with D?
I'll be glad to have your help and suggestions.

Thanks
Abhishek Kumar


Hello
Thanks for your help.I am reading D and hope I'll get familiar 
shortly.Can you give me some

beginner friendly task to get acquainted with the D compiler?

Thanks
Abhishek Kumar




Re: GSoC 2016 - D Foundation was accepted!

2016-03-02 Thread Walter Bright via Digitalmars-d-announce

On 3/1/2016 5:57 AM, Andrei Alexandrescu wrote:

Congratulations to everyone who helped, and especially to Craig for driving
this! Craig, you should be really proud - this is a great accomplishment. -- 
Andrei


I agree, thank you Craig!


Re: GSoC 2016 - D Foundation was accepted!

2016-03-02 Thread CraigDillabaugh via Digitalmars-d-announce

On Tuesday, 1 March 2016 at 15:30:26 UTC, Gary Willoughby wrote:

On Tuesday, 1 March 2016 at 01:55:09 UTC, Jeremy DeHaan wrote:

Hello everyone!

I didn't see mention of this yet, but earlier today Google 
released their list of accepted Organizations for this year's 
GSoC. Guess what! The D Foundation made the cut!


Thank you to everyone that worked on the proposals and 
application. This is awesome and you all are awesome!




Now to get started on my own application...


There's someone already here asking for help to get started 
with D.


http://forum.dlang.org/thread/unjwimupfbeoopknq...@forum.dlang.org


Thanks all for the kind words.  Nice to see we got in, and 
hopefully we can make some positive strides for D out of this.





Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-02 Thread Joakim via Digitalmars-d

On Tuesday, 1 March 2016 at 11:50:02 UTC, Abhishek Kumar wrote:

Hello
I am Abhishek Kumar,computer science student from India.I am 
interested in working on D language during GSoC 2016.I found 
"GDC Project - The GNU D Compiler" interesting.
I have interest in programming languages and compilers.I have 
been working on a Python to C++ code converter,also I am 
writing a Javascript parser for code minification in 
Scala(Using scala fastparse). I have prior open source 
experience in Scala and good knowledge of C/C++.

  Can someone help me with how to start and get familiar with D?
I'll be glad to have your help and suggestions.


Presumably you've looked at the Getting Started link from the 
front page?


http://dlang.org/getstarted.html

It is difficult to answer the question more fully without knowing 
what aspects you want to start off with.  If you're unfamiliar 
with D itself, those links should get you going.  If you're 
already somewhat familiar and want to know more about some 
aspect, let us know what that is.


Re: GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-02 Thread Lass Safin via Digitalmars-d

On Tuesday, 1 March 2016 at 11:50:02 UTC, Abhishek Kumar wrote:

Hello
I am Abhishek Kumar,computer science student from India.I am 
interested in working on D language during GSoC 2016.I found 
"GDC Project - The GNU D Compiler" interesting.
I have interest in programming languages and compilers.I have 
been working on a Python to C++ code converter,also I am 
writing a Javascript parser for code minification in 
Scala(Using scala fastparse). I have prior open source 
experience in Scala and good knowledge of C/C++.

  Can someone help me with how to start and get familiar with D?
I'll be glad to have your help and suggestions.

Thanks
Abhishek Kumar


I had good C/C++ experience before learning D, thus to learn D I 
simply read the entire language reference at 
http://dlang.org/spec/intro.html; though you may find it a bit 
boring.


Re: GSoC 2016 - D Foundation was accepted!

2016-03-02 Thread Gary Willoughby via Digitalmars-d-announce

On Tuesday, 1 March 2016 at 01:55:09 UTC, Jeremy DeHaan wrote:

Hello everyone!

I didn't see mention of this yet, but earlier today Google 
released their list of accepted Organizations for this year's 
GSoC. Guess what! The D Foundation made the cut!


Thank you to everyone that worked on the proposals and 
application. This is awesome and you all are awesome!




Now to get started on my own application...


There's someone already here asking for help to get started with 
D.


http://forum.dlang.org/thread/unjwimupfbeoopknq...@forum.dlang.org



Re: GSoC 2016 - D Foundation was accepted!

2016-03-02 Thread Piotrek via Digitalmars-d-announce
On Tuesday, 1 March 2016 at 13:57:00 UTC, Andrei Alexandrescu 
wrote:
Congratulations to everyone who helped, and especially to Craig 
for driving this! Craig, you should be really proud - this is a 
great accomplishment. -- Andrei


Agree. Craig did a great job.

BTW. It is also good news in terms of marketing. The D foundation 
logo looks awesome along other cool projects.


Piotrek


Re: GSoC 2016 - D Foundation was accepted!

2016-03-01 Thread Andrei Alexandrescu via Digitalmars-d-announce
Congratulations to everyone who helped, and especially to Craig for 
driving this! Craig, you should be really proud - this is a great 
accomplishment. -- Andrei


Re: GSoC 2016 - D Foundation was accepted!

2016-03-01 Thread Craig Dillabaugh via Digitalmars-d-announce

On Tuesday, 1 March 2016 at 05:13:44 UTC, Jeremy DeHaan wrote:

On Tuesday, 1 March 2016 at 03:21:14 UTC, mate wrote:

On Tuesday, 1 March 2016 at 01:55:09 UTC, Jeremy DeHaan wrote:

Hello everyone!

I didn't see mention of this yet, but earlier today Google 
released their list of accepted Organizations for this year's 
GSoC. Guess what! The D Foundation made the cut!


Thank you to everyone that worked on the proposals and 
application. This is awesome and you all are awesome!




Now to get started on my own application...


I think it would have been polite and safe to wait for Craig’s 
announcement.


This was posted on the GSoC site for almost 6 hours when I 
posted it here and there was no announcement yet. Forgive me if 
I was overly excited.


No worries at all.  I was out skiing yesterday and when I got 
home my internet connection was down, so I couldn't check/post 
anything.  I am always happy when others do my work for me :o)


I guess the real work begins now!

Thanks to all who have contributed ideas.

Cheers,

Craig


GSoC 2016 "GDC Project - The GNU D Compiler" project

2016-03-01 Thread Abhishek Kumar via Digitalmars-d

Hello
I am Abhishek Kumar,computer science student from India.I am 
interested in working on D language during GSoC 2016.I found "GDC 
Project - The GNU D Compiler" interesting.
I have interest in programming languages and compilers.I have 
been working on a Python to C++ code converter,also I am writing 
a Javascript parser for code minification in Scala(Using scala 
fastparse). I have prior open source experience in Scala and good 
knowledge of C/C++.

  Can someone help me with how to start and get familiar with D?
I'll be glad to have your help and suggestions.

Thanks
Abhishek Kumar



Re: GSoC 2016 - D Foundation was accepted!

2016-02-29 Thread Jeremy DeHaan via Digitalmars-d-announce

On Tuesday, 1 March 2016 at 03:21:14 UTC, mate wrote:

On Tuesday, 1 March 2016 at 01:55:09 UTC, Jeremy DeHaan wrote:

Hello everyone!

I didn't see mention of this yet, but earlier today Google 
released their list of accepted Organizations for this year's 
GSoC. Guess what! The D Foundation made the cut!


Thank you to everyone that worked on the proposals and 
application. This is awesome and you all are awesome!




Now to get started on my own application...


I think it would have been polite and safe to wait for Craig’s 
announcement.


This was posted on the GSoC site for almost 6 hours when I posted 
it here and there was no announcement yet. Forgive me if I was 
overly excited.


Re: GSoC 2016 - D Foundation was accepted!

2016-02-29 Thread mate via Digitalmars-d-announce

On Tuesday, 1 March 2016 at 01:55:09 UTC, Jeremy DeHaan wrote:

Hello everyone!

I didn't see mention of this yet, but earlier today Google 
released their list of accepted Organizations for this year's 
GSoC. Guess what! The D Foundation made the cut!


Thank you to everyone that worked on the proposals and 
application. This is awesome and you all are awesome!




Now to get started on my own application...


I think it would have been polite and safe to wait for Craig’s 
announcement.


Re: GSoC 2016 - D Foundation was accepted!

2016-02-29 Thread bachmeier via Digitalmars-d-announce

On Tuesday, 1 March 2016 at 01:55:09 UTC, Jeremy DeHaan wrote:

Hello everyone!

I didn't see mention of this yet, but earlier today Google 
released their list of accepted Organizations for this year's 
GSoC. Guess what! The D Foundation made the cut!


Thank you to everyone that worked on the proposals and 
application. This is awesome and you all are awesome!




Now to get started on my own application...


Particularly Craig Dillabaugh, who pushed and pushed to get this 
done.


GSoC 2016 - D Foundation was accepted!

2016-02-29 Thread Jeremy DeHaan via Digitalmars-d-announce

Hello everyone!

I didn't see mention of this yet, but earlier today Google 
released their list of accepted Organizations for this year's 
GSoC. Guess what! The D Foundation made the cut!


Thank you to everyone that worked on the proposals and 
application. This is awesome and you all are awesome!




Now to get started on my own application...


Re: I guess this is good GSOC 2016 news?

2016-02-29 Thread Rikki Cattermole via Digitalmars-d

On 01/03/16 10:22 AM, Jonas Drewsen wrote:

https://summerofcode.withgoogle.com/organizations/?sp-category=languages



Oh yeah, congrats to all who help get it there this year!


Re: I guess this is good GSOC 2016 news?

2016-02-29 Thread Paul O'Neil via Digitalmars-d
On 02/29/2016 04:22 PM, Jonas Drewsen wrote:
> https://summerofcode.withgoogle.com/organizations/?sp-category=languages
> 

>From there, clicking on the "D Foundation" block and then "Learn More"
brings you to a more detailed page.  On that new page, clicking the "IRC
Channel" link brings the user to the wiki...  Other organizations have
the same problem, though.

-- 
Paul O'Neil
Github / IRC: todayman


Re: I guess this is good GSOC 2016 news?

2016-02-29 Thread Wyatt via Digitalmars-d

On Monday, 29 February 2016 at 21:22:44 UTC, Jonas Drewsen wrote:

https://summerofcode.withgoogle.com/organizations/?sp-category=languages


Yes, that IS great news!  Though it doesn't seem to say how many 
slots were given?  Craig, any word?


-Wyatt


I guess this is good GSOC 2016 news?

2016-02-29 Thread Jonas Drewsen via Digitalmars-d

https://summerofcode.withgoogle.com/organizations/?sp-category=languages



Re: GSoC 2016 announced - time to put things in motion!

2015-10-16 Thread Andrei Alexandrescu via Digitalmars-d

On 10/15/15 6:01 PM, CraigDillabaugh wrote:

On Thursday, 15 October 2015 at 09:01:54 UTC, Andrei Alexandrescu wrote:

Hi folks, I recall we've had good pent-up work accumulating for GSoC
2016 and there was a lot of initiative from Craig Dillabaugh and
others. Here it is!

http://g.co/gsoc


Andrei


I will try and get the GSOC 2016 Idea's page up in the next few weeks.
It will likely look a lot like the 2015 page.  Then I will start
harassing you all for ideas.


Thank you! -- Andrei



GSoC 2016 announced - time to put things in motion!

2015-10-15 Thread Andrei Alexandrescu via Digitalmars-d
Hi folks, I recall we've had good pent-up work accumulating for GSoC 
2016 and there was a lot of initiative from Craig Dillabaugh and others. 
Here it is!


http://g.co/gsoc


Andrei


Re: GSoC 2016 announced - time to put things in motion!

2015-10-15 Thread CraigDillabaugh via Digitalmars-d
On Thursday, 15 October 2015 at 09:01:54 UTC, Andrei Alexandrescu 
wrote:
Hi folks, I recall we've had good pent-up work accumulating for 
GSoC 2016 and there was a lot of initiative from Craig 
Dillabaugh and others. Here it is!


http://g.co/gsoc


Andrei


I will try and get the GSOC 2016 Idea's page up in the next few 
weeks.  It will likely look a lot like the 2015 page.  Then I 
will start harassing you all for ideas.