Macro ?

Vous avez une idée pour améliorer ou modifier PureBasic ? N'hésitez pas à la proposer.
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Macro ?

Message par Anonyme2 »

Salut Fred,

tu as déjà pensé à introduire la possibilité d'utiliser des macros c'est-à-dire quelque chose comme ça

Code : Tout sélectionner

Macro Essai
  a = 17
  c = 15
  Messagerequester("Essai","Macro", 64)
EndMacro
Et chaque fois que l'on écrit Essai, le compliateur mettra le code correspondant à la macro.
On pourrait aussi passer des paramètres à la macro.

C'est différent d'une procédure car c'est plus rapide et on pourrait utiliser ce type de macro lorsque la vitesse devient un point critique etc.
filperj
Messages : 395
Inscription : jeu. 22/janv./2004 1:13

Message par filperj »

Je vote pour :wink:
Le chaos l'emporte toujours sur l'ordre
parcequ'il est mieux organisé.
(Ly Tin Wheedle)
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

moi aussi, si ça va plus vite.

une question, quand est-il de la taille du fichier et la taille utilisé en mémoire avec un tel procédé ?
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

moi aussi je suis pour :D
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Je pense que Fred connait car les macros existent en assembleur, tout du moins ceux que j'ai déjà utilisés.

Juste pour dire que ca ne remplace pas une procédure, c'est fait pour accélerer certaines actions sans avoir à réécrire le code, c'est juste une simplification d'écriture.
filperj
Messages : 395
Inscription : jeu. 22/janv./2004 1:13

Message par filperj »

Un genre de copier-coller évolué, en gros.
Mais avec des paramètres.
Le chaos l'emporte toujours sur l'ordre
parcequ'il est mieux organisé.
(Ly Tin Wheedle)
Patrick88
Messages : 1564
Inscription : mer. 21/janv./2004 18:24

Message par Patrick88 »

on peux enrichir la syntaxe de certain langage en ajoutant des fonctions, mais peut'on l'enrichir également au niveau des déclarations ( hors constantes) comme les types de variables :?:

par exemple les différentes versions de pascal qui ont été écrites avec la version pascal précédente...

Patrick
Dräc
Messages : 526
Inscription : dim. 29/août/2004 0:45

Message par Dräc »

@Fred: bien qu'il soit possible d'utiliser l'instruction assembleur !macro, comptes-tu l'intégrer dans le jeu des commandes PB et lui offrir les mêmes commodités qu'une procédure?
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

existe déjà

Code : Tout sélectionner

!macro test 
!{ 
MessageRequester("test","hello") 
!} 


! test 
! test

comtois
Messages : 5190
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

Fred avait annoncé les macros pour la version 4 , va falloir attendre encore quelques mois :)
KarLKoX
Messages : 1191
Inscription : jeu. 26/févr./2004 15:36
Localisation : France
Contact :

Message par KarLKoX »

Je vote pour :)
Et quitte à en avoir, autant avoir un bon support avec des macros du type ##_macro comme en C/C++ pour pouvoir remplacer ## à notre guise.
"Qui baise trop bouffe un poil." P. Desproges
Dräc
Messages : 526
Inscription : dim. 29/août/2004 0:45

Message par Dräc »

Peux-tu etre plus explicite KarLKoX svp?
freddix
Messages : 101
Inscription : dim. 08/févr./2004 19:37

Message par freddix »

une macro peut ressembler à une procédure ( à l'exception que c un peu + rapide mais le .exe sera un peu + gros

Je me rappelle, sur Amiga avec le macro assembleur DEVPAC je faisais les macros dans le style :

MACRO MyMacro( /1, /2 )
A = /1 + /2
Print A
ENDM

ca remplace automatiquement les /1, /2 par ce que je rentre dans mon programme par exemple :

MyMacro( 50, 100 )

Donnerait une fois compilé :

A = 50 + 100
Print A

ce serait le top mais nul n'est nécessaire de l'inclure dans le compiler de pure mais peut-être dans l'éditeur ?
Dräc
Messages : 526
Inscription : dim. 29/août/2004 0:45

Message par Dräc »

Les macros sont prévues pour la v4 et sera une instruction du compilateur...
CameleonTH
Messages : 333
Inscription : sam. 25/juin/2005 11:18
Localisation : Laon (02)
Contact :

Message par CameleonTH »

C'est bien beau tous sa mais je comprend pas bien ce que les macro on de plus que les procédures.
Répondre