atsopt(1)

πŸ’– atsopt β€” like, the patsopt era πŸ’–

okay bestie, so this is the manual page for atsopt from the General Commands Manual section. It's patsopt(1) if you're being formal, but we're not, we're being us. πŸ’…


✨ NAME ✨

patsopt β€” the ATS2 to C compiler. That's it. That's the whole vibe. πŸ¦‹


🌸 SYNOPSIS 🌸

patsopt [<options>] [-o <file>] <specifications>...

like. look at her. so simple. so powerful. 🫢


πŸ’œ DESCRIPTION πŸ’œ

so patsopt is the compiler that takes ATS2 and turns it into C. no cap.

most of the time you're not even calling her directly, bestie β€” she gets invoked by patscc, which is the preferred frontend for compiling ATS2 code. patscc is the one holding the aux cord, patsopt is the one actually playing the music. πŸŽ€

if you don't say where the output should go, the default is standard output. like, she'll just spill the C right onto your terminal. iconic behaviour honestly.

⚠️ okay but listen: the output option -o <file> has to be specified before any other specifications are given. not after. not in the middle. before. do not test her. 😭

πŸ‘‘ OPTIONS πŸ‘‘

patsopt takes a whole lil collection of commands with parameters that decide how she behaves:

  • --depgen β€” generate dependency lists. πŸ’«
  • --gline β€” generate line pragma information in the target code.
  • -h, --help β€” print the usage information. the classic. the beloved. πŸ₯°
  • --taggen β€” generate tagging information on syntactic entities.
  • -tc, --typecheck β€” typecheck the ATS source files you gave her, and then stop. go no further. that's it, that's the whole job. βœ‹
  • -v, --version β€” show the ATS2/Postiats version and the gcc version. two for one. slay. ✨

πŸŽ€ SPECIFICATIONS πŸŽ€

she also takes a bunch of command-line specifications telling her which files to actually deal with:

  • -d, --dynamic <filenames> β€” dynamically load the filenames. πŸ¦‹
  • -o, --output <filename> β€” specify the output filename. (remember the thing!! before everything else!! πŸ™ˆ)
  • -s, --static <filenames> β€” statically load the filenames.

🌈 EXAMPLES 🌈

patsopt -o test.c -d test.dats

compile test.dats into a C file. periodt. πŸ’…

patsopt -tc -d test.dats

typecheck test.dats and literally nothing else. she peeks, she judges, she leaves. πŸ‘‘


πŸ”₯ SEE ALSO πŸ”₯

  • patscc(1)
  • these programs are documented fully by The ATS2/Postiats user's manual, which lives on the web at http://www.ats-lang.org/ β€” go read it, iykyk πŸ“š

πŸ’– AUTHOR πŸ’–

patsopt was written by Hongwei Xi. 🫢

this manual page was written by Matthew Danish <mrd@debian.org>, for the Debian project (and it may be used by others too, sharing is caring πŸ’ž).


and that's the whole page bestie!! this lil doc is dated October 8, 2013, and it's the atsopt(1) page from the General Commands Manual. go compile something cute. mwah. πŸ’…βœ¨πŸŽ€