Page 3 of 4

Posted: Thu Oct 04, 2007 9:31 pm
by nco2k
we all know that purebasic will rule the world in 10-15 years ehehe. 8)

c ya,
nco2k

Posted: Thu Oct 04, 2007 9:36 pm
by Irene
Vin wrote:That sounds pretty cool, Irene, but...

Consider these things when labeling a language a systems development language: Can you create a bootable OS with it alone? Can you use it for Emedded Systems? Does it produce fast, small compact code that require minimal RAM and CPU usage? I'm not saying poorly written C++ can't take up all the RAM and CPU usage available but I am talking about ability. For example, C\C++ would be used for developing embedded systems (like a car computer or a cell phone) where RAM and CPU speed is highly limited. I wouldn't label Fortran as being able to fulfill all those needs. This doesn't mean a language can't be used for directly accessing hardware. PureBasic can do this.
Well the GCFortran project is pretty old but it was possible to write a bootable OS for the Nintendo GameCube with it. I don't think it could be used on embedded systems but that is mainly because my goal was to do something else. The GCFortran compiler compiled fast and small executables. I was even able to make a import game enabler with only 70 lines of code and a executable size of 15Kb making it possible to be incorporated into Mentalcube's Cobra BIOS too for the ViperGC. ^o^

Posted: Thu Oct 04, 2007 9:44 pm
by Vin
Irene, that's pretty geeky for a beautiful Korean girl living in Finland. :shock: 8)

Posted: Thu Oct 04, 2007 10:03 pm
by Irene
Vin wrote:Irene, that's pretty geeky for a beautiful Korean girl living in Finland. :shock: 8)
I warned you guys! ^o^

Design and perfection is amongst others in top priority but so is my coding hobby ^_^

Posted: Thu Oct 04, 2007 10:14 pm
by djes
Fortran is often used for maths & scientific operations. I like diversity :)

Posted: Thu Oct 04, 2007 10:58 pm
by Irene
djes wrote:Fortran is often used for maths & scientific operations. I like diversity :)
Me too ^o^

Posted: Fri Oct 05, 2007 12:33 pm
by Trond
Irene wrote:
Trond wrote:
Vin wrote:C and C++ are still the languages of choice for system's applications (inc. OS development) and embedded systems.
I wouldn't call it the language of "choice" because there's really no other choices if you want to do those things... :)
Sure there are. Me and some friends (mostly guys if you're curious ^o^) ported GNU Fortran to the Nintendo GameCube way back in 2002 or so.. It wasn't pretty usable but we did get a fully functional SD card manager done to be used in conjuction with an SD Gecko. O_O

PS: Do I sound too geeky here? I hope not ^_^
Aww, I forgot Fortran. But at the time C became popular Fortran 77 was still the version in use, which uses a fixed column formatting. No wonder why C became popular.

Posted: Tue Oct 09, 2007 3:24 pm
by Sebe
C is cool and I like it very much. C++ is crap and imho ObjC is the better OOP approach to C. :?
Still, I mainly do C this days because the only OS you can really code apps and stuff with ObjC is Mac OS X 8)

Posted: Tue Oct 09, 2007 4:01 pm
by hardfalcon
Hmmm, PureBasic is a damn fine language considering that you get very small, fairly optimized and pretty fast executables with only very little source code you have to type (How much code would it take to open write a program with just a simple bloody window and a button gadget in C or C++?).
But when it comes to *really* limited devices (for example our graphical calculator at school, a Texas Instruments Voyage 200, 12Mhz Motorola 68k CPU, only a few hundred kbytes of available RAM), a language like PureBasic simply can't optimize the program enough for you. You reach a point where you got to write code which is more low level but also more optimized bothin matters of speed and size than an automism provided by a compiler could ever do. Thats why the V200 homebrew is developed either in C (and compiled with the V200 port of gcc), or even written in plain 68k assembly.

Posted: Tue Oct 09, 2007 4:40 pm
by Nik
Well you can't compare Purebasic to C or C++, the part of Purebasic that is comparable is only very small and in this area C/C++/ObjC have many advantages too. Purebasic is more like a framework, consider that technically could also be used by C or C++.
If you want to compare Purebasic to C++ or C you will have to compare it to library and framework systems for exampel you could compare Purebasic with Qt4, or with Gtk/Glib, under Windows the situation is a little bit different ebcause only few people program on bare WinAPI (which itself is pretty old and clumsy).

