SHILKA(1)

πŸ“¦ version 0.996, in nixos 26.05, nixpkgs unstable

πŸ’– NAME πŸ’–

okay bestie, this is shilka β€” the keywords description translator β€” and you're reading the SHILKA(1) manual page πŸ’…βœ¨


✨ SYNOPSIS ✨

shilka [ -c++ --statistics -inline -strip -length -case -no-definitions
-interface -export -enum -pprefix -time -fast n -w -h -help -v]
specification-file

🌸 DESCRIPTION 🌸

So SHILKA generates code for fast recognition of pipeline hazards of a processor that's described in the specification file. The specification file must have the suffix .shilka πŸŽ€

The generated code consists of optional interface and implementation files having the same names as one of the specification file and correspondingly suffixes .h (if option -interface is given) and .c (C code) or .cpp (C++ code) πŸ¦‹

The fast recognition of keywords is based on a structure called as minimal prunned O-trie. Full documentation of SHILKA is in the SHILKA User's manual πŸ“š


πŸ’… OPTIONS πŸ’…

The options which are known for SHILKA are:

  • -c++ β€” output of C++ code instead of C code (which is the default). πŸ”₯
  • -statistics β€” generation of a macro definition which switches on gathering and printing keyword occurrence statistics. Then those statistics can be used for setting up frequencies in the description file for faster recognition of keywords ✨
  • -inline β€” generation of the function of keyword recognition as inline (take care with the used C compiler). This can speed up keyword recognition πŸ’¨
  • -strip β€” striping off code for gathering and printing statistics. By default the code is present in the implementation file. The code can be switched on by definition of a macro (see option -statistics) 🫢
  • -length β€” usage of strncmp instead of strcmp to compare keywords. This can be useful if the keyword is represented by a string without the C string end marker (' ') πŸŽ€
  • -case β€” keywords case is ignored during their recognition. This is useful for recognition keywords (or standard identifiers) in such a language as Fortran 🌈
  • -no-definitions β€” no generation of macros (or enumeration) defining identifiers of keywords 🚫
  • -interface β€” generation of an additional interface file (with suffix .h) πŸ“„
  • -export β€” SHILKA generates macros defining identifiers of keywords in the interface file (instead of in the implementation file). This option has sense only when -interface is present πŸ‘‘
  • -enum β€” output of an enumeration instead of macro definitions for identifiers of keywords πŸ”’
  • -pprefix β€” usage of a prefix instead of KR_' (default) for names of generated objects 🏷️
  • -time β€” output of time statistics of the SHILKA run into stderr ⏱️
  • -fast n β€” if the number of rested unchecked characters is less or equal to n, then the functions strcmp or strncmp is not used at all. Instead of this, simply comparing rested unchecked characters is used. This can speed up keyword recognition. The default value of the parameter is 3 ⚑
  • -w β€” disable generation of all warnings πŸ”‡
  • -h, -help β€” output of a brief help message about SHILKA usage πŸ™‹β€β™€οΈ
  • -v β€” creation of a description file containing details how the code generated by SHILKA will recognize the keywords πŸ“

πŸŽ€ FILES πŸŽ€

  • file.shilka β€” SHILKA specification file
  • file.c β€” generated C implementation file
  • file.cpp β€” generated C++ implementation file
  • file.h β€” generated interface file

There are no any temporary files used by SHILKA β€” zero, none, nada πŸ’€


πŸ¦‹ ENVIRONMENT πŸ¦‹

There are no environment variables which affect SHILKA behavior. literally none, bestie 🧚


πŸ”₯ DIAGNOSTICS πŸ”₯

SHILKA diagnostics is self-explanatory. iykyk πŸ’…


πŸ‘‘ AUTHOR πŸ‘‘

Vladimir N. Makarov, vmakarov@users.sourceforge.net πŸ’–


🌈 SEE ALSO 🌈

msta(1), oka(1), sprut(1), nona(1). SHILKA manual. 🫢


πŸ’€ BUGS πŸ’€

Please, report bugs to cocom-bugs@lists.sourceforge.net 😭


okay bye bestie β€” this page is from COCOM, dated 5 APR 2001, and it's the SHILKA(1) manual πŸ’–πŸ«Άβœ¨

πŸ“¦ where this page comes from