diff --git a/contrib/githwxi/BOOTJS1/Makefile_xjsemit b/contrib/githwxi/BOOTJS1/Makefile_xjsemit index d79a633a2..5dd63a6bb 100644 --- a/contrib/githwxi/BOOTJS1/Makefile_xjsemit +++ b/contrib/githwxi/BOOTJS1/Makefile_xjsemit @@ -316,6 +316,11 @@ parsing_basics_dats parsing_basics_dats: \ $(SRCGEN2)/DATS/parsing_basics.dats; \ $(NODE) --stack-size=4096 $(XATS2JS_JSEMIT00) $< > BUILD/$@_out.js +boot_dats:: \ +parsing_tokbuf_dats +parsing_tokbuf_dats: \ +$(SRCGEN2)/DATS/parsing_tokbuf.dats; \ +$(NODE) --stack-size=4096 $(XATS2JS_JSEMIT00) $< > BUILD/$@_out.js ######################################################################## ######################################################################## clean:: ; rm -f *~ @@ -360,6 +365,7 @@ cleanall:: ; rm -f BUILD/dynexp0_dats_out.js cleanall:: ; rm -f BUILD/dynexp0_print0_dats_out.js cleanall:: ; rm -f BUILD/parsing_dats_out.js cleanall:: ; rm -f BUILD/parsing_basics_dats_out.js +cleanall:: ; rm -f BUILD/parsing_tokbuf_dats_out.js ######################################################################## ######################################################################## SRCGEN2_XSHARED=$(SRCGEN2)/xats2js/srcgenx/xshared/runtime diff --git a/srcgen1/prelude/DATS/VT/arrn000_vt.dats b/srcgen1/prelude/DATS/VT/arrn000_vt.dats index 8c3534f2e..c27cab3f3 100644 --- a/srcgen1/prelude/DATS/VT/arrn000_vt.dats +++ b/srcgen1/prelude/DATS/VT/arrn000_vt.dats @@ -3,21 +3,19 @@ HX: for pure C-arrays *) (* ****** ****** *) -(* -#staload -"./..\ -/SATS/arrn000.sats" -#staload -"./..\ -/SATS/VT/arrn000_vt.sats" -*) -(* ****** ****** *) // #staload UN = "srcgen1\ /prelude/SATS/unsafex.sats" // (* ****** ****** *) +(* +#staload +"./../../SATS/arrn000.sats" +#staload +"./../../SATS/VT/arrn000_vt.sats" +*) +(* ****** ****** *) // (* **HX: 0-dimensional diff --git a/srcgen1/prelude/DATS/VT/arrn001_vt.dats b/srcgen1/prelude/DATS/VT/arrn001_vt.dats index 2e0d2ad6a..56a580644 100644 --- a/srcgen1/prelude/DATS/VT/arrn001_vt.dats +++ b/srcgen1/prelude/DATS/VT/arrn001_vt.dats @@ -4,26 +4,24 @@ HX: for arrays with size Wed Dec 20 23:11:33 EST 2023 *) (* ****** ****** *) -(* -#staload -"./..\ -/SATS/arrn000.sats" -#staload -"./..\ -/SATS/VT/arrn000_vt.sats" -*) -(* ****** ****** *) // #staload UN = "srcgen1\ /prelude/SATS/unsafex.sats" // (* ****** ****** *) +(* +#staload +"./../../SATS/arrn000.sats" +#staload +"./../../SATS/VT/arrn000_vt.sats" +*) +(* ****** ****** *) // local // datavwtp -a1psz_dt // +a1psz_ // (a:vwtp,int(*sz*)) = {n:int} A1PSZ of @@ -31,7 +29,7 @@ A1PSZ of // #absimpl a1psz_vt_i0_x0 -( a:vt, n:i0 ) = a1psz_dt(a, n) +( a:vt, n:i0 ) = a1psz_(a, n) // (* ****** ****** *) in(*local*) diff --git a/srcgen2/DATS/fperr30_dynexp.dats b/srcgen2/DATS/fperr30_dynexp.dats index 112cb6dd9..80454062c 100644 --- a/srcgen2/DATS/fperr30_dynexp.dats +++ b/srcgen2/DATS/fperr30_dynexp.dats @@ -375,9 +375,15 @@ prints("D3Eannot(", "...", ")") // |D3Et2pck (d3e1, t2p2) => +let +val +t2p1 = d3e1.styp() +in//let ( print("D3Et2pck(") ; auxdexp(out, d3e1) +; print(";"); print(t2p1) ; print(";"); prints(t2p2, ")")) +end//let//end-of-[D3Et2pck(...)] // (* ****** ****** *) // diff --git a/srcgen2/DATS/parsing_tokbuf.dats b/srcgen2/DATS/parsing_tokbuf.dats index bd447f4f7..74d79079e 100644 --- a/srcgen2/DATS/parsing_tokbuf.dats +++ b/srcgen2/DATS/parsing_tokbuf.dats @@ -41,10 +41,12 @@ ATS_PACKNAME "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) (* ****** ****** *) +// #include "./../HATS/xatsopt_sats.hats" #include "./../HATS/xatsopt_dats.hats" +// (* ****** ****** *) (* ****** ****** *) #staload "./../SATS/parsing.sats" @@ -54,7 +56,7 @@ ATS_PACKNAME local // datavwtp -tkbf0 = +tkbf0_ = | {n:pos} {i:nat} @@ -64,7 +66,7 @@ TKBF0 of , sint(i) (*idx*) ) // #absimpl tmark_type = sint -#absimpl tkbf0_vtbx = tkbf0 +#absimpl tkbf0_vtbx = tkbf0_ // (* ****** ****** *) @@ -79,8 +81,9 @@ case+ buf of | ~ TKBF0 ( A0 -, n0 -, i0) => a1ptr_free(A0, n0) +, n0, i0) => +( + a1ptr_free(A0, n0)) ) (*case*)//end-of(tokbuf_free) // (* ****** ****** *) diff --git a/srcgen2/HATS/xatsopt_sats.hats b/srcgen2/HATS/xatsopt_sats.hats index d6a99062a..00e0df13f 100644 --- a/srcgen2/HATS/xatsopt_sats.hats +++ b/srcgen2/HATS/xatsopt_sats.hats @@ -77,12 +77,14 @@ For ATS3/XATSOPT /prelude/SATS/VT/strm001_vt.sats" // (* ****** ****** *) +// #staload "srcgen1\ /prelude/SATS/VT/arrn000_vt.sats" #staload "srcgen1\ /prelude/SATS/VT/arrn001_vt.sats" +// (* ****** ****** *) (* ****** ****** *) // diff --git a/srcgen2/SATS/dynexp0.sats b/srcgen2/SATS/dynexp0.sats index 3df52c0b8..f974a2720 100644 --- a/srcgen2/SATS/dynexp0.sats +++ b/srcgen2/SATS/dynexp0.sats @@ -34,22 +34,28 @@ Authoremail: gmhwxiATgmailDOTcom *) // (* ****** ****** *) -#include -"./../HATS/xatsopt_sats.hats" (* ****** ****** *) #define ATS_PACKNAME "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) +(* ****** ****** *) +#include +"./../HATS/xatsopt_sats.hats" +(* ****** ****** *) +(* ****** ****** *) // #staload LAB = "./xlabel0.sats" -#staload -LOC = "./locinfo.sats" // #typedef lab_t = $LAB.lab_t #typedef label = $LAB.label // +(* ****** ****** *) +// +#staload +LOC = "./locinfo.sats" +// #typedef loc_t = $LOC.loc_t #typedef loctn = $LOC.loctn #typedef lcsrc = $LOC.lcsrc diff --git a/srcgen2/SATS/filpath.sats b/srcgen2/SATS/filpath.sats index a8e9a4894..50d2f2114 100644 --- a/srcgen2/SATS/filpath.sats +++ b/srcgen2/SATS/filpath.sats @@ -34,14 +34,24 @@ Authoremail: gmhwxiATgmailDOTcom *) // (* ****** ****** *) -#include -"./../HATS/xatsopt_sats.hats" (* ****** ****** *) #define ATS_PACKNAME "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) -#staload "./../SATS/xsymbol.sats" +(* ****** ****** *) +// +#staload +SYM = "./xsymbol.sats" +#typedef sym_t = $SYM.sym_t +// +(* ****** ****** *) +(* ****** ****** *) +// +#include +"./../HATS/xatsopt_sats.hats" +// +(* ****** ****** *) (* ****** ****** *) // fun theDirSep_get(): char @@ -124,7 +134,7 @@ fpath_get_fnm1 #symload fnm1 with fpath_get_fnm1 fun fpath_get_fnm2 -(fpx: fpath): symbl // fnorm +(fpx: fpath): sym_t // fnorm #symload fnm2 with fpath_get_fnm2 (* ****** ****** *) // diff --git a/srcgen2/SATS/parsing.sats b/srcgen2/SATS/parsing.sats index aee97323e..f1b66a9a7 100644 --- a/srcgen2/SATS/parsing.sats +++ b/srcgen2/SATS/parsing.sats @@ -25,6 +25,7 @@ ** 02110-1301, USA. *) +(* ****** ****** *) (* ****** ****** *) // (* @@ -34,14 +35,12 @@ Authoremail: gmhwxiATgmailDOTcom *) // (* ****** ****** *) -#include -"./..\ -/HATS/xatsopt_sats.hats" (* ****** ****** *) #define ATS_PACKNAME // namespace "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) +(* ****** ****** *) // #staload LEX = "./lexing0.sats" diff --git a/srcgen2/SATS/xatsmtp.sats b/srcgen2/SATS/xatsmtp.sats index 5d3a29db1..9a6a714e1 100644 --- a/srcgen2/SATS/xatsmtp.sats +++ b/srcgen2/SATS/xatsmtp.sats @@ -44,16 +44,17 @@ of meta-programming in ATS3 *) (* ****** ****** *) (* ****** ****** *) -#include -"./../HATS/xatsopt_sats.hats" +#staload "./staexp2.sats" +#staload "./dynexp2.sats" +(* ****** ****** *) (* ****** ****** *) #define ATS_PACKNAME "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) (* ****** ****** *) -#staload "./../SATS/staexp2.sats" -#staload "./../SATS/dynexp2.sats" +#include +"./../HATS/xatsopt_sats.hats" (* ****** ****** *) (* ****** ****** *) // diff --git a/srcgen2/SATS/xatsopt.sats b/srcgen2/SATS/xatsopt.sats index 7d24f57b6..1294a530f 100644 --- a/srcgen2/SATS/xatsopt.sats +++ b/srcgen2/SATS/xatsopt.sats @@ -36,30 +36,34 @@ Authoremail: gmhwxiATgmailDOTcom *) // (* ****** ****** *) -#include -"./../HATS/xatsopt_sats.hats" -(* ****** ****** *) -#define -ATS_PACKNAME -"ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) #staload -S0E = "./../SATS/staexp0.sats" +S0E = "./staexp0.sats" #staload -S1E = "./../SATS/staexp1.sats" +S1E = "./staexp1.sats" #staload -S2E = "./../SATS/staexp2.sats" +S2E = "./staexp2.sats" #staload -T2P = "./../SATS/statyp2.sats" +T2P = "./statyp2.sats" (* ****** ****** *) #staload -D0E = "./../SATS/dynexp0.sats" +D0E = "./dynexp0.sats" #staload -D1E = "./../SATS/dynexp1.sats" +D1E = "./dynexp1.sats" #staload -D2E = "./../SATS/dynexp2.sats" +D2E = "./dynexp2.sats" #staload -D3E = "./../SATS/dynexp3.sats" +D3E = "./dynexp3.sats" +(* ****** ****** *) +(* ****** ****** *) +#include +"./../HATS/xatsopt_sats.hats" +(* ****** ****** *) +(* ****** ****** *) +#define +ATS_PACKNAME +"ATS3.XANADU.xatsopt-20220500" +(* ****** ****** *) (* ****** ****** *) // #absvwtp diff --git a/srcgen2/SATS/xbasics.sats b/srcgen2/SATS/xbasics.sats index 0f4026da2..d19da148c 100644 --- a/srcgen2/SATS/xbasics.sats +++ b/srcgen2/SATS/xbasics.sats @@ -34,19 +34,24 @@ Authoremail: gmhwxiATgmailDOTcom *) // (* ****** ****** *) +(* ****** ****** *) #include "./../HATS/xatsopt_sats.hats" (* ****** ****** *) +(* ****** ****** *) #define ATS_PACKNAME "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) +(* ****** ****** *) +// (* #typedef int0 = sint #typedef btf0 = bool #typedef chr0 = char #typedef str0 = strn *) +// (* ****** ****** *) #symload & with land of 0 #symload << with lsln of 0 diff --git a/srcgen2/SATS/xlabel0.sats b/srcgen2/SATS/xlabel0.sats index e7152f8c4..a249e8fd1 100644 --- a/srcgen2/SATS/xlabel0.sats +++ b/srcgen2/SATS/xlabel0.sats @@ -25,6 +25,7 @@ ** 02110-1301, USA. *) +(* ****** ****** *) (* ****** ****** *) // (* @@ -34,21 +35,27 @@ Authoremail: gmhwxiATgmailDOTcom *) // (* ****** ****** *) -#include -"./../HATS/xatsopt_sats.hats" (* ****** ****** *) #define ATS_PACKNAME "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) - +(* ****** ****** *) +#include +"./../HATS/xatsopt_sats.hats" +(* ****** ****** *) +(* ****** ****** *) +// #staload SYM = "./xsymbol.sats" - +#typedef sym_t = $SYM.sym_t +// +(* ****** ****** *) (* ****** ****** *) datatype label = -| LABint of sint -| LABsym of $SYM.sym_t +| LABint of sint // .int +| LABsym of sym_t // .sym +// end of [datatype(label)] (* ****** ****** *) #typedef lab_t = label (* ****** ****** *) @@ -57,7 +64,9 @@ datatype label = #typedef label = label_tbox *) (* ****** ****** *) -fun label_none(): label +(* ****** ****** *) +fun label_none(): ( label ) +(* ****** ****** *) (* ****** ****** *) // (* @@ -68,6 +77,7 @@ fun label_cmp(label, label): sint // (* ****** ****** *) +(* ****** ****** *) // fun label_fprint(FILR, label): void diff --git a/srcgen2/SATS/xsymbol.sats b/srcgen2/SATS/xsymbol.sats index b8b1960fc..df35a3a6e 100644 --- a/srcgen2/SATS/xsymbol.sats +++ b/srcgen2/SATS/xsymbol.sats @@ -34,15 +34,22 @@ Authoremail: gmhwxiATgmailDOTcom *) // (* ****** ****** *) +(* ****** ****** *) +// +#staload +TMP = "./xstamp0.sats" +#typedef stamp = $TMP.stamp +// +(* ****** ****** *) +(* ****** ****** *) #include "./../HATS/xatsopt_sats.hats" (* ****** ****** *) +(* ****** ****** *) #define ATS_PACKNAME "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) -#staload -TMP = "./../SATS/xstamp0.sats" (* ****** ****** *) // #abstbox symbl_tbox // ptr @@ -51,8 +58,6 @@ TMP = "./../SATS/xstamp0.sats" #typedef sym_t = symbl_tbox // (* ****** ****** *) -#typedef stamp = $TMP.stamp -(* ****** ****** *) // val the_symbl_nil: symbl//symbl("") diff --git a/srcgen2/SATS/xsymmap.sats b/srcgen2/SATS/xsymmap.sats index 265107e75..b81885c7c 100644 --- a/srcgen2/SATS/xsymmap.sats +++ b/srcgen2/SATS/xsymmap.sats @@ -36,19 +36,22 @@ Authoremail: gmhwxiATgmailDOTcom *) // (* ****** ****** *) +(* ****** ****** *) +// +#staload +SYM = "./xsymbol.sats" +#typedef key = $SYM.sym_t +// +(* ****** ****** *) +(* ****** ****** *) #include "./../HATS/xatsopt_sats.hats" (* ****** ****** *) +(* ****** ****** *) #define ATS_PACKNAME "ATS3.XANADU.xatsopt-20220500" (* ****** ****** *) -// -#staload -SYM = "./xsymbol.sats" -// -#typedef key = $SYM.sym_t -// (* ****** ****** *) // #abstbox