Posted: Tue Oct 09, 2007 9:23 pm
by chen
Irene wrote:Me and some friends (mostly guys if you're curious ^o^) ported GNU Fortran to the Nintendo GameCube way back in 2002 or so.. It wasn't pretty usable but we did get a fully functional SD card manager done to be used in conjuction with an SD Gecko. O_O

PS: Do I sound too geeky here? I hope not ^_^
Then, you were 13 years old!!!.... Awesome!!!... and that age I only
wanted to play soccer with my friends :lol:

Posted: Tue Oct 09, 2007 9:37 pm
by Irene
chen wrote:
Irene wrote:Me and some friends (mostly guys if you're curious ^o^) ported GNU Fortran to the Nintendo GameCube way back in 2002 or so.. It wasn't pretty usable but we did get a fully functional SD card manager done to be used in conjuction with an SD Gecko. O_O

PS: Do I sound too geeky here? I hope not ^_^
Then, you were 13 years old!!!.... Awesome!!!... and that age I only
wanted to play soccer with my friends :lol:
Hahaha ^o^

The guys where then 15-17 years old, so they're now about 20 years old ^_^
My part in that project was to develop the interface to the manager, the guys did the I/O stuff ^o^

Posted: Tue Oct 09, 2007 9:47 pm
by Ollivier
r_hyde wrote:
Trond wrote:But you don't need Peek/Poke. Just use a variable called *Pointer.LONG. *Pointer is the pointer and *Pointer\l is the value.
Wow, how'd I ever miss that? That'll sure come in handy!
(page 2, excuse me...)
An example of application I posted for tinman, not using peek and poke

Code: Select all

; By Ollivier 
Structure PITCH 
      X.L[1024] 
EndStructure 

Structure BUFFER 
      Y.PITCH[768] 
EndStructure      

InitSprite() 
InitKeyboard() 
InitMouse() 
Dim _Cos(511) 
Dim _Sin(511) 
For i = 0 To 511 
      Angle.F = i * #PI / 256.0 
      _Cos(i) = Cos(Angle) * 200.0 
      _Sin(i) = Sin(Angle) * 200.0      
Next 

Dim *Buff(1) 

OpenScreen(1024, 768, 32, "") 

      StartDrawing(ScreenOutput() ) 
            *Buff(0) = DrawingBuffer() 
      StopDrawing() 
      FlipBuffers() 
      
      StartDrawing(ScreenOutput() ) 
            *Buff(1) = DrawingBuffer() 
      StopDrawing() 
            
      CX = 512 
      CY = 384 
      Repeat 
            Delay(20) 
            ExamineMouse() 
            MDX = MouseDeltaX() 
            MDY = MouseDeltaY() 
            If MDX Or MDY Or 1 
                  CX + MDX 
                  CY + MDY 
                  ClearScreen(0) 
                  StartDrawing(ScreenOutput() ) 
                        FlipBuffer = 1 - FlipBuffer 
                        *Buffer.BUFFER = *Buff(FlipBuffer) 
                        For i = 0 To 255 
                              p = i 
                              p + n 
                              p & 511 
                              For j = 0 To 511 - 7 Step 8 
                                    k = j 
                                    k + m 
                                    X = CX + _Cos(p) 
                                    Y = CY + _Sin(p) 
                                    X + _Cos(k) >> 1                                    
                                    Y + _Sin(k) >> 1 
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
                                    X & 1023 ; Sécurity #1 
                                    If (Y <= 767) And (Y => 0) ; Security #2 
                                          *Buffer\Y[Y]\X[X] = $FFFFFF ; =Plot/Point 
                                    EndIf 
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
                              Next 
                        Next 
                        m + 1 
                        m & 7 
                        n - 1 
                        n & 511 
                  StopDrawing()  
                  FlipBuffers()                
            EndIf 
            ExamineKeyboard() 
      Until KeyboardPushed(#PB_Key_Escape) 
CloseScreen() 

Posted: Mon Oct 15, 2007 12:58 am
by Dare
C Sucks is the next generation of C ... C, C++, Csucks.

Posted: Mon Oct 15, 2007 1:07 am
by srod
Rapidly followed by 'C stinks' !

:)

Hang on a minute I like C !