remove redundant dsls/pdm and dsls/fdm

This commit is contained in:
John Kerl 2015-10-09 19:19:49 -04:00
parent 9f800e3391
commit 96b23b80e9
9 changed files with 9 additions and 98 deletions

2
.gitignore vendored
View file

@ -35,8 +35,6 @@ c/dsls/filter_dsl_lexer.h
c/dsls/filter_dsl_parse.c
c/dsls/filter_dsl_parse.h
c/dsls/filter_dsl_parse.out
c/dsls/pdm
c/dsls/fdm
c/reg_test/output
c/output/out
tags

View file

@ -1,7 +1,7 @@
AM_CPPFLAGS= -I${srcdir}
AM_CFLAGS= -std=gnu99
noinst_PROGRAMS= lemon pdm fdm
noinst_PROGRAMS= lemon
lemon_SOURCES= lemon.c
noinst_LTLIBRARIES= libfdsl.la libpdsl.la
@ -17,15 +17,6 @@ EXTRA_DIST= \
put_dsl_lexer.l \
put_dsl_parse.y
# The fdm and pdm mains are handy for isolated inspection when doing
# development/debugging on Miller DSLs.
fdm_SOURCES= filter_dsl_parse.c filter_dsl_parse.h filter_dsl_lexer.c filter_dsl_lexer.h filter_dsl_wrapper.c filter_dsl_wrapper.h
fdm_LDADD= ../containers/libcontainers.la ../lib/libmlr.la libfdsl.la -lm
fdm_CFLAGS= -D __FILTER_DSL_MAIN__ ${AM_CFLAGS}
pdm_SOURCES= put_dsl_parse.c put_dsl_parse.h put_dsl_lexer.c put_dsl_lexer.h put_dsl_wrapper.c put_dsl_wrapper.h
pdm_LDADD= ../containers/libcontainers.la ../lib/libmlr.la libpdsl.la -lm
pdm_CFLAGS= -D __PUT_DSL_MAIN__ ${AM_CFLAGS}
put_dsl_wrapper.c: put_dsl_lexer.h
put_dsl_parse.h: put_dsl_parse.c
put_dsl_parse.c: put_dsl_parse.y lempar.c lemon

View file

@ -1,13 +1,12 @@
top: pdm fdm
CC=gcc
CFLAGS=-I.. -O3
#CFLAGS=-I.. -g
# ----------------------------------------------------------------
pdm: put_dsl_parse.o put_dsl_lexer.o put_dsl_wrapper.o ../containers/mlr_dsl_ast.c ../containers/mlr_dsl_ast.h
$(CC) $(CFLAGS) -std=gnu99 -D __PUT_DSL_MAIN__ ../containers/sllv.c ../containers/slls.c ../lib/mlrutil.c ../containers/lrec.c ../containers/header_keeper.c put_dsl_parse.c put_dsl_lexer.c ../containers/mlr_dsl_ast.c put_dsl_wrapper.c -o pdm -lm
top: filter_dsl_lexer.o filter_dsl_parse.o filter_dsl_wrapper.o put_dsl_lexer.o put_dsl_parse.o put_dsl_wrapper.o
# ----------------------------------------------------------------
put_dsl_wrapper.o: put_dsl_wrapper.c put_dsl_wrapper.h
$(CC) -Wall $(CFLAGS) -c -std=gnu99 put_dsl_wrapper.c
@ -26,7 +25,6 @@ put_dsl_parse.c put_dsl_parse.h: put_dsl_parse.y lemon
put_dsl_parse.c.tmp > put_dsl_parse.c
rm -f put_dsl_parse.c.tmp
# muldef:
# ParseTrace
# ParseTokenName
@ -41,9 +39,6 @@ put_dsl_lexer.c put_dsl_lexer.h: put_dsl_lexer.l
flex --prefix=put_dsl_lexer_ --outfile=put_dsl_lexer.c --header-file=put_dsl_lexer.h put_dsl_lexer.l
# ----------------------------------------------------------------
fdm: filter_dsl_parse.o filter_dsl_lexer.o filter_dsl_wrapper.o ../containers/mlr_dsl_ast.c ../containers/mlr_dsl_ast.h
$(CC) $(CFLAGS) -std=gnu99 -D __FILTER_DSL_MAIN__ ../containers/sllv.c ../containers/slls.c ../lib/mlrutil.c ../containers/lrec.c ../containers/header_keeper.c filter_dsl_parse.c filter_dsl_lexer.c ..//containers/mlr_dsl_ast.c filter_dsl_wrapper.c -o fdm -lm
filter_dsl_wrapper.o: filter_dsl_wrapper.c filter_dsl_wrapper.h
$(CC) -Wall $(CFLAGS) -c -std=gnu99 filter_dsl_wrapper.c
@ -73,7 +68,6 @@ lemon: lemon.c lempar.c
# ----------------------------------------------------------------
clean:
rm -f pdm fdm
rm -f *.o
rm -f put_dsl_parse.c put_dsl_parse.h put_dsl_parse.out
rm -f put_dsl_lexer.c put_dsl_lexer.h

