Page 5 sur 20

Publié : jeu. 06/janv./2005 15:54
par Coolman
Ce debat commence a devenir interessant bien qu'il y'ait assez peu d'intervenants, mais c'est deja ca :lol:

Concernant realbasic, je viens de recevoir (je me suis enregistre hier pour la version demo) par email une offre de remise sur la version standard et pro de -10 %... des rapides :lol:

Publié : jeu. 06/janv./2005 17:38
par garzul
Bonjour tout le monde =),

pour : Je fais aussi du C et du C++ mais je te rectifierais en disant que c'est plutot lorsque l'on commence à programmer des interfaces graphiques que ces langages sont "chiants" (en fait ce sont plutot les apis à la microsoft qui le sont).
Comme pour le VB, l'idéal est de faire la partie graphique en PureBasic et la partie "core" ou les parties critiques en C/C++, ce qui ne te demandera pas beaucoup plus de temps.


Oui c'est vrai que quand on à a programmer des interfaces graphiques le C++ est trés chiant mais au niveau de la 3D ou 2D ( SDL et OpenGL ) la performance est la et ce n'est pas si dur de programmer en C++ , on s'habitue vite :P

Publié : jeu. 06/janv./2005 18:13
par Oliv
Good07 a écrit : Et en plus avoir directement l'auteur en ligne c'est un ++ que l'on peut toujours chercher chez Microsoft où ailleurs !
C'est sur que c'est plus, apparament identique pour IBasic, mais c'est pas comparable à VB (ce language je l'ai testé une fois, mais pas longtemps :twisted: ) puisque pour VB je suppose qu'il doit y avoir ubn nombre importants de programmeurs.

Publié : jeu. 06/janv./2005 18:44
par Coolman
J'avais deja fait cette remarque en haut de ce post, je recommence, le post de garzul m'etonne un peu concernant le code generé, est ce que purebasic est plus lent que le c, a priori le compilo genere de l'assembleur (bon un assembleur formaté et peut etre moins optimisé, ca depend de l'auteur) et tout le monde sait que ce language est plus rapide, quelqu'un a deja testé des routines equivalentes en pureb et c pour se faire une idee (par exemple des boucles for-next avec calcul arthmetiques simples sur des entiers, entiers long et reels) !!

Je ne peux pas le faire avec la version demo de pureb, le code n'est pas optimisé (code de deboguage present si je ne me trompe pas), j'ouve que ca m'interesserait de voir ce qui en ressort...

:lol:

Publié : jeu. 06/janv./2005 18:53
par bernard13
bonsoir
je viens d'acheter IbasicPro
c'est pas mal du tou comme programme

Publié : ven. 07/janv./2005 11:43
par Good07
Bonjour Nico

Mon expérience sous Ibasic Pro n'est pas assez importante pour pouvoir te répondre. En fait j'ai acheté Ibasic pro parce qu'il manipule les chiffres en double précision et que j'en avais besoin pour une application bien particulière. je voulais utiliser une Dll qui avait besoin qu'on lui transmette des variables en double précision mais je n'ai pas réussi non plus à l'utiliser avec ce language. J'ai essayé de voir si je ne trouvais pas mon bonheur sur le forum, mais ma faible connaissance de l'anglais ne m'a pas incité à continuer. Pour le reste ce language à effectivement quelques atouts. j'ai d'ailleurs regardé un exemple assez sympatique qui utilise une interface avec des boutons qui autorise l'utilisation de n'importe qu'elle police dans n'importe qu'elle couleur. J'ai téléchargé ton exemple sous Pure qui fonctionne très bien sous XP SP2. Si tu peux faire une librairie sous Pure je suis preneur.
Pour le compilateur de Ibasic je suis d'accord avec toi. Il manque de maturité et surtout d'ergonomie.
J'ai aussi oublié dans la liste des basics que je possède : Liberty Basic.
Mais là la syntaxe est est assez déroutante pour du Basic avec une utilisation du mot print à toutes les sauces. Et je ne parle pas de la création d'un exécutable... :(

Très bon sujet de discussion, que je suis avec intérêt... 8O


A+

André.

Publié : ven. 07/janv./2005 12:35
par hardy
Tu peux sans problème utiliser des DLL demandant des "doubles":

Ce que tu donne à la DLL, c'est l'adresse du nombre.

Fais:

structure double
low.l
high.l
endstructure

a.double
a\low=...
a\high=...

