GoGPT Best VPN GoSearch

Icône de favori OnWorks

urweb - En ligne dans le Cloud

Exécutez urweb 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 urweb 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


urweb - compilateur pour le langage de programmation Ur/Web

SYNOPSIS


urweb [option|nom du projet] ...
urweb démon [Commencer|Arrêtez]

DESCRIPTION


Cette page de manuel documente brièvement les urweb compilateur. Une documentation abondante est
disponible dans le manuel de référence Ur/Web.

urweb est un compilateur d'optimisation pour Ur/Web, un compilateur fonctionnel, pur, statiquement typé, strictement
langage de programmation évalué conçu pour la construction d'applications Web dynamiques
par les bases de données SQL. urweb produit un code objet très efficace qui n'utilise pas de déchets
collection; les programmes compilés seront souvent encore plus efficaces que ce que la plupart des programmeurs
prendrait la peine d'écrire en C.

La première invocation décrite compile un projet Ur/Web (voir COMPILATION), tandis que le
deuxième invocation contrôle le démon d'inférence de type (voir TYPE INFÉRENCE DÉMON). Pour L
projets simples, seule la connaissance de la première invocation est requise.

COMPILATION


urweb est un compilateur de programme complet (c'est-à-dire que la compilation incrémentielle n'est pas prise en charge). Ainsi,
il fonctionne à la granularité du projet et est exécuté à partir de la ligne de commande avec une collection
d'options et un nom de projet. Le cas le plus simple est de lancer urweb foo, où le fichier
foo.ur contient un programme Ur/Web valide, auquel cas urweb compilera le programme pour
le fichier foo.exe. (Malgré l'extension des fichiers générés, urweb ne collecte
produire nécessairement des exécutables COFF ; au lieu de cela, il produit le format d'objet par défaut du
compilateur C par défaut.)

Des programmes plus volumineux, couvrant de nombreux fichiers, peuvent être compilés en spécifiant un .urp (c'est-à-dire un
Ur/projet Web). La syntaxe d'un .urp le fichier est relativement simple ; voir la section 3.1 de
le manuel de référence Ur/Web pour plus de détails.

Sans argument, urweb imprime le numéro de version et quitte.

Compilateur Options


-ccompilateur programme
Définit le nom de l'exécutable correspondant au compilateur C. urweb Usages gcc by
par défaut, mais bruit devrait également fonctionner.

-Db nom=valeur...
Définit les informations de la base de données en utilisant le format attendu par Postgres PQconnectdb. Si
le backend de la base de données est MySQL ou SQLite, urweb analysera la chaîne d'information pour
définir les paramètres de connexion de manière appropriée. Pour MySQL, les seuls paramètres pertinents
sommes-nous hôte, adresse hôte, port, dbname, utilisateuret ; pour SQLite, le seul pertinent
le paramètre est dbname, qui est interprété comme le chemin du système de fichiers vers la base de données
déposer. Tous les paramètres non reconnus sont ignorés en silence.

-dbms (postgres|mysql|sqlite)
Définit le backend de la base de données. Si demandé, urweb émettra également le code d'initialisation
pour le backend sélectionné ; voir le -sql option.

-déboguer Instruit urweb pour émettre le code C généré comme /tmp/webapp.c. En outre, urweb
affichera les options de ligne de commande qu'il passe au compilateur C et à l'éditeur de liens au fur et à mesure
exécute.

-dumpSource
Instruit urweb pour imprimer une forme textuelle de l'intermédiaire actuel
représentation (IR) lorsque la compilation échoue. La sortie sera probablement extrêmement longue
et pas très lisible par l'homme.

-dumpVerboseSource
Instruit urweb pour imprimer une forme textuelle de chaque représentation intermédiaire qu'il
génère lors de la compilation. La sortie sera probablement extrêmement longue et pas très
lisible par l'homme.

-dumpTypes
Si spécifié, urweb imprimera les types de toutes les valeurs nommées qu'il trouve pendant
compilation.

-dumpTypesOnError
Identique à -dumpTypes, mais n'imprime les types que si la compilation échoue.

-explainIntégrer
Active les messages d'erreur détaillés lorsque urweb est incapable d'incorporer des valeurs côté serveur dans
code côté client.

-limite classe num
Définit une limite d'utilisation des ressources pour les applications générées. La limite classe sera
mis à l'entier non négatif num. Les cours sont :

nettoyage
nombre maximum d'opérations de nettoyage (par exemple, des entrées enregistrant le besoin de
désallouer certains objets temporaires) qui peuvent être actifs en une seule fois par requête

CLIENTS
nombre maximum de clients pouvant être bloqués simultanément en attente de nouveaux
messages (envoyés par Base.envoyer)

base de données
taille maximale du fichier de base de données (actuellement utilisé uniquement par SQLite), en unités de
pages de la base de données

delta nombre maximal de messages pouvant être envoyés dans un seul gestionnaire de requêtes avec
Base.envoyer

globals
nombre maximum de variables globales que les bibliothèques FFI peuvent définir dans un seul
contexte de la demande

