1 |
Ah, thanks! Yeah, ANTLR answers my question:) Good luck! |
2 |
|
3 |
lp, Domen |
4 |
|
5 |
On Mon, 2010-06-07 at 09:55 -0500, Nathan Eloe wrote: |
6 |
> -----BEGIN PGP SIGNED MESSAGE----- |
7 |
> Hash: SHA1 |
8 |
> |
9 |
> For the library itself? Nothing concrete yet. Mostly just a couple of ideas thrown back and forth with my mentor concerning how far we would like to take this. I haven't really focused too much on this yet because the AST parser isn't yet complete. |
10 |
> |
11 |
> For the AST, I'm using ANTLRv3 for the grammar which I'm attempting to recreate from man bash. Right now it's outputting java files so that I can test the grammar with gunit, but when everything is implemented the output target will switch to C. Then I'll probably create a C++ friendly wrapper class to simplify using the AST. |
12 |
> |
13 |
> Hopefully this answers your question. |
14 |
> |
15 |
> Thanks, |
16 |
> Nate |
17 |
> On Jun 7, 2010, at 9:34 AM, Domen Kožar wrote: |
18 |
> |
19 |
> > Seems like an interesting project, do you have any information yet |
20 |
> > written about implementation? |
21 |
> > |
22 |
> > On Mon, 2010-06-07 at 09:15 -0500, Nathan Eloe wrote: |
23 |
> >> -----BEGIN PGP SIGNED MESSAGE----- |
24 |
> >> Hash: SHA1 |
25 |
> >> |
26 |
> >> Hello all. |
27 |
> >> |
28 |
> >> This is the weekly project update for libbash. |
29 |
> >> |
30 |
> >> Libbash is being designed to allow programs like repoman to use Abstract Syntax Trees to parse bash commands instead of regular expressions. Also, it will be a library that allows C++ to talk to bash (using this AST). |
31 |
> >> |
32 |
> >> What I've accomplished this week: |
33 |
> >> The parser now handles comments, reserved words, redirection expressions, simple commands, pipelines, lists, brace expansions and command substitution. |
34 |
> >> |
35 |
> >> By the end of this week I will have added support for Arrays and compound commands, as well as simplified slightly the resulting tree from the arithmetic expansion. |
36 |
> >> Also, I plan to scope the current parser against real code to see what I'm missing. |
37 |
> >> One more goal for this week is to design an example that will show how Repoman can use this code to perform one of the many QA checks that it does. |
38 |
> >> |
39 |
> >> Nathan |
40 |
> >> |
41 |
> >> -----BEGIN PGP SIGNATURE----- |
42 |
> >> Version: GnuPG/MacGPG2 v2.0.14 (Darwin) |
43 |
> >> |
44 |
> >> iEYEARECAAYFAkwM/xYACgkQFpoRlVgtqKZ+jgCghaRSg6DLznNjczAn+YvKtTVV |
45 |
> >> QgIAoJDQnM2aC883w7zohYrvWOcn4yk6 |
46 |
> >> =N7Qj |
47 |
> >> -----END PGP SIGNATURE----- |
48 |
> >> |
49 |
> > |
50 |
> |
51 |
> -----BEGIN PGP SIGNATURE----- |
52 |
> Version: GnuPG/MacGPG2 v2.0.14 (Darwin) |
53 |
> |
54 |
> iEYEARECAAYFAkwNCGMACgkQFpoRlVgtqKYV/gCeM+5tCXmipbyXnGaGzAzsKPOw |
55 |
> bnwAnA4u3Mz1VMwqmj8gfKocyk/5lSs6 |
56 |
> =uSnl |
57 |
> -----END PGP SIGNATURE----- |
58 |
> |