Make progress in 1989/westley - alt code now main

The code that was the alt code now works entirely with gcc! The ver2 and
ver3 do not yet work with clang but the other versions do so it seems
appropriate to make this the main version and remove the alt code and
alt scripts.

I will continue to work on this in between the README.md files but this
feels like great progress and as it was all I felt up to at this time it
is definitely worth the effort and time.
This commit is contained in:
Cody Boone Ferguson committed 2023-10-28 05:32:19 -07:00
1 parent f04b9b695d
commit eb9e69fde6
6 files changed
+40 -120

No files matched your search

+5 -26
View File
@@ -60,7 +60,7 @@ ARCH=
# Defines that are needed to compile
#
CDEFINE= -Dtrgpune=putchar -Dpune=char -Dvag=int
CDEFINE= -Dtrgpune=putchar -Dpune=char -Dvag=int -Dznva=main
# Include files that are needed to compile
#
@@ -115,8 +115,8 @@ OBJ= ${PROG}.o
DATA=
TARGET= ${PROG}
#
ALT_OBJ= ${PROG}.alt.o
ALT_TARGET= ${PROG}.alt
ALT_OBJ=
ALT_TARGET=
#################
@@ -140,9 +140,6 @@ ${PROG}: ${PROG}.c
alt: data ${ALT_TARGET}
@${TRUE}
${ALT_TARGET}: ${PROG}.alt.c
${CC} ${CFLAGS} -Dznva=main $< -o $@ ${LDFLAGS}
ver0: ${PROG}
-./${PROG} < westley.c > ver0.c
-${CC} ${CFLAGS} ver0.c -o $@ ${LDFLAGS}
@@ -155,30 +152,12 @@ ver1: ${PROG}
ver2: ${PROG}
-./${PROG} 1 2 < westley.c > ver2.c
@echo "** NOTE: this version will not compile with clang **"
-${CC} ${CFLAGS} ver2.c -o $@ ${LDFLAGS}
-${CC} ${CFLAGS} -Uznva ver2.c -o $@ ${LDFLAGS}
ver3: ${PROG}
-./${PROG} 1 2 3 < westley.c > ver3.c
@echo "** NOTE: this version will not compile with clang **"
-${CC} ${CFLAGS} ver3.c -o $@ ${LDFLAGS}
alt.ver0: ${PROG}.alt
-./${PROG}.alt < westley.alt.c > alt.ver0.c
-${CC} ${CFLAGS} -Dznva=main alt.ver0.c -o $@ ${LDFLAGS}
alt.ver1: ${PROG}.alt
-./${PROG}.alt 1 < westley.alt.c > alt.ver1.c
-${CC} ${CFLAGS} -Dznva=main alt.ver1.c -o $@ ${LDFLAGS}
alt.ver2: ${PROG}.alt
-./${PROG}.alt 1 2 < westley.alt.c > alt.ver2.c
@echo "** NOTE: this alt version will not currently compile **"
-${CC} ${CFLAGS} -Dznva=main alt.ver2.c -o $@ ${LDFLAGS}
alt.ver3: ${PROG}.alt
-./${PROG}.alt 1 2 3 < westley.alt.c > alt.ver3.c
@echo "** NOTE: this alt version will not currently compile **"
-${CC} ${CFLAGS} -Dznva=main alt.ver3.c -o $@ ${LDFLAGS}
-${CC} ${CFLAGS} -Uznva ver3.c -o $@ ${LDFLAGS}
# data files
+1 -28
View File
@@ -40,7 +40,7 @@ CC=/opt/local/bin/gcc-mp-12 ./compile.sh
If you wish to delay the script or remove the delay you can do so like:
```sh
DELAY=0 ./compile.sh
DELAY=2 ./compile.sh
```
Finally try:
@@ -52,33 +52,6 @@ Finally try:
./try.sh # demo of some input
```
## Alternate code:
The alternate code allows SOME of the features to work with clang but some of
the code it generates (see [compile.alt.sh](compile.alt.sh) is not compilable
even in gcc let alone clang. Nevertheless the main feature should work and the
same goes for the `alt.ver0` and `alt.ver1`; currently `alt.ver2` and `alt.ver3`
will not compile even with gcc but it is nonetheless generated for when it is
(hopefully) fixed.
### Alternate build:
```sh
make alt
```
### Alternate try:
```sh
./westley.alt
# input some text
# generate alt code versions:
./compile.alt.sh
./try.alt.sh # demo of some input
```
## Judges' remarks:
-26
View File
@@ -1,26 +0,0 @@
/**//*/;)/**/pain(/*//**/tang ,gnat/**//*/,ABBA~,0-0(avnc-0,tang,raeN
,ABBA(niam&&)))2-]--tang-[kri - =raeN(&&0<)/*clerk*/,noon,raeN){(!tang&&
noon!=-1&&(gnat&2)&&((raeN&&( getchar(noon+0)))||(1-raeN&&(trgpune(noon
)))))||tang&&cnva(/*//**/tang ,tang/**|**//*/((||)))0(enupgrt=raeN
(&&tang!(||)))0(rahcteg=raeN( &&1==tang((&&1-^)gnat=raeN(;;;)tang,gnat
,ABBA,0(avnc;)gnat:46+]552&)191+gnat([kri?0>]652%)191+gnat([kri=gnat
(&&)1-^gnat(&&)1& ABBA(!;)raeN,tang,gnat,ABBA(avnz&&0>ABBA{)raeN
,/**/);}cnva(/*//**/tang,gnat,ABBA/**//*/(niam;}1-,78-,611-,321
-,321-,001-,64-,43-,801-,001-,301-,321-,511-,53-,54,44,34,24
,14,04,93,83,73,63,53,43,33,85,75,65,55,45,35,25,15,05,94,84
,74,64,0,0,0,0,0,0,/**/){ABBA='N'==65;(ABBA&&(gnat=trgpune
(0)))||(!ABBA&&(gnat=getchar(0-0)));(--tang&1)&&(gnat='n'<=
gnat&&gnat<='z'||'a'<=gnat&&gnat<='m'||'N'<=gnat&&gnat<='Z'
||'A'<=gnat&&gnat<='M'?(((gnat&/*//**/31/**//*/,21,11,01,9,8
,7,6,5,4,3,2,1,62,52,42,/**/)+12)%26)+(gnat&/*//**/32/**//*/,
22,12,02,91,81,71,61,51,41{=]652[kri};)/*pry*/)+65:gnat);pain
(/*//**\**/tang^tang/**//*/,/* */,~/*//*-*/tang,gnat,ABBA-
0/**//*/(niam&&ABBA||))))tang( rahcteg&&1-1=<enrA(||))tang(
enupgrt&&1==enrA((&&)2&gnat(&& )1-^tang(&&ABBA!(;)85- =tang
(&&)'a\'=gnat(&&)1-==gnat(&&)4 ==ABBA(&&tang!;))))0(enupgrt=
gnat(&&)tang!((||)))0(rahcteg =gnat(&&tang((&&ABBA)1-'A'=!
'Z'=tang(&&ABBA{)enrA/***/);gnat ^-1&&cnva(tang+1,gnat);
pain(ABBA&2/*//*\\**/,tang,gnat ,ABBA/**//*/(avnc/**/);}/*//**/
main(tang/*//*\\**/,gnat ,noon/**//*/(avnz/**/)char**gnat,
**noon/**/;{pain/**\\*/ (tang,gnat,noon,0);}/*//**/
+9 -9
View File
@@ -1,24 +1,24 @@
/**//*/};)/**/main(/*//**/tang ,gnat/**//*/,ABBA~,0-0(avnz;)0-0,tang,raeN
/**//*/};)/**/pain(/*//**/tang ,gnat/**//*/,ABBA~,0-0(avnz;)0-0,tang,raeN
,ABBA(niam&&)))2-]--tang-[kri - =raeN(&&0<)/*clerk*/,noon,raeN){(!tang&&
noon!=-1&&(gnat&2)&&((raeN&&( getchar(noon+0)))||(1-raeN&&(trgpune(noon
)))))||tang&&znva(/*//**/tang ,tang,tang/**|**//*/((||)))0(enupgrt=raeN
)))))||tang&&main(/*//**/tang ,tang,tang/**|**//*/((||)))0(enupgrt=raeN
(&&tang!(||)))0(rahcteg=raeN( &&1==tang((&&1-^)gnat=raeN(;;;)tang,gnat
,ABBA,0(avnz;)gnat:46+]552&)191+gnat([kri?0>]652%)191+gnat([kri=gnat
(&&)1-^gnat(&&)1& ABBA(!;)raeN,tang,gnat,ABBA(avnz&&0>ABBA{)raeN
,/**/);}znva(/*//**/tang,gnat,ABBA/**//*/(niam;}1-,78-,611-,321
,/**/);}main(/*//**/tang,gnat,ABBA/**//*/(niam;}1-,78-,611-,321
-,321-,001-,64-,43-,801-,001-,301-,321-,511-,53-,54,44,34,24
,14,04,93,83,73,63,53,43,33,85,75,65,55,45,35,25,15,05,94,84
,74,64,0,0,0,0,0,0,/**/){ABBA='N'==65;(ABBA&&(gnat=trgpune
,74,64,0,0,0,0,0,0,/**/)char**gnat,**ABBA;{ABBA='N'==65;(ABBA&&(gnat=trgpune
(0)))||(!ABBA&&(gnat=getchar(0-0)));(--tang&1)&&(gnat='n'<=
gnat&&gnat<='z'||'a'<=gnat&&gnat<='m'||'N'<=gnat&&gnat<='Z'
||'A'<=gnat&&gnat<='M'?(((gnat&/*//**/31/**//*/,21,11,01,9,8
,7,6,5,4,3,2,1,62,52,42,/**/)+12)%26)+(gnat&/*//**/32/**//*/,
22,12,02,91,81,71,61,51,41{=]652[kri};)/*pry*/)+65:gnat);main
||'A'<=(int)gnat&&gnat<='M'?((((int)gnat&/*//**/31/**//*/,21,11,01,9,8
,7,6,5,4,3,2,1,62,52,42,/**/)+12)%26)+((int)gnat&/*//**/32/**//*/,
22,12,02,91,81,71,61,51,41{=]652[kri};)/*pry*/)+65:gnat);pain
(/*//**\**/tang^tang/**//*/,/* */,~/*//*-*/tang,gnat,ABBA-
0/**//*/(niam&&ABBA||))))tang( rahcteg&&1-1=<enrA(||))tang(
enupgrt&&1==enrA((&&)2&gnat(&& )1-^tang(&&ABBA!(;)85- =tang
(&&)'a\'=gnat(&&)1-==gnat(&&)4 ==ABBA(&&tang!;))))0(enupgrt=
gnat(&&)tang!((||)))0(rahcteg =gnat(&&tang((&&ABBA;;)1-'A'=!
'Z'=tang(&&ABBA{)enrA/***/);gnat ^-1&&znva(tang+1,gnat,1+gnat);
main(ABBA&2/*//*\\**/,tang,gnat ,ABBA/**//*/(avnz/**/);}/*//**/
'Z'=tang(&&ABBA{)enrA/***/);(int)gnat ^-1&&znva(tang+1,gnat,1+gnat);
pain((int)ABBA&2/*//*\\**/,tang,gnat ,ABBA/**//*/(avnz/**/);}/*//**/