têtes
taille maximale (en octets) du tampon par requête utilisé pour contenir les en-têtes HTTP pour
pages générées

tas taille maximale (en octets) du tas par requête pour les données allouées dynamiquement

entrées nombre maximal de champs de formulaire de niveau supérieur par demande

messages
taille maximale (en octets) de la mémoire tampon par requête utilisée pour contenir une seule sortie
message envoyé avec Base.envoyer

page taille maximale (en octets) du tampon par requête utilisé pour contenir le contenu HTML de
pages générées

scénario taille maximale (en octets) du tampon par requête utilisé pour contenir JavaScript
contenu des pages générées

sous-entrées
nombre maximal de champs de formulaire par demande, à l'exclusion des champs de niveau supérieur

Paisible durée maximale d'exécution d'une demande d'une seule page, en unités d'environ 0.1
secondes

transactionnels
nombre maximum d'actions transactionnelles personnalisées (par exemple, l'envoi d'un e-mail)
qui peut être exécuté en une seule génération de page

-sortir nom de fichier
Définit où urweb stockera l'exécutable compilé.

-chemin nom valeur
Définit un nouvel alias de chemin à utiliser dans .urp des dossiers. En particulier, cette option
spécifie que toutes les occurrences de $nom dans tous .urp les fichiers traités seront
remplacé par valeur. Vous pouvez spécifier cette option plusieurs fois.

-préfixe préfixe
Définit le préfixe de l'application. Cela contrôle la manière dont les fonctions Ur/Web sont liées aux URI ;
en particulier, si préfixe is /répertoire/monapp.exe/, puis des URI de la forme
//exemple.com/directory/myapp.exe/Module/function se résoudra à la fonction
Module.fonction dans Ur/Web.

-protocole (http|cgi|fastcgi|statique)
Instruit urweb pour produire un exécutable qui parle le protocole spécifié :

http HTTP1.1. urweb générera un exécutable serveur autonome.

cgi La Common Gateway Interface, le protocole classique utilisé par les serveurs Web pour
générer du contenu dynamique en générant de nouveaux processus. Alors que les programmes Ur/Web
peut en général utiliser la transmission de messages avec le envoyer et recv fonctions, que
la fonctionnalité n'est pas encore prise en charge dans CGI, car CGI a besoin d'un nouveau processus
pour chaque requête, et la transmission de messages doit utiliser des sockets persistants pour
livrer des messages.

Comme Ur/Web traite les chemins d'une manière inhabituelle, vous devrez configurer
Ur/Web spécialement en définissant le préfixe directive dans votre .urp déposer ou
passant le -préfixe option sur la ligne de commande. Par exemple, si vous déployez
une application Web à //exemple.com/répertoire/monapp.exe, vous devez préciser
/répertoire/monapp.exe/ comme préfixe d'application. Voir la section 3.2 du
Manuel de référence Ur/Web pour plus d'informations.

fastcgi
Le protocole plus rapide et plus récent inspiré de CGI, dans lequel les serveurs Web peuvent démarrer
et réutiliser des processus externes persistants pour générer du contenu dynamique. Ur/Web
n'implémente pas l'intégralité du protocole, mais le support d'Ur/Web a été testé
pour fonctionner à la fois avec Apache et lighttpd.

Les applications qui utilisent la transmission de messages, bien qu'elles soient prises en charge, nécessitent des
configuration. En particulier, si vous utilisez Apache, assurez-vous de spécifier un
gros délai d'inactivité; si vous utilisez lighttpd, assurez-vous de définir processus max à 1.
La justification de ces changements de configuration est détaillée dans la section 3.2 de
le manuel de référence Ur/Web.

statique Le protocole le plus simple possible. urweb générera un exécutable de sortie
qui attend un seul argument de ligne de commande donnant l'URI d'une page à
produire. Par exemple, cet argument peut être /principale, auquel cas un
la réponse HTTP statique pour cette page sera écrite sur la sortie standard.

-racine Nom chemin
Déclenche une convention de module alternative pour tous les fichiers source trouvés dans le répertoire
chemin ou l'un de ses sous-répertoires. En particulier, tout fichier chemin/foo.ur définira
un module appelé Nom.Foo au lieu de l'habituel Foo. N'importe quel fichier chemin/sous-répertoire/foo.ur
va définir un module appelé Nom.Sous-répertoire.Foo, et ainsi de suite pour l'imbrication arbitraire de
sous-répertoires. Vous pouvez spécifier cette option plusieurs fois.

-fichier sig chemin
Si spécifié, l'application compilée examinera chemin pour une clé à utiliser dans
signature cryptographique. Ceci est utilisé pour empêcher les attaques de falsification de requêtes intersites
pour tout gestionnaire de formulaire qui lit à la fois un cookie et crée des effets secondaires. Si la
le fichier référencé n'existe pas, l'application va le créer et lire son fichier sauvegardé
des données sur les appels futurs. Vous pouvez également initialiser le fichier manuellement avec n'importe quel
contenu d'au moins 16 octets ; les 16 premiers octets seront traités comme la clé.

