אנגליתצרפתיתספרדי

Ad


סמל OnWorks

fst-compiler - מקוון בענן

הפעל את Fst-compiler בספק האירוח החינמי של OnWorks על Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

זהו הפקודה fst-compiler שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


fst-compiler, fst-compiler-utf8 - שני מהדרים עבור תוכניות SFST

תַקצִיר


fst-compiler קובץ דקדוק [ קובץ פלט ]
fst-compiler-utf8 קובץ דקדוק [ קובץ פלט ]

אפשרויות


-c אחסן את המתמר בפורמט קומפקטי המשמש את fst-infl2.

-l אחסן את המתמר בפורמט lowmem.

-s החלף משטח ושכבת ניתוח של המתמר. אתה צריך להשתמש במתג הזה פנימה
כדי להשתמש fst-infl (fst-infl2, fst-infl3) לדור ולא לניתוח.

תיאור


fst-compiler הוא מהדר עבור תוכניות מתמר במצב סופי. זה יוצר ממוזער
מתמר מצב סופי שניתן להשתמש בו fst-mor, fst-infl, fst-print, Fst-compare,
fst-parse, ו fst-סריג. ייצוג המתמר הקומפקטי אשר נוצר עם
הדגל -c, נתמך על ידי fst-infl2, רכבת fst, ו משחק ראשון. חסכוני בזיכרון
ייצוג מתמר שנוצר עם דגל -l, נתמך רק על ידי ראשון-
infl3.

ארגומנט התוכנית הראשון הוא שם הקובץ המכיל את תוכנית המתמר.
שפת התכנות מתוארת להלן. הארגומנט השני הוא שם הקובץ
אליו ייכתב המתמר המתקבל בצורה בינארית. אם טיעון שני הוא
חסר, הפלט ייכתב stdout.

fst-compiler-utf8 שונה מ fst-compiler רק בקידוד התווים. fst-compiler-
utf8 תומך בקידוד UTF8 של קבצי המקור ואילו fst-compiler הוא לשמש
קודי תווים של 8 סיביות כמו latin1 שהם הרחבה של קוד ASCII. מֵידָע
אודות הקידוד מאוחסן בקבצי המתמר ומשמש את שאר תוכניות ה-SFST.

קובץ פורמטים


תוכנית מתמר מורכבת מרצף (אופציונלי) של אלפבית ו משתנה
הגדרות ואחריהן יחיד מתמר ביטוי מה שמגדיר את התוצאה
מַתמֵר.

אלפבית

הגדרת אלפבית מורכבת ממילת המפתח ALPHABET ואחריה = וממתמר כלשהו
ביטוי למשל

ALPHABET = [az]:[AZ]

פקודה זו מגדירה מחדש את האלפבית כקבוצת צמדי הסמלים המתרחשים על
מעברים של המתמר. התרחשויות של אופרטורים בשתי רמות, אופרטורים שלילה ו
תמיד יש להקדים נקודות ללא ציטוט בהגדרת אלפבית.

משתנים

