What will coming with PB 4.0 ??

Everything else that doesn't fall into one of the other PB categories.
aisman
New User
New User
Posts: 7
Joined: Thu Nov 13, 2003 7:48 am

What will coming with PB 4.0 ??

Post by aisman »

Hello Fred,
Sorry for the question about the new features wich will come with PB4.0
Can you give use a short "will do" list of PB 4.0 too?

Here are my short list of have to have with PB4.0:
- DirectX 9.0 support (Windows only)
- more OOP (will be great)
- "faster"

One of the reasons for a great PB 4.0 have to be the competitions:
- BlitzBasic
- GLBasic
- etc...
LarsG
Enthusiast
Enthusiast
Posts: 713
Joined: Mon Jun 02, 2003 1:06 pm
Location: Norway
Contact:

Post by LarsG »

I vote for more sexy women in lingerie... :wink:

AMD Athlon XP2400, 512 MB RAM, Hercules 3D Prophet 9600 256MB RAM, WinXP
PIII 800MHz, 320 MB RAM, Nvidia Riva Tnt 2 Mach 64 (32MB), WinXP + Linux
17" iMac, 1.8 GHz G5, 512 MB DDR-RAM, 80 GB HD, 64 MB Geforce FX 5200, SuperDrive, OSX
aisman
New User
New User
Posts: 7
Joined: Thu Nov 13, 2003 7:48 am

Post by aisman »

@LarsG,
Here my short hint about your deepest whishes:
Go outsite your programming room, step around for a long while. Look here! Look there! Ask lot of people and you will see that your wish will be true :wink: ! Belive me!
User avatar
blueznl
PureBasic Expert
PureBasic Expert
Posts: 6172
Joined: Sat May 17, 2003 11:31 am
Contact:

Post by blueznl »

yeah, it's about time the maid with options function gets implemented
( PB6.00 LTS Win11 x64 Asrock AB350 Pro4 Ryzen 5 3600 32GB GTX1060 6GB - upgrade incoming...)
( The path to enlightenment and the PureBasic Survival Guide right here... )
Dare2
Moderator
Moderator
Posts: 3321
Joined: Sat Dec 27, 2003 3:55 am
Location: Great Southern Land

Post by Dare2 »

