AnglaisFrançaisEspagnol

Ad


Icône de favori OnWorks

fst-compiler-utf8 - En ligne dans le Cloud

Exécutez fst-compiler-utf8 dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande fst-compiler-utf8 qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


fst-compiler, fst-compiler-utf8 - Deux compilateurs pour les programmes SFST

SYNOPSIS


compilateur fst fichier-grammaire [ fichier de sortie ]
fst-compilateur-utf8 fichier-grammaire [ fichier de sortie ]

OPTIONS


-c Stockez le transducteur dans un format compact qui est utilisé par fst-infl2.

-l Stockez le transducteur au format lowmem.

-s Surface de commutation et couche d'analyse du transducteur. Vous devez utiliser ce commutateur dans
commander premier-infl (fst-infl2, fst-infl3) pour la génération plutôt que pour l'analyse.

DESCRIPTION


compilateur fst est un compilateur de programmes transducteurs à états finis. Il génère un minimum
transducteur à états finis qui peut être utilisé avec premier-mor, premier-infl, première impression, première comparaison,
fst-analyse, ainsi que fst-treillis. La représentation compacte du transducteur qui est générée avec
l'indicateur -c est pris en charge par fst-infl2, premier train, ainsi que premier match. La mémoire efficace
la représentation du transducteur générée avec l'indicateur -l n'est prise en charge que par premier-
infl3.

Le premier argument du programme est le nom d'un fichier qui contient le programme du transducteur.
Le langage de programmation est décrit ci-dessous. Le deuxième argument est le nom du fichier
auquel le transducteur résultant sera écrit sous forme binaire. Si un deuxième argument est
manquant, la sortie sera écrite dans sortie standard.

fst-compilateur-utf8 diffère de compilateur fst uniquement dans l'encodage des caractères. compilateur fst-
utf8 prend en charge l'encodage UTF8 des fichiers source alors que compilateur fst doit être utilisé pour
Codes de caractères à 8 bits comme latin1 qui sont une extension du code ASCII. Informations
concernant l'encodage est stocké dans les fichiers du transducteur et utilisé par les autres programmes SFST.

DOSSIER FORMATS


Un programme de transducteur consiste en une séquence (facultative) de alphabet ainsi que variable
définitions suivies d'un seul transducteur expression qui définit le résultat
transducteur.

Alphabet

Une définition alphabétique se compose du mot-clé ALPHABET suivi de = et d'un transducteur
expression par exemple

ALPHABET = [az]:[AZ]

Cette commande redéfinit l'alphabet comme l'ensemble des paires de symboles apparaissant sur le
transitions du transducteur. Occurrences d'opérateurs à deux niveaux, d'opérateurs de négation et
les périodes sans guillemets doivent toujours être précédées d'une définition alphabétique.

Variables