View file

@ -60,34 +60,3 @@ mlr_dsl_ast_node_holder_t* filter_dsl_parse(char* string) {
return past;
}
// ----------------------------------------------------------------
#ifdef __FILTER_DSL_MAIN__
// This is handy for isolated inspection when doing development/debugging on
// Miller DSLs.
static int main_single(char* string) {
mlr_dsl_ast_node_holder_t* past = filter_dsl_parse(string);
if (past == NULL) {
printf("filter_dsl main syntax error!\n");
return 1;
} else {
mlr_dsl_ast_node_print(past->proot);
printf("filter_dsl main parse OK\n");
return 0;
}
}
int main(int argc, char** argv) {
int shellrc = 0;
if (argc == 1) {
printf("> ");
shellrc |= main_single(NULL);
} else {
for (int argi = 1; argi < argc; argi++) {
shellrc |= main_single(argv[argi]);
}
}
return shellrc;
}
#endif // __FILTER_DSL_MAIN__

View file

@ -1,7 +0,0 @@
echo; ./pdm '$y=rand()'
echo; ./pdm '$y=2*sum($a)'
echo; ./pdm '$y=2*sum($a,$b)'
echo; ./pdm '$y=2*sum($a,$b,$c)'
echo; ./pdm '$x=3*$y**4/$z'
echo; ./pdm '$y=2*log($x)'
echo; ./pdm '$y=2*log($x);$z=$y**2'

View file

@ -63,40 +63,6 @@ sllv_t* put_dsl_parse(char* string) {
return pasts;
}
// ----------------------------------------------------------------
#ifdef __PUT_DSL_MAIN__
// This is handy for isolated inspection when doing development/debugging on
// Miller DSLs.
static int main_single(char* string) {
sllv_t* pasts = put_dsl_parse(string);
if (pasts == NULL || pasts->length == 0) {
printf("put_dsl main syntax error!\n");
return 1;
} else {
printf("#AST = %d\n", pasts->length);
for (sllve_t* pe = pasts->phead; pe != NULL; pe = pe->pnext) {
mlr_dsl_ast_node_print(pe->pvdata);
}
printf("put_dsl main parse OK\n");
return 0;
}
}
int main(int argc, char** argv) {
int shellrc = 0;
if (argc == 1) {
printf("> ");
shellrc |= main_single(NULL);
} else {
for (int argi = 1; argi < argc; argi++) {
shellrc |= main_single(argv[argi]);
}
}
return shellrc;
}
#endif // __PUT_DSL_MAIN__
// ----------------------------------------------------------------
void yytestcase(int ignored) {
}

View file

@ -112,6 +112,9 @@ static mapper_t* mapper_filter_parse_cli(int* pargi, int argc, char** argv) {
mapper_filter_usage(stderr, argv[0], verb);
return NULL;
}
// For just dev-testing the parser, you can do
// mlr filter -v 'expression goes here' /dev/null
if (print_asts) {
mlr_dsl_ast_node_print(past->proot);
}

View file

@ -146,6 +146,9 @@ static mapper_t* mapper_put_parse_cli(int* pargi, int argc, char** argv) {
mapper_put_usage(stderr, argv[0], verb);
return NULL;
}
// For just dev-testing the parser, you can do
// mlr put -v 'expression goes here' /dev/null
if (print_asts) {
for (sllve_t* pe = pasts->phead; pe != NULL; pe = pe->pnext)
mlr_dsl_ast_node_print(pe->pvdata);

View file

@ -6,12 +6,6 @@ $ mlr --opprint put '$y = sub($x, "e.*l", "y123y")' ./reg_test/input/sub.dat
================================================================
TOP OF LIST
----------------------------------------------------------------
FLIGHT:
* +/- of then-chaining
* whack pdm/fdm w/ cmts
----------------------------------------------------------------
MAJOR: regex