et callfunction(...,@a,...)

De même, on arrive à récupérer des doubles renvoyés par une DLL, en faisant:
a\low=callfunction(...)
le champ a\high se remplira aussi, car la procédure écrit 8 octets à l'adresse de a\low, qui est celle de a.

Publié : ven. 07/janv./2005 13:24
par Coolman
bernard13 a écrit :bonsoir
je viens d'acheter IbasicPro
c'est pas mal du tou comme programme

Salut, tu pourrais developper un peu les avantages et les inconvenient par rapport a purebasic :lol:

Publié : ven. 07/janv./2005 17:50
par bernard13
message a coolman
j'ai acheter Ibasicvesion pro parceque j'ai vu qu'on peux mettre du text en couleur en autre

Publié : ven. 07/janv./2005 17:53
par Oliv
bernard13 a écrit :message a coolman
j'ai acheter Ibasicvesion pro parceque j'ai vu qu'on peux mettre du text en couleur en autre
ça fait chère pour pas grand chose, surtout que c'est possible avec pure :wink:

Publié : sam. 08/janv./2005 12:34
par bernard13
dis moi oliv

comment tu mets de la couleur dans les gadgets? en purebasic

Publié : sam. 08/janv./2005 12:36
par Aranoth
tu peut passer par l'API

Publié : sam. 08/janv./2005 16:35
par Oliv
bernard13 a écrit :dis moi oliv

comment tu mets de la couleur dans les gadgets? en purebasic
Oui, avec les API, il y a des exemples sur www.purearea.net, le principe est donné, après c'est la même chose pour tous les gadgets

Publié : ven. 14/janv./2005 11:07
par Coolman
J'ai trouve ce benchmark entre purebasic et la Beta de Blitzmax sur le forum anglais officiel de pure, j'ai essayé le code source purebasic, mais ca ne fonctionne pas avec la version demo, je trouve les resultas surprenants, quelqu'un peut confirmer ces donnees :



************************************************
For those interested in benchmark results ..

SIEVE OF ERATOSTHENES test - PureBasic Vs BlitzMax (win32 Beta):

Code:

Interations PureBasic BMax Beta
5000 1131 m/sec 477 m/sec
10000 2344 m/sec 942 m/sec
15000 3385 m/sec 2869 m/sec
20000 4476 m/sec 3793 m/sec
25000 5678 m/sec 4833 m/sec
30000 6799 m/sec 5690 m/sec


BlitzMax Source:
Code:
' Ported from another Basic for benchmarking purposes...
' Blitz Max version

Strict
Local t,Iter,Count,i,prime,k

Const ITERATIONS = 5000

Local Flags [8191]
Print "SIEVE OF ERATOSTHENES - " + ITERATIONS + " iterations"

t = MilliSecs ()

For Iter = 1 To ITERATIONS

Count = 0

For I = 0 To 8190
Flags = 1
Next

For I = 0 To 8190
If Flags=1 Then
Prime = I + I
Prime = Prime + 3
K = I + Prime
While K <= 8190
Flags[K] = 0
K = K + Prime
Wend
Count = Count + 1
EndIf
Next

Next

t = MilliSecs () - t

Print (ITERATIONS)+" iterations took "+(t)+" m/secs."
Print "Primes: "+(Count)
End


PureBasic Source:
Code:
; Ported from another Basic For benchmarking purposes...
; PureBasic version

OpenConsole()

#ITERATIONS=5000

Dim Flags(8191)
Print("SIEVE OF ERATOSTHENES - "+Str(#ITERATIONS)+" iterations")
ConsoleLocate(0,2)

t=GetTickCount_()

For Iter = 1 To #ITERATIONS

Count = 0

For I = 0 To 8190
Flags(I) = 1
Next

For I = 0 To 8190
If Flags(I)=1
Prime = I + I
Prime = Prime + 3
K = I + Prime
While K <= 8190
Flags(K) = 0
K = K + Prime
Wend
Count = Count + 1
EndIf
Next

Next

t=GetTickCount_()-t
Print(Str(#ITERATIONS)+" iterations took "+Str(t)+" m/secs.")
ConsoleLocate(0,3)
Print("Primes: "+Str(Count))

Delay(3000)
End

************************************************

Publié : ven. 14/janv./2005 13:19
par Anonyme2
Peut-être que le débugger sous PureBasic n'a pas été désactivé ce qui augmente considérablement le temps lors de tels tests.