LarsG wrote:I vote for more sexy women in lingerie... :wink:
Or even without the lingerie - why add bloat?
@}--`--,-- A rose by any other name ..
Kale
PureBasic Expert
PureBasic Expert
Posts: 3000
Joined: Fri Apr 25, 2003 6:03 pm
Location: Lincoln, UK
Contact:

Post by Kale »

Or even without the lingerie - why add bloat?
:twisted: ROFLMAO!
--Kale

Image
Kale
PureBasic Expert
PureBasic Expert
Posts: 3000
Joined: Fri Apr 25, 2003 6:03 pm
Location: Lincoln, UK
Contact:

Post by Kale »

- DirectX 9.0 support (Windows only)
viewtopic.php?t=9637
viewtopic.php?t=9639
- more OOP (will be great)
Its not gonna happen:
viewtopic.php?t=6063
"Faster"
It can't get much faster unless you personally optimise the ASM output by hand.
--Kale

Image
Kale
PureBasic Expert
PureBasic Expert
Posts: 3000
Joined: Fri Apr 25, 2003 6:03 pm
Location: Lincoln, UK
Contact:

Post by Kale »

Or even without the lingerie - why add bloat?
:twisted: ROFLMAO!
--Kale

Image
MadMax
Enthusiast
Enthusiast
Posts: 237
Joined: Mon Oct 06, 2003 11:56 am

Post by MadMax »

This OOP stuff discusion, well. I'm just a humble self-taught programer. So I just don't know what this OOP .NET etc is.

I have a couple of books around c++, and when they talk OOP, they just start talking about cats and dogs and hamsters, or maybe cars , wheels, brakes... etc And constructions and destructions, inheritances. Sure this is cool, but I just can't relate to it. Sounds like an episode from "Dallas"( a quite popular 80's TV show, I never watched much, so I realy never understood what it was all about).

On the other hand, I have sometimes comented, that I would like this or that feature in a programing language, and I have been told that was OOP.

So maybe if some of the OOP advocates, could explain in plain English, with some practical example, what this OOP business is. Then maybe and only maybe we could see the benefit of this.
peter
New User
New User
Posts: 8
Joined: Thu Apr 08, 2004 7:56 pm

Post by peter »

OOP sucks (This is my opinion)
THOUGH i must admit that sometimes OOP or .NET features like passing an array to a functions are very handy. But better learn how to use pointers for that I think.

Compiled code is big and slow.

Some guys don't even know how to program without OOP.
Better learn how a computer works before adding/using abstraction layers.

And I don't agree with people saying that OOP programming is better for large programs like massive databases.
One can make their own object structures as well just with procedural programming. This generally compiles much better than sucky OOP code.

Besides pointers are powerfull enough to do about everything you want fast and easy.
Justin
Addict
Addict
Posts: 956
Joined: Sat Apr 26, 2003 2:49 pm

Post by Justin »

the problem is you can't use poiners with arrays or lists in pure, and they are global. you can create your own lists and work with pointers but arrays is another history.

once you get used to OOP it's better IMO, it's basically a way to keep everything sorted and reduce globals, the code tends to be easier to mantain. but i would prefer other things before improving OOP like

on explicit option

larger var types, unsigned, etc..

acces lists/arrays through pointers

macros

not operator
El_Choni
TailBite Expert
TailBite Expert
Posts: 1007
Joined: Fri Apr 25, 2003 6:09 pm
Location: Spain

Post by El_Choni »

You can still do some fancy things with arrays in PureBasic (maybe not documented and therefore not safe to use in the future):

Code: Select all

Cols = 4
Rows = 20
TestRow = 15
TestCol = 3
TestValue$ = "My string"

Dim MyStrArray$(Cols, Rows)

MyStrArray$(TestCol, TestRow) = TestValue$

Dim *MyArray(Cols, Rows) ; <-- I'm afraid this allocates memory anyway

FreeMemory(*MyArray()) ;  <-- so let's free it ;)

*MyArray() = AllocateMemory(4*(Cols+1)*(Rows+1)) ; <-- nice trick, huh?

TestValue = 88

PokeL(*MyArray()+(TestCol*(Rows+1)*4)+(TestRow*4), TestValue)
; same as *MyArray(TestCol, TestRow) = TestValue
; useful, for example, to change pixels in an image
; when you have access to the bitmap bits

Debug *MyArray(TestCol, TestRow)

Dim *MyArray(Cols, Rows) ; <-- this zeroes all memory pointed by the array

Debug *MyArray(TestCol, TestRow)

FreeMemory(*MyArray()) ; <-- don't forget we've allocated our own array memory

*MyArray() = @MyStrArray$()

Debug PeekS(*MyArray(TestCol, TestRow))

Dim *My2ndStrArray.s(Cols, Rows) ; <-- but we can also point directly a string array

FreeMemory(*My2ndStrArray()) ; <-- free it

*My2ndStrArray() = @MyStrArray$() ; <-- and point it again to the original string array

Debug *My2ndStrArray(TestCol, TestRow)

; You can also use it with structures:

Structure MyStruc
  val1.l
  val2.l
  val3.l
EndStructure

Dim MyStructuredArray.MyStruc(Cols, Rows)
Dim *MyStrucArray.MyStruc(Cols, Rows)

; But in this case we don't free the array memory

MyStructuredArray(TestCol, TestRow)\val1 = 1
MyStructuredArray(TestCol, TestRow)\val2 = 2
MyStructuredArray(TestCol, TestRow)\val3 = 3

; because we need it to store the pointers
; to the structures, which are not stored in
; a regular structured array...

For i=0 To Cols
  For j=0 To Rows
    *MyStrucArray(i, j) = @MyStructuredArray(i, j)
  Next j
Next i

; Otherwise, the following would cause an illegal access

Debug *MyStrucArray(TestCol, TestRow)\val1
Debug *MyStrucArray(TestCol, TestRow)\val2
Debug *MyStrucArray(TestCol, TestRow)\val3
El_Choni
dmoc
Enthusiast
Enthusiast
Posts: 739
Joined: Sat Apr 26, 2003 12:40 am

Post by dmoc »

Nice example EC! I hope Fred will confirm if this sort of manipulation is safe or not.
Shannara
Addict
Addict
Posts: 1808
Joined: Thu Oct 30, 2003 11:19 pm
Location: Emerald Cove, Unformed

Post by Shannara »

There was a thread somewhere awhile back concerning PB 4.0 and above.... gotta love the Mac OSX support coming soon... hopefully after PB is actually on the level of itself... bleh..

Somethings to be aware of...

1. Looks like Fred is working on 3.90 for linux, and 3.91 for Windows (as according to the roadmap)

2. All 4 platforms will be uptodate for 3.91... which means there should be a sprite3d for both Linux and MacOSX... though I dont see how it would be possible for Amiga, but it's on the roadmap, hehe, should be interesting



Reference: viewtopic.php?t=10125&highlight=roadmap
Post Reply