5. Quelques-uns des nouveaux langages supportés▲
5-A. Ruby, RHTML▲
Ruby
Sélectionnez
class Carnet
def initialize
@personnes = []
end
def ajoute(personne)
@personnes.push(personne)
@personnes = @personnes.sort { |a, b| par_nom(a, b) }
end
def retire(personne)
@personnes.delete(personne)
end
def par_nom(a, b)
if a.prenom == b.prenom
a.nom <=> b.nom
else
a.prenom <=> b.prenom
end
end
endRHTML
Sélectionnez
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title><%= @page_title %></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<%= stylesheet_link_tag "main" %>
<%= javascript_include_tag :defaults %>
</head>
<body<% if @page_class %> class="<%= @page_class %>"<% end %>>
<% unless session[:user_id] %><%= render :partial => "generic/loginstuff" -%><% end %>
<div id="container">
<div id="header">
</div>
<% unless @message_override && @message_override == 1 %>
<%= render :partial => "generic/messageboxes" %>
<% end %>
<div id="main">
<%= yield %>
</div>
<div id="footer">
</div>
</div>
</body>
</html>5-B. POV-Ray▲
POV-Ray
Sélectionnez
#include "colors.inc"
camera {
location <3, 1, -10>
look_at <3,0,0>
}
light_source { <500,500,-1000> White }
text {
ttf "timrom.ttf" "Hello world!" 1, 0
pigment { White }
}5-C. Latex▲
Latex
Sélectionnez
\documentclass[a4paper, 11pt]{article}
\title{Exemple de document \LaTeX}
\author{Moi}
\begin{document}
\maketitle
$\sum_{n=1}^{+\infty}\frac{1}{n^2}=\frac{\pi^2}{6}$
\end{document}5-D. Batch▲
Batch
Sélectionnez
@rem -----------------------------
@rem G?n?rateur d'articles
@rem -----------------------------
@echo off
@if "%OS%"=="" deltree /Y .\..\html\%1 >buildart.txt
@if not "%OS%"=="" rmdir /s /q .\..\html\%1 >buildart.txt
@if "%OS%"=="" deltree /Y .\..\cache\%1 >buildart.txt
@if not "%OS%"=="" rmdir /s /q .\..\cache\%1 >buildart.txt
@mkdir .\..\archives >>buildart.txt
@mkdir .\..\html >>buildart.txt
@mkdir .\..\html\%1 >>buildart.txt
@mkdir .\..\html\%1\fichiers >>buildart.txt
@mkdir .\..\html\%1\images >>buildart.txt
@mkdir .\..\cache >>buildart.txt
@mkdir .\..\cache\%1 >>buildart.txt
@mkdir .\..\cache\%1\fichiers >>buildart.txt
@mkdir .\..\cache\%1\images >>buildart.txt
@copy .\..\css\article.css .\..\html\%1 >>buildart.log
@copy .\..\images\*.* .\..\html\%1\images >>buildart.log
@copy .\..\documents\%1\fichiers\*.* .\..\html\%1\fichiers >>buildart.log
@copy .\..\documents\%1\images\*.* .\..\html\%1\images >>buildart.log
@copy .\..\documents\%1\fichiers\*.* .\..\cache\%1\fichiers >>buildart.log
@copy .\..\documents\%1\images\*.* .\..\cache\%1\images >>buildart.log
@echo applique la coloration syntaxique :
@perl coloration.pl .\..\documents\%1\%1.xml .\..\ArtTmp.xml >>buildart.log
@echo construction des pages HTML
@perl buildArt.pl .\..\ArtTmp.xml .\..\html\%1\ .\..\cache\%1 %1
rem construction du zip pour consultation off-line
@cd .\..\html
if exist .\..\archives\%1.zip @del /s/q .\..\archives\%1.zip
java -jar .\..\script\lib\Zippeur.jar .\..\archives\%1.zip %1
@cd .\..\script
@copy .\..\documents\%1\%1.xml .\..\html\%1 >>buildart.log5-E. Coldfusion▲
ColdFusion
Sélectionnez
<html>
<head>
<title>Exemple de code ColdFusion inséré dans du code HTML</title>
</head>
<body>
<CFSET nb = 42>
<CFOUTPUT>Valeur de nb : #nb#</CFOUTPUT>
<CFQUERY NAME="ma_requete" DATASOURCE="ma_source">
SELECT prenom
FROM employes
WHERE prenom LIKE 'J%'
ORDER BY prenom ASC
</CFQUERY>
Nombre d'employés : <CFOUTPUT>#ma_requete.recordcount#</CFOUTPUT><br>
<CFOUTPUT QUERY="ma_requete">
Prénom : #ma_requete.prenom#<br>
</CFOUTPUT>
</body>
</html>5-F. Ocaml▲
ocaml
Sélectionnez
(* Le parcours *)
(*
g correspond au graphe,
aetevisite est la liste des sommets visité
avisiter sont les sommets à visiter
fAjout la fonction
fTraitement la fonction qui traite le sommet
*)
let rec parcours g aetevisite avisiter fAjout fTraitement =
match avisiter with
[] -> ()
|sommetCourant::reste ->
if (isinListe aetevisite sommetCourant) then
parcours g aetevisite reste fAjout fTraitement
else
begin
fTraitement sommetCourant;
let voisins = getVoisins g sommetCourant
in
let resteavisiter = fAjout reste voisins
in
let cequiaetevisite = sommetCourant::aetevisite
in
parcours g cequiaetevisite resteavisiter fAjout fTraitement
end
;;5-G. Makefile▲
makefile
Sélectionnez
DEBUG=yes
CC=gcc
ifeq ($(DEBUG),yes)
CFLAGS=-Wall -ansi -g
LDFLAGS=-Wall -ansi -g
else
CFLAGS=-Wall -ansi
LDFLAGS=-Wall -ansi
endif
EXEC=hello
SRC= $(wildcard *.c)
OBJ= $(SRC:.c=.o)
all: $(EXEC)
ifeq ($(DEBUG),yes)
@echo "Génération en mode debug"
else
@echo "Génération en mode release"
endif
hello: $(OBJ)
@$(CC) -o $@ $^ $(LDFLAGS)
main.o: hello.h
%.o: %.c
@$(CC) -o $@ -c $< $(CFLAGS)
.PHONY: clean mrproper
clean:
@rm -rf *.o
mrproper: clean
@rm -rf $(EXEC)5-H. Assembleur x86▲
assembly-x86
Sélectionnez
Org 0;
Jmp Start
;---------------------;
; Programme principal ;
;---------------------;
Start:
Cli
Mov Ax,07C0h
Mov Ds,Ax
Mov Es,Ax
; Initialisation de la pile ici
Sti
; Programme de boot proprement dit...
Hang:
Jmp Hang
End.:
;--- 00 jusqu'à 510 ---
times 5105-I. Ada95▲
Ada95
Sélectionnez
declare
type Global is access Server; -- see 9.1
A, B : Server;
G : Global;
begin
-- activation of A and B
declare
type Local is access Server;
X : Global := new Server; -- activation of X.all
L : Local := new Server; -- activation of L.all
C : Server;
begin
-- activation of C
G := X; -- both G and X designate the same task object
...
end; -- await termination of C and L.all (but not X.all)
...
end; -- await termination of A, B, and G.all5-J. ANTLR▲
ANTLR
Sélectionnez
set
{ Vector ids=null; } // init-action
: "(" ids=idList ")"
;
idList returns [Vector strs]
{ strs = new Vector(); } // init-action
: id:ID
{ strs.appendElement(id.getText()); }
(
"," id2:ID
{ strs.appendElement(id2.getText()); }
)*
;5-K. Apache conf▲
Apache conf
Sélectionnez
#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# Do not add a slash at the end of the directory path. If you point
# ServerRoot at a non-local disk, be sure to point the LockFile directive
# at a local disk. If you wish to share the same ServerRoot for multiple
# httpd daemons, you will need to change at least LockFile and PidFile.
#
ServerRoot "/opt/lampp"
#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 80
#
# Dynamic Shared Object (DSO) Support
#
# To be able to use the functionality of a module which was built as a DSO you
# have to place corresponding `LoadModule' lines at this location so the
# directives contained in it are actually available _before_ they are used.
# Statically compiled modules (those listed by `httpd -l') do not need
# to be loaded here.
#
# Example:
# LoadModule foo_module modules/mod_foo.so
#
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule mem_cache_module modules/mod_mem_cache.so
#LoadModule dbd_module modules/mod_dbd.so
LoadModule bucketeer_module modules/mod_bucketeer.so
<IfDefine JUSTTOMAKEAPXSHAPPY>
LoadModule php4_module modules/libphp4.so
LoadModule php5_module modules/libphp5.so
</IfDefine>
<IfModule !mpm_winnt_module>
<IfModule !mpm_netware_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User nobody
Group nogroup
</IfModule>
</IfModule>
# 'Main' server configuration
#
# The directives in this section set up the values used by the 'main'
# server, which responds to any requests that aren't handled by a
# <VirtualHost> definition. These values also provide defaults for
# any <VirtualHost> containers you may define later in the file.
#
# All of these directives may appear inside <VirtualHost> containers,
# in which case these default settings will be overridden for the
# virtual host being defined.
#
#
# ServerAdmin: Your address, where problems with the server should be
# e-mailed. This address appears on some server-generated pages, such
# as error documents. e.g. admin@your-domain.com
#
ServerAdmin you@example.com
#
# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
#ServerName www.example.com:80
# XAMPP
ServerName localhost
#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/opt/lampp/htdocs"
#
# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories).
#
# First, we configure the "default" to be a very restrictive set of
# features.
#
<Directory />
Options FollowSymLinks
AllowOverride None
#XAMPP
#Order deny,allow
#Deny from all
</Directory>
#
# Note that from this point forward you must specifically allow
# particular features to be enabled - so if something's not working as
# you might expect, make sure that you have specifically enabled it
# below.
#
#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/opt/lampp/htdocs">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
#Options Indexes FollowSymLinks
# XAMPP
Options Indexes FollowSymLinks ExecCGI Includes
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
#AllowOverride None
# since XAMPP 1.4:
AllowOverride All
#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
</Directory>
#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
<IfModule dir_module>
#DirectoryIndex index.html
# XAMPP
DirectoryIndex index.html index.html.var index.php index.php3 index.php4
</IfModule>
#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
</FilesMatch>
#
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here. If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog logs/error_log
#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn
<IfModule log_config_module>
#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
# You need to enable mod_logio.c to use %I and %O
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
#
# The location and format of the access logfile (Common Logfile Format).
# If you do not define any access logfiles within a <VirtualHost>
# container, they will be logged here. Contrariwise, if you *do*
# define per-<VirtualHost> access logfiles, transactions will be
# logged therein and *not* in this file.
#
CustomLog logs/access_log common
#
# If you prefer a logfile with access, agent, and referer information
# (Combined Logfile Format) you can use the following directive.
#
#CustomLog logs/access_log combined
</IfModule>
# XAMPP
<IfDefine SSL>
Include etc/extra/httpd-ssl.conf
</IfDefine>
</IfModule>
#
# Note: The following must must be present to support
# starting without SSL on platforms with no /dev/random equivalent
# but a statically compiled-in mod_ssl.
#
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
# XAMPP
Include etc/extra/httpd-xampp.conf5-L. Aspect J▲
Aspect J
Sélectionnez
aspect SetsInRotateCounting {
int rotateCount = 0;
int setCount = 0;
before(): call(void Line.rotate(double)) {
rotateCount++;
}
before(): call(void Point.set*(int))
&& cflow(call(void Line.rotate(double))) {
setCount++;
}
}5-M. Eiffel▲
Eiffel
Sélectionnez
indexing
description: "[
Counters that you can increment by one,
decrement, and reset
]"
class
COUNTER
feature -- Access
item: INTEGER
-- Counter's value.
feature -- Element change
increment is
-- Increase counter by one.
do
item := item + 1
end
decrement is
-- Decrease counter by one.
do
item := item - 1
end
reset is
-- Reset counter to zero.
do
item := 0
end
end -- class COUNTER5-N. Cobol▲
Cobol
Sélectionnez
000001 IDENTIFICATION D5ISION.
program-id. progtele.
author. M. Billaud.
date-written. 8/02/1998.
000005
*
* consultation du programme tele de la semaine.
*
* - realise avec Personal Cobol (Microfocus)
000010
ENVIRONMENT D5ISION.
INPUT-OUTPUT SECTION.
file-control.
000015 select F-FILMS assign to "semaine.txt"
organization line sequential.
DATA D5ISION.
000020 FILE SECTION.
fd F-FILMS.
01 F-ENR.
02 JOUR pic XXX.
000025 02 CHAINE pic XXXX.
* heure de debut et duree en minutes
02 HHMM pic 9999.
02 DUREE pic 999.
* titre
000030 02 TITRE pic X(60).
WORKING-STORAGE SECTION.
* constantes definies par commodite.
000035 77 VRAI pic X value "V".
77 FAUX pic X value "F".
77 FIN-MENU pic X.
77 FIN-FICHIER pic X.
000040
77 CHOIX-MENU pic X.
01 LIGNE-AFFICHAGE.
02 pic XX value "* ".
000045 02 JOUR pic XXX.
02 pic X value " ".
02 CHAINE pic X(4).
02 pic XXX value " | ".
02 HHMM pic Z9B99.
000050 02 pic X value " ".
02 TITRE pic X(30).
02 pic XX value " |".
01 LIGNE-ETOILES pic X(50) value all "*".
000055
77 JOUR-CHOISI pic X(3).
77 NB-FILMS pic 999.
000060 PROCEDURE D5ISION.
PRINCIPALE SECTION.
DEBUT.
display "hello".
move FAUX to FIN-MENU.
000065 perform MENU until FIN-MENU = VRAI.
stop run.
MENU.
display "Films de la semaine"
000070 display " ".
display "T. Tous les films"
display "J. Films d’un jour"
display "C. Films d’une chaine"
display "H. Recherche par heure de debut"
000075 display "Q. Quitter".
display " "
display "Votre choix ?"
accept CHOIX-MENU
evaluate CHOIX-MENU
000080 when "T"
when "t"
perform EDITER-TOUS-FILMS
when "J"
when "j"
000085 perform EDITER-JOUR
when "C"
when "c"
perform EDITER-CHAINE
when "H"
000090 when "h"
perform RECHERCHER-HORAIRE
when "Q"
when "q"
move VRAI to FIN-MENU
000095 when other
display "Choix invalide"
end-evaluate.
EDITER-TOUS-FILMS.
000100 move FAUX to FIN-FICHIER.
open input F-FILMS.
display LIGNE-ETOILES.
move 0 to NB-FILMS.
perform until FIN-FICHIER = VRAI
000105 move SPACES to F-ENR
read F-FILMS
at end
move VRAI to FIN-FICHIER
not at end
000110 add 1 to NB-FILMS
perform AFFICHER-ENREGISTREMENT
end-read
end-perform.
close F-FILMS.
000115 display LIGNE-ETOILES.
display NB-FILMS " films trouves.".
display " ".
AFFICHER-ENREGISTREMENT.
000120 move CHAINE of F-ENR to CHAINE of LIGNE-AFFICHAGE.
move JOUR of F-ENR to JOUR of LIGNE-AFFICHAGE.
move HHMM of F-ENR to HHMM of LIGNE-AFFICHAGE.
move TITRE of F-ENR to TITRE of LIGNE-AFFICHAGE.
000125 display LIGNE-AFFICHAGE.
EDITER-JOUR.
display "Quel Jour ? (3 premieres lettres majuscules)".
accept JOUR-CHOISI.
000130
move FAUX to FIN-FICHIER.
open input F-FILMS.
move 0 to NB-FILMS.
display LIGNE-ETOILES.
000135 perform until FIN-FICHIER = VRAI
move SPACES to F-ENR
read F-FILMS
at end
move VRAI to FIN-FICHIER
000140 not at end
if JOUR-CHOISI = JOUR of F-ENR
then
add 1 to NB-FILMS
perform AFFICHER-ENREGISTREMENT
000145 end-if
end-read
end-perform.
close F-FILMS.
display LIGNE-ETOILES.
000150 display NB-FILMS " films trouves pour le jour "
JOUR-CHOISI.
display " ".
EDITER-CHAINE.
000155 display "* EDITER-CHAINE : A completer".
RECHERCHER-HORAIRE.
display "* RECHERCHER-HORAIRE : A completer".5-O. Fortran▲
Fortran
Sélectionnez
PROGRAM DEGRAD
!
! Imprime une table de conversion degrés -> radians
! =================================================
!
! Déclaration des variables
INTEGER DEG
REAL RAD, COEFF
!
! En-tête de programme
WRITE ( *, 10)
10 FORMAT (' ',20('*') / &
& ' * Degres * Radians *' / &
& ' ', 20('*') )
!
! Corps de programme
COEFF = (2.0 * 3.1416) / 360.0
DO DEG = 0, 90
RAD = DEG * COEFF
WRITE ( *, 20) DEG, RAD
20 FORMAT (' * ',I4,' * ',F7.5,' *')
END DO
!
! Fin du tableau
WRITE ( *, 30)
30 FORMAT (' ',20('*') )
!
! Fin de programme
STOP
END PROGRAM DEGRAD5-P. Frremarker▲
Freemarker
Sélectionnez
<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome ${user}!</h1>
<p>Our latest product:
<a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html>5-Q. Erlang▲
Erlang
Sélectionnez
-module(ball).
%% to run this program
%% redefine the OTHERNODE macro
%% > c(ball).
%% > ball:install_code().
%% > ball:run().
%% redefine this macro to your nodename
-define(OTHERNODE, x@yuck).
-export([install_code/0, run/0, internal/1]).
%% install_code() sends the code over the network
%% to my windows machine
install_code() ->
install_code(?MODULE).
install_code(Mod) ->
ObjectPath = code:which(Mod),
{ok, Bin} = file:read_file(ObjectPath),
rpc:call(?OTHERNODE, code, load_binary, [Mod, ObjectPath, Bin]).
run() ->
Me = spawn(?MODULE, internal, [true]),
Other = spawn(?OTHERNODE, ?MODULE, internal, [false]),
Me ! Other,
Other ! Me.
internal(Tag) ->
etk:start(),
Top = etk:toplevel([]),
etk:wm([geometry, Top, "155x125+100+100"]),
Canvas = etk:canvas(Top, []),
etk:pack([Canvas, {fill,both},{expand,yes}]),
Self = self(),
B = etk:button(Canvas, [{text, "Click to kill"},
{command, fun() -> Self ! quit end}]),
etk:cmd(Canvas, [create,window,75,25,{window, B}]),
receive
Pid ->
link(Pid),
loop(Tag, Canvas, Pid)
end.
loop(true, Canvas, Pid) ->
%% I got the tag create the ball
etk:cmd(Canvas,[create, oval, 50,50,100,100,
{fill,red},{tag,x}]),
receive
quit -> exit(die);
Other -> io:format("uugh:~p~n",[Other])
after 2000 ->
%% on timeout kill the ball
etk:cmd(Canvas, [delete, x]),
%% send a message to the other guy to create the ball
Pid ! show,
loop(false, Canvas, Pid)
end;
loop(false, Canvas, Pid) ->
receive
quit ->
exit(die);
show ->
loop(true, Canvas, Pid)
end.5-R. Groovy▲
Groovy
Sélectionnez
class Greet {
def name
Greet(who) { name = who[0].toUpperCase() + who[1..-1] }
def salute() { println "Hello $name!" }
}
g = new Greet('world') // create object
g.salute() // Output "Hello World!"5-S. JSP▲
jsp
Sélectionnez
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%--
The taglib directive below imports the JSTL library. If you uncomment it,
you must also add the JSTL library to the project. The Add Library... action
on Libraries node in Projects view can be used to add the JSTL 1.1 library.
--%>
<%--
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
--%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>JSP Page</h1>
<br/>
<a href="./faces/purchaseOrder/List.jsp">List of PurchaseOrder</a>
<br/>
<a href="./faces/productCode/List.jsp">List of ProductCode</a>
<br/>
<a href="./faces/product/List.jsp">List of Product</a>
<br/>
<a href="./faces/microMarket/List.jsp">List of MicroMarket</a>
<br/>
<a href="./faces/manufacturer/List.jsp">List of Manufacturer</a>
<br/>
<a href="./faces/discountCode/List.jsp">List of DiscountCode</a>
<br/>
<a href="./faces/customer/List.jsp">List of Customer</a>
<br/>
<a href="./faces/welcomeJSF.jsp">JavaServer Faces Welcome Page</a>
<%--
This example uses JSTL, uncomment the taglib directive above.
To test, display the page like this: index.jsp?sayHello=true&name=Murphy
--%>
<%--
<c:if test="${param.sayHello}">
<!-- Let's welcome the user ${param.name} -->
Hello ${param.name}!
</c:if>
--%>
</body>
</html>5-T. Lisp▲
assembly-x86
Sélectionnez
(defun reverse (l &optional (acc '()))
« renverse la liste l »
(if (null l)
acc
(reverse (cdr l) (cons (car l) acc))))5-U. Objective C▲
Objective C
Sélectionnez
@interface Worker : NSObject
{
char *name;
@private
int age;
char *evaluation;
@protected
id job;
float wage;
@public
id boss;
}5-V. Postscript▲
Postscript
Sélectionnez
%!PS
%% Une étoile
2 setlinewidth
%%
%% pour un angle d (en degrés) trace un trait entre (300,400)
%% et (300 + 200 cos(d) , 400 + 300 sin(d))
/tracerayon {
300 400 moveto
dup dup cos 200 mul exch sin 200 mul rlineto
stroke
} def
%%
%% Boucle (variation de la variable de boucle de 0 à 360 par pas de 10)
0 10 360 {
tracerayon
} for
%%
showpage5-W. Propriétés▲
Props
Sélectionnez
hibernate.connection.driver_class = org.postgresql.Driver
hibernate.connection.url = jdbc:postgresql://localhost/mydatabase
hibernate.connection.username = myuser
hibernate.connection.password = secret
hibernate.c3p0.min_size=5
hibernate.c3p0.max_size=20
hibernate.c3p0.timeout=1800
hibernate.c3p0.max_statements=50
hibernate.dialect = net.sf.hibernate.dialect.PostgreSQLDialect5-X. Relax NG▲
Relax NG
Sélectionnez
# A RELAX NG compact syntax pattern
# for an address book.
element addressBook {
# an entry in the address book
element card {
element name { text },
element email { text } # an email address
}*
}5-Y. Smalltalk▲
smalltalk
Sélectionnez
| rectangles aPoint|
rectangles := OrderedCollection
with: (Rectangle left: 0 right: 10 top: 100 bottom: 200)
with: (Rectangle left: 10 right: 10 top: 110 bottom: 210).
aPoint := Point x: 20 y: 20.
collisions := rectangles select: [:aRect | aRect containsPoint: aPoint].5-Z. XSL▲
XSL
Sélectionnez
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" omit-xml-declaration="yes" indent="no" encoding="ISO-8859-1"/>
<xsl:template match="code" mode="code">
<xsl:choose>
<xsl:when test="count(./ligne)>0">
<ol style="overflow: auto;" id="contenuCode{generate-id(.)}">
<xsl:call-template name="create-empty-lines">
<xsl:with-param name="nbLignes" select="./ligne/@num"/>
</xsl:call-template>
<xsl:apply-templates select="./ligne" mode="code"/>
</ol>
</xsl:when>
<xsl:otherwise>
<pre id="contenuCode{generate-id(.)}"><xsl:apply-templates select="./* | text()" mode="code"/></pre>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="*" mode="code">
<xsl:if test="not(name(.) = 'code') and not(name(.) = 'ligne')">
<xsl:element name="span">
<xsl:attribute name="class"><xsl:value-of select="name(.)"/></xsl:attribute>
<xsl:value-of select="."/>
</xsl:element>
</xsl:if>
</xsl:template>
<xsl:template match="ligne" mode="code">
<li class="ligne_code"><pre><xsl:apply-templates select="./* | text()" mode="code"/><xsl:value-of select="' '"/></pre></li>
</xsl:template>
<xsl:template name="create-empty-lines">
<xsl:param name="nbLignes"/>
<xsl:if test="$nbLignes>1">
<li class="ligne_code_vide"></li>
<xsl:call-template name="create-empty-lines">
<xsl:with-param name="nbLignes" select="$nbLignes - 1"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
</xsl:stylesheet>