ישנם שני סוגים שונים של משתנים. סמל סט משתנים מוקפים ב-hash
סימנים (#) וקח רצפי סמלים (ראה להלן) כערכים:

#UC# = א.ז
#LC# = az

מַתמֵר משתנים מוקפים בסימני דולר ולוקחים ביטויי מתמר כמו
ערכים:

$MAP$ = [az]:[AZ]+
$MAP$ = [#LC#]:[#UC#]+

משתנים ששמם מתחיל בסמל `=' הם מיוחדים הסכם משתנים. אם
משתנה הסכמה מתרחש יותר מפעם אחת בביטוי מתמר, תמיד יהיה
אותו ערך. שקול את תוכנית המתמר הבאה:

$=1$ = [abc]
$=1$ X $=1$

מתמר התוצאה מזהה את המיתרים aXa, bXb ו-cXc. רק מתמרים א-ציקליים
(כלומר מתמרים עם קבוצה סופית של מיפוי מחרוזת) ניתן להקצות להסכמה
משתנים.

סמלים

סמל הוא או

- תו בודד כמו A s 5,

- תו מצוטט כמו \* או \_,

- סמל מרובה תווים כמו אוֹ (וזה תמיד
מוקף בסוגריים זווית) או

- קו נטוי אחורי ואחריו מספר שהוא הקוד המספרי של ה
דמות ייעודית

- סמל האפס <>.

רצף סמלים

רצף סמלים הוא רצף של תווים, סמלים מרובים תווים ותו
טווחים, למשל az \. .

טווח סמלים

טווח סמלים הוא או

- סמל בודד

- רצף סמלים מוקף בסוגריים מרובעים כמו [A-Za-z] או

- רצף סמלים שמתחיל ב-^ ומוקף בסוגריים מרובעים כמו [^A-Za-z]
(המציין את המשלים של [a-zA-Z]) או

- התקופה (המייצגת כל סמל מהאלפבית)

ביטויי מתמר

ביטוי מתמר (TE) מוגדר באופן רקורסיבי כדלקמן:

- זוג של שני טווחי סמלים מופרדים בנקודתיים הוא TE.

[az]:[aZ]

- טווח סמל בודד כמו [az] הוא TE.
זוהי צורה קצרה של [az]:[az].

- שני רצפי סמלים סגורים בסוגריים ומופרדים בנקודתיים הם
אכלתי. {a[bc]}:{def} שווה ערך ל-a:db:e <>:f | a:dc:e <>:f.

- XY הוא TE אם X ו-Y הם TEs.
(מתעלמים מהחסר אלא אם כן הם מצוטט).

- (X) הוא TE אם X הוא TE.

- X op הוא TE הוא X הוא TE ו-op הוא או * (המפעיל הכוכב של קליין), +
(המפעיל של קליין פלוס), או ? (אופרטור אופציונלי)

- op X הוא TE הוא X הוא TE ו-op הוא או! (מפעיל שלילה), ^
(אופרטור חילוץ שפת יעד), _ (אופרטור חילוץ שפת מקור), או ^_
(מפעיל בורר מקור ויעד).

- X op Y הוא TE הוא X ו-Y הם TEs ו-op הוא או & (צירוף
מפעיל), | (אופרטור ניתוק), || (אופרטור קומפוזיציה), או - (חיסור
מַפעִיל)

- L x op y R הוא TE אם L ו-R הם TEs, x ו- y הם טווחי סמלים ו
op הוא או => (הגבלה דו-מפלסית), <= (כפייה דו-שלבית), או <=> (דו-מפלסית
הגבלה וכפייה).

- X op L__R הוא TE אם X, L ו-R הם TEs ו-op הוא או ^-> (למעלה
החלפה), _-> (החלפה כלפי מטה), /-> (החלפה שמאלה) או \-> (ימינה
תַחֲלִיף). יתר על כן, L ו-R חייבים להגדיר אוטומטים (כלומר אשר ממפים את המחרוזות שלהם
על עצמם). מפעילים אלו תואמים למפעילי החלפה של Karttunen. אם ה
אחרי החץ מופיע סימן שאלה (?), ההחלפה הופכת לאופציונלית.

- X << l הוא TE אם X הוא TE, ו-l הוא כל אחת מהצורה
a או הצורה a:b כאשר a ו-b הם תווים או סמלים בודדים. התוצאה היא א
מתמר שבו l הוכנס באופן חופשי לתוך X. המתמר ab << c למשל הוא
שווה ערך ל-c*ac*bc*.

- X op Y L1__R2, ... , LN__RN הוא TE אם X,Y, L1 עד LN ו-R1
דרך RN הם TEs, ו-op הוא או => (הגבלה כללית), <= (כפייה כללית), ^=>
(הגבלה כללית משטח), ^<= (כפייה משטחית כללית), ^<=> (משטח כללי
הגבלה וכפייה), _=> (הגבלה עמוקה כללית), _<= (כפייה עמוקה כללית),
_<=> (הגבלה וכפייה עמוקה כללית). (מפעילים אלה יושמו לאחר מכן
הצעה מאת אנסי אילי-ג'ירה.)

- "fname" הוא TE. המהדר קורא את הקובץ בשם fname והופך
זה לתוך מתמר בצורה line1|line2|line3|... כאשר linex הוא הקו x-th של
הקובץ. כל התווים מלבד : ו-\ מתפרשים מילולית (כלומר לא כ
מפעילים). TE זה משמש בדרך כלל לקריאת רשימת מורפמים מקובץ.

-" " הוא TE. המהדר קורא מתמר שהורכב מראש מ
הקובץ בשם fname. זֶה

תכונות נוספות

הערות מתחילות בסמל % ומתארכות עד סוף השורה. מתעלמים מהחסר
אלא אם כן הם מובאים. ביטויים מסתיימים בסוף שורה אלא אם כן סוף שורה
קדם לו קו נטוי אחורי. הפקודה

#include "fname"

ניתן להשתמש כדי להוסיף קוד מקור מקובץ בשם fname. הפקודה

RE >> "שם fname"

מאחסן את הביטוי הרגולרי RE בקובץ fname. הפקודה

#השתמש בהופקרופט

אומר למהדר להשתמש באלגוריתם המזעור של הופקרופט מעתה ואילך, ו

#השתמש בברית המחדל

עובר חזרה לאלגוריתם המינימום המוגדר כברירת מחדל (Brzozowski). הפקודה

דוגמא


הנה דוגמה לתוכנית מתמר פשוטה. בהנחה שהקובץ "adj-stems"
מכיל את שתי השורות

קל
מאוחר
גדול

מתמר זה ינתח נכון את צורות התואר קל, קל יותר, קל ביותר ומאוחר,
מאוחר יותר, ואחרון.

ALPHABET = [a-zA-Z] y:ie:<> :<>

$R$ = y<=>i ( :<> ה)

$R2$ = e<=><> ( :<> ה)

$R$ = $R$ & $R2$

$Stems$ = "גזעי התאמה"

$S$ = $Stems$ ( :<>| :{er}| :{est})

$S$ || $R$

יְצִיאָה סטָטוּס


fst-compiler מחזירה 0 אלא אם מתרחשת שגיאה כלשהי.

השתמש ב-fst-compiler באינטרנט באמצעות שירותי onworks.net


שרתים ותחנות עבודה בחינם

הורד אפליקציות Windows & Linux

  • 1
    Phaser
    Phaser
    Phaser היא פתיחה מהירה, חינמית ומהנה
    מסגרת משחק מקור HTML5 שמציעה
    עיבוד WebGL ו-Canvas לרוחב
    דפדפני אינטרנט שולחניים וניידים. משחקים
    יכול להיות שותף...
    הורד את Phaser
  • 2
    מנוע VASSAL
    מנוע VASSAL
    VASSAL הוא מנוע משחק ליצירה
    גרסאות אלקטרוניות של לוח מסורתי
    ומשחקי קלפים. זה מספק תמיכה עבור
    עיבוד ואינטראקציה של חלקי משחק,
    ו...
    הורד את VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF היא ספריית Java ליצירה
    ועריכת קבצי PDF עם LGPL ו
    רישיון קוד פתוח MPL. OpenPDF הוא ה
    יורש הקוד הפתוח LGPL/MPL של iText,
    ...
    הורד את OpenPDF - Fork of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - מערכת לאוטומטיות
    ניתוחים גיאוגרפיים - הוא גיאוגרפי
    תוכנת מערכת מידע (GIS) עם
    יכולות עצומות לגיאודטה
    עיבוד ואנה...
    הורד את SAGA GIS
  • 5
    ארגז כלים עבור Java/JTOpen
    ארגז כלים עבור Java/JTOpen
    ארגז הכלים של IBM עבור Java / JTOpen הוא א
    ספריית מחלקות Java התומכות ב
    תכנות לקוח/שרת ואינטרנט
    דגמים למערכת עם OS/400,
    i5/OS, o...
    הורד את ארגז הכלים עבור Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (או D3 עבור מסמכים מבוססי נתונים)
    היא ספריית JavaScript המאפשרת לך
    לייצר נתונים דינמיים ואינטראקטיביים
    הדמיות בדפדפני אינטרנט. עם D3
    אתה...
    הורד את D3.js
  • עוד »

פקודות לינוקס

Ad