Il existe deux types différents de variables. Symbole set les variables sont entourés de hachage
signes (#) et prendre des séquences de symboles (voir ci-dessous) comme valeurs :

#UC# = AZ
#LC# = az

Transducteur les variables sont entourés de signes dollar et prennent les expressions de transducteur comme
valeurs:

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

Les variables dont le nom commence par le symbole `=' sont spéciales accord variables. Si un
variable d'accord apparaît plus d'une fois dans une expression de transducteur, elle aura toujours
la même valeur. Considérez le programme de transducteur suivant :

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

Le transducteur de résultat reconnaît les chaînes aXa, bXb et cXc. Seuls les transducteurs acycliques
(c'est-à-dire des transducteurs avec un ensemble fini de mappages de chaînes) peuvent être affectés à l'accord
variables.

Symboles

Un symbole est soit

- un seul caractère comme A s 5,

- un caractère entre guillemets comme \* ou \_,

- un symbole à plusieurs caractères comme ou (ce qui est toujours
entre crochets angulaires) ou

- une barre oblique inverse suivie d'un chiffre qui est le code numérique du
personnage désigné

- le symbole nul <>.

Séquence de symboles

Une séquence de symboles est une séquence de caractères, de symboles à plusieurs caractères et de caractères
plages, par exemple az \. .

plage de symboles

Une plage de symboles est soit

- un seul symbole

- une séquence de symboles entre crochets comme [A-Za-z] ou

- une séquence de symboles commençant par ^ et mis entre crochets comme [^A-Za-z]
(désignant le complément de [a-zA-Z]) ou

- le point (qui représente n'importe quel symbole de l'alphabet)

Expressions de transducteur

Une expression de transducteur (TE) est définie de manière récursive comme suit :

- Une paire de deux plages de symboles séparées par deux points est un TE.

[az]:[aZ]

- Une plage de symboles unique comme [az] est un TE.
C'est une forme courte pour [az]:[az].

- Deux séquences de symboles entre accolades et séparées par deux points sont
mangé. {a[bc]}:{def} est équivalent à a:db:e <>:f | a:dc:e <>:f.

- XY est un TE si X et Y sont des TE.
(Les espaces sont ignorés sauf s'ils sont cités.)

- (X) est un TE si X est un TE.

- X op est un TE est X est un TE et op est soit * (l'opérateur étoile de Kleene), +
(opérateur plus de Kleene), ou ? (opérateur d'optionnalité)

- op X est un TE est X est un TE et op est soit ! (opérateur de négation), ^
(opérateur d'extraction de la langue cible), _ (opérateur d'extraction de la langue source) ou ^_
(opérateur de commutation source et cible).

- X op Y est un TE est X et Y sont des TE et op est soit & (conjonction
opérateur), | (opérateur de disjonction), || (opérateur de composition), ou - (soustraction
opérateur)

- L x op y R est un TE si L et R sont des TE, x et y sont des plages de symboles et
op est soit => (restriction à deux niveaux), <= (coercition à deux niveaux), soit <=> (restriction à deux niveaux
restriction et coercition).

- X op L__R est un TE si X, L et R sont des TE et op est soit ^-> (vers le haut
remplacement), _-> (remplacement vers le bas), // (remplacement vers la gauche) ou \-> (remplacement vers la droite
remplacement). De plus, L et R doivent définir des automates (c'est-à-dire qui mappent leurs chaînes
sur eux-mêmes). Ces opérateurs correspondent aux opérateurs de remplacement de Karttunen. Si la
flèche est suivie d'un point d'interrogation (?), le remplacement devient facultatif.

- X << l est un TE si X est un TE, et l est soit de la forme
a ou la forme a:b où a et b sont des caractères ou des symboles uniques. Le résultat est un
transducteur où l a été librement inséré dans X. Le transducteur ab << c par exemple est
équivalent à c*ac*bc*.

- X op Y L1__R2, ... , LN__RN est un TE si X,Y, L1 à LN et R1
via RN sont des TE, et op est soit => (restriction générale), <= (coercition générale), ^=>
(restriction de surface générale), ^<= (coercition de surface générale), ^<=> (surface générale
restriction et coercition), _=> (restriction générale profonde), _<= (coercition générale profonde),
_<=> (restriction générale profonde et coercition). (Ces opérateurs ont été mis en place suite à
une suggestion d'Anssi Yli-Jyra.)

- "fname" est un TE. Le compilateur lit le fichier nommé fname et tourne
dans un transducteur de la forme ligne1|ligne2|ligne3|... où linex est la x-ième ligne de
le fichier. Tous les caractères autres que : et \ sont interprétés littéralement (c'est-à-dire pas comme
les opérateurs). Ce TE est généralement utilisé par exemple pour lire la liste de morphèmes à partir d'un fichier.

- " " est un TE. Le compilateur lit un transducteur pré-compilé à partir de
le fichier nommé fname. Cette

Autres fonctionnalités

Les commentaires commencent par le symbole % et s'étendent jusqu'à la fin de la ligne. Les blancs sont ignorés
sauf s'ils sont cités. Les expressions se terminent à la fin d'une ligne sauf si la fin de la ligne
est précédé d'une barre oblique inverse. La commande

#include "fname"

peut être utilisé pour insérer du code source à partir d'un fichier nommé fname. La commande

RE >> "fnom"

stocke l'expression régulière RE dans le fichier fname. La commande

#utiliser hopcroft

indique au compilateur d'utiliser désormais l'algorithme de minimisation Hopcroft, et

#l'utilisation par défaut

revient à l'algorithme de minimisation par défaut (Brzozowski). La commande

EXEMPLE


Voici un exemple de programme de transducteur simple. En supposant que le fichier "adj-stems"
contient les deux lignes

Easy
tard
big

ce transducteur analysera correctement les formes d'adjectifs faciles, plus faciles, plus faciles et tardives,
plus tard, et plus tard.

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

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

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

$R$ = $R$ & $R2$

$Stems$ = "adj-stems"

$S$ = $Tiges$ ( :<>| :{euh}| :{est})

$S$ || $R$

EXIT STATUT


compilateur fst renvoie 0 à moins qu'une erreur ne se produise.

Utilisez fst-compiler-utf8 en ligne à l'aide des services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

  • 1
    LAMPÉE
    LAMPÉE
    SWIG est un outil de développement logiciel
    qui relie les programmes écrits en C et
    C++ avec une variété de
    langages de programmation. SWIG est utilisé avec
    différent...
    Télécharger SWIG
  • 2
    Thème de réaction WooCommerce Nextjs
    Thème de réaction WooCommerce Nextjs
    Thème React WooCommerce, construit avec
    Suivant JS, Webpack, Babel, Node et
    Express, en utilisant GraphQL et Apollo
    Client. Boutique WooCommerce dans React (
    contient : Produits...
    Télécharger le thème WooCommerce Nextjs React
  • 3
    archlabs_repo
    archlabs_repo
    Repo de paquets pour ArchLabs Ceci est un
    application qui peut également être récupérée
    de
    https://sourceforge.net/projects/archlabs-repo/.
    Il a été hébergé dans OnWorks en...
    Télécharger archlabs_repo
  • 4
    Projet Zéphyr
    Projet Zéphyr
    Le projet Zephyr est une nouvelle génération
    système d'exploitation en temps réel (RTOS) qui
    prend en charge plusieurs matériels
    architecturales. Il est basé sur un
    noyau à faible encombrement...
    Télécharger le projet Zéphyr
  • 5
    SCons
    SCons
    SCons est un outil de construction de logiciels
    c'est une alternative supérieure à la
    outil de construction classique "Make" qui
    nous connaissons et aimons tous. SCons est
    mis en place un...
    Télécharger SCons
  • 6
    PSeInt
    PSeInt
    PSeInt est un interpréteur de pseudo-code pour
    étudiants en programmation hispanophones.
    Son objectif principal est d'être un outil pour
    apprendre et comprendre les bases
    conception...
    Télécharger PSeInt
  • Plus "

Commandes Linux

  • 1
    7z
    7z
    7z - Un archiveur de fichiers avec le niveau le plus élevé
    ratio de compression ...
    Exécutez 7z
  • 2
    7za
    7za
    7za - Un archiveur de fichiers avec le plus haut
    ratio de compression ...
    Exécutez 7za
  • 3
    terrifiant
    terrifiant
    CREEPY - Une information de géolocalisation
    agrégateur DESCRIPTION : creepy est un
    application qui vous permet de rassembler
    informations relatives à la géolocalisation
    utilisateurs de...
    Courez effrayant
  • 4
    cricket-compiler
    cricket-compiler
    cricket - Un programme pour gérer le
    collecte et affichage de séries chronologiques
    Les données ...
    Exécutez la compilation de cricket
  • 5
    g-wrap-config
    g-wrap-config
    g-wrap-config - script à obtenir
    informations sur la version installée
    de G-Wrap...
    Exécutez g-wrap-config
  • 6
    g.accessgrass
    g.accessgrass
    g.access - Contrôle l'accès au
    jeu de cartes actuel pour les autres utilisateurs sur le
    système. Si aucune option n'est donnée, imprime
    statut actuel. MOTS CLÉS : général, carte
    gestion, p...
    Exécutez g.accessgrass
  • Plus "

Ad