-sql filet
Demande que urweb générer le code d'initialisation de la base de données pour la base de données sélectionnée
backend, le stocker dans filet. Si filet existe déjà, urweb l'écrasera.

Notez que les instructions générées ne créeront pas la base de données de l'application ; tu
devez le faire vous-même.

-statique
Instruit urweb pour lier statiquement l'exécutable généré.

-Horaire
Si spécifié, urweb imprimera un rapport de chronométrage à la fin de la compilation montrant
le nombre de secondes requis pour chaque étape du processus de compilation.

-unifierPlus
Instruit urwebmoteur d'inférence de type pour faire des suppositions au mieux plutôt que
échouant immédiatement lors de l'exécution de l'inférence de type. Si -dumpTypes montre non résolu
variables d'unification dans les positions où vous voudriez voir urweb faire mieux-
devine l'effort à la place, spécifiez cette option.

Corriger les programmes compilés avec -unifierPlus seront identiques à leurs homologues
compilé sans ; cependant, urweb générera probablement beaucoup plus (et potentiellement
plus utile) messages d'erreur à la fois lorsqu'on lui a demandé de compiler un programme incorrect
avec ce drapeau.

-verbeux
Instruit urweb pour annoncer les étapes du processus de compilation au fur et à mesure de son exécution
Eux.

Options qui inhiber compilation


Lorsqu'il est exécuté avec l'une de ces options, urweb ne produira pas de sortie exécutable.

-css Décharge les propriétés et classes CSS générées. La première ligne de sortie est une liste de
catégories de propriétés CSS qui vaudraient la peine d'être définies sur le corps du document. Les
les lignes restantes sont des paires séparées par des espaces de noms de classes CSS et de catégories de
propriétés qui vaudraient la peine d'être définies pour cette classe. Les codes de catégorie sont
divisé en deux variétés. Codes qui révèlent les propriétés d'une balise ou de ses
les enfants (récursifs) sont

B pour les éléments de niveau bloc,

C pour les légendes des tableaux,

D pour les cellules du tableau,

L pour les listes, et

T pour les tableaux.

Les codes qui révèlent les propriétés de la balise précise qui utilise une classe sont

b pour les éléments de niveau bloc,

t pour les tableaux,

d pour les cellules du tableau,

- pour les lignes du tableau,

H pour la possibilité de régler une hauteur,

N pour les éléments de niveau en ligne non remplacés,

R pour les éléments en ligne remplacés, et

W pour la possibilité de définir une largeur.

-moduleDe filet
Imprime le nom du module Ur correspondant au fichier source filet.

-version-numérique
Imprime la version de l'exécutable du compilateur sans aucun texte anglais associé.
Convient pour une utilisation dans les scripts.

-print-ccompilateur
Affiche le nom de l'exécutable du compilateur qui urweb utilisera.

-imprimer-cinclude
Imprime l'emplacement du système de fichiers dans lequel urweb recherchera les en-têtes C.

-tc Si spécifié, urweb s'arrêtera après la phase de vérification de type. L'utilisation libérale de cette
option peut considérablement accélérer le développement, car urwebles passes d'optimisation de peuvent prendre
ça fait un bout de temps.

-version
Imprime la version de l'exécutable du compilateur. La sortie est identique à urweb sortie
lorsqu'il est exécuté sans arguments.

Documentation Options


Ces options personnalisent le générateur de documentation d'Ur/Web.

démo Effectue un formatage de style démo.

-démo-guidée
Effectue un formatage de style démo, mais dimensionne les cadres pour allouer moins d'espace à
texte explicatif. Utile pour générer des présentations.

-noEmacs
Lorsqu'il est utilisé avec démo, causes urweb à pas utilisez Emacs pour mettre en évidence le code. Les
le code résultant ne sera pas mis en évidence.

-Didacticiel
Effectue une mise en forme de style didacticiel.

Interne Options


Ces options ne sont pas destinées aux utilisateurs ; ils sont utilisés pour construire urweb versions et pour déboguer
le compilateur.

-démarrage Des endroits urweb en mode bootstrap. Utilisé lors de la construction de la bibliothèque standard pour le
première fois.

-arrêt phase Causes urweb pour quitter après la phase de compilation spécifiée.

TYPE INFÉRENCE DÉMON


Étant donné que l'inférence de type Ur/Web peut prendre beaucoup de temps, il peut être utile de
cache les versions déduites du type des fichiers source. Ce mode peut être activé en exécutant

urweb démon Commencer

D'autres appels urweb dans le même répertoire de travail enverront des requêtes à un arrière-plan
processus démon qui réutilise les résultats de l'inférence de type dans la mesure du possible, suivi du fichier source
dépendances et temps de modification.

Pour arrêter le démon d'arrière-plan, exécutez

urweb démon Arrêtez

La communication se fait via une socket de domaine Unix dans le fichier .urweb_daemon dans le
répertoire.

Utilisez urweb en ligne en utilisant les services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

Commandes Linux

Ad




×
Publicité
❤ ️Achetez, réservez ou achetez ici — gratuitement, contribue à maintenir la gratuité des services.