English Amiga Board


Go Back   English Amiga Board > Main > Retrogaming General Discussion

 
 
Thread Tools
Old Yesterday, 23:16   #21
gimbal
cheeky scoundrel
 
gimbal's Avatar
 
Join Date: Nov 2004
Location: Spijkenisse/Netherlands
Age: 43
Posts: 7,066
Quote:
Originally Posted by AestheticDebris View Post
I'd personally say you learn a lot better coding in Pascal and it's not that much harder (though it is a lot stricter).
Pascal was fantastic, that's how I learned programming. And why I love Google's Go language nowadays, it has a very strong Pascal vibe doing as much as possible with as little syntax as possible. But was that available for the machines that are in context here?
gimbal is offline  
Old Yesterday, 23:46   #22
AestheticDebris
Registered User
 
Join Date: May 2023
Location: Norwich
Posts: 517
Quote:
Originally Posted by gimbal View Post
Pascal was fantastic, that's how I learned programming. And why I love Google's Go language nowadays, it has a very strong Pascal vibe doing as much as possible with as little syntax as possible. But was that available for the machines that are in context here?
There were definitely variants of Pascal for the Spectrum and Amstrad (Hisoft for example). I'd be surprised if there wasn't for the C64. Compiled languages really did need better storage than cassette to be usable though, so that was a limitation on largely tape based systems.
AestheticDebris is offline  
Old Today, 00:27   #23
DanScott
Lemon. / Core Design
 
DanScott's Avatar
 
Join Date: Mar 2016
Location: Tier 5
Posts: 1,217
BASIC (i first encountered it on ZX81 then ZX Spectrum), certainly gave me insight into programming logic (that's a really important concept to think about). Sure there was no OOP in basic, but then there isn't in assembly either.

I'd say that the initial foray into basic definitely helped the next step up to assembly on Amiga (with a few years concentrating on gfx between)
DanScott is offline  
Old Today, 00:29   #24
DanScott
Lemon. / Core Design
 
DanScott's Avatar
 
Join Date: Mar 2016
Location: Tier 5
Posts: 1,217
Nowadays, my day to day paid work is C# which is the best language ever created. really!
DanScott is offline  
Old Today, 09:00   #25
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,937
Quote:
Originally Posted by gimbal View Post
Pascal was fantastic
Doesn't Pascal have that thing where the length of an array is part of it's type so you can't pass arrays of any length to functions?
Thorham is offline  
Old Today, 09:00   #26
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,937
Quote:
Originally Posted by DanScott View Post
Nowadays, my day to day paid work is C# which is the best language ever created.
Yeah, C# is pretty nice.
Thorham is offline  
Old Today, 09:11   #27
AestheticDebris
Registered User
 
Join Date: May 2023
Location: Norwich
Posts: 517
Quote:
Originally Posted by Thorham View Post
Doesn't Pascal have that thing where the length of an array is part of it's type so you can't pass arrays of any length to functions?
Initially, yes. Later versions soon adopted dynamic length arrays and the ability to pass any array as a parameter with the ability to read the size from it.

It wasn't uncommon in BASIC dialects of the time to require array size to be fixed though and you couldn't pass parameters at all, so it wasn't that big a difference.
AestheticDebris is offline  
Old Today, 09:46   #28
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,937
Quote:
Originally Posted by AestheticDebris View Post
Initially, yes.
What was the designer thinking? How utterly bizarre
Thorham is offline  
Old Today, 10:04   #29
AestheticDebris
Registered User
 
Join Date: May 2023
Location: Norwich
Posts: 517
Quote:
Originally Posted by Thorham View Post
What was the designer thinking? How utterly bizarre
When you're dealing with tiny amounts of RAM, the overhead of passing around sizes is not insubstantial. C solved it by ignoring it and letting the coder keep track,, Pascal solved it by enforcing it at compile time, BASIC typically forced it at initialization time and just took the hit doing run time checks.

It wasn't really that big a problem, Pascal can use pointers to typed data structures so you can easily build your own structure for managing dynamic arrays if you really needed it. Plus Pascal had strings that could be variable length, which was probably the most common use case.
AestheticDebris is offline  
Old Today, 11:10   #30
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,884
I don't know Pascal etc

I know there has been a drive to get younger people involved and they create silly little languages etc

The whole scene has been taken over by the most unpleasant condescending people alive, you only have to look at Stackoverflow. I mean most of the time you learn OOP you are just creating some boring App and most of these languages you're not going to be able to create a Pac-Man type game it's just not what there designed for.

It's left a huge gap. I'm not saying I would bother with ZxBasic etc but something like QBasic. They just can't recreate the spirit of BASIC. I have never ever met an OOP coder I liked ever! This is what's missing these aren't complex languages but are borring as hell and the average Jo isn't interested.
Retro1234 is offline  
Old Today, 11:53   #31
Daedalus
Registered User
 
Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,409
Quote:
Originally Posted by Retro1234 View Post
I've said it before and I'll say it again the whole OOP scene is pretentious.
Wat? Why are you splitting things into either BASIC or OOP? They're not mutually exclusive. BASIC can be OOP and other languages can be procedural.

Quote:
Originally Posted by Retro1234 View Post
Global Variables, that's another thing - if you are using the same name variable in different methods/locally that is horrendous. But global variables are considered evil.
Yes, early BASIC variants like those shipped with 8-bit machines tended to use techniques that are frowned upon, but they're also entirely out of date, long surpassed by far newer BASIC dialects with far more modern approaches. Computing hasn't stood still since the '80s. And, don't forget, it's very easy to use global variables in C too, for example.

It's more nuanced than this, but I personally see it as 3 vague "generations" of BASIC that cover most variants:

The first generation used line numbers, was typically interpreted, and relied heavily on Goto/Gosub, global variables and the likes, and didn't typically have any concept of procedures or functions. This was what came built-in on most 8-bit machines, and what many people today cut their teeth on and as a result, still associate with BASIC.

The second generation greatly improved on that when machines and operating systems became more powerful. These had local variables, procedures / functions, structs, dedicated IDEs, compilers, no line numbers. These dialects, while still procedural, sometimes include some features leaning towards an object-based model. This includes QBasic and Blitz Basic as examples.

The third generation is fully OOP, and brings with it various conveniences of modern development methods and APIs. For example, Visual Basic and its derivatives.

Quote:
Originally Posted by Retro1234 View Post
I would disagree strongly. OOP programmers like to think it's a lot more complicated etc but in reality a lot! Of the terms etc originated in BASIC. In my humble opinion so much of it is just pretentious nonsense.
Wat?

Quote:
So the original question - I would say a lot of "normal" people can't grasp programming and it's a problem. A quick couple of lessons on something like QBasic and probably anyone can grasp coding
Again, wat? There's a whole lot that's wrong with this, and it starts with these massive generalisations you keep making.

Quote:
Originally Posted by Retro1234 View Post
I don't know Pascal etc

I know there has been a drive to get younger people involved and they create silly little languages etc
What makes a new language more or less silly than BASIC, for example?

Quote:
The whole scene has been taken over by the most unpleasant condescending people alive, you only have to look at Stackoverflow. I mean most of the time you learn OOP you are just creating some boring App and most of these languages you're not going to be able to create a Pac-Man type game it's just not what there designed for.
Is this based on personal opinion? To be perfectly honest, there are times you haven't been the best at communication in the past in these forums. Perhaps you're not asking questions clearly enough on Stack Overflow to be getting the results you want? Aside from that, the internet will always have plenty of people being condescending towards anyone not in line with their thinking. This isn't an OOP-specific thing - far from it.

Quote:
It's left a huge gap. I'm not saying I would bother with ZxBasic etc but something like QBasic. They just can't recreate the spirit of BASIC. I have never ever met an OOP coder I liked ever! This is what's missing these aren't complex languages but are borring as hell and the average Jo isn't interested.
Again with the generalisations. What makes QBasic more exciting than Python, for example? It's an awful example to be honest - an ugly editor from MS-DOS days, clunky keyboard shortcuts and help documentation, and results will bear little resemblance to what people see as everyday programs and games. It was decent enough back in the day (I used it a fair bit, along with QC), but it's a terrible idea for trying to get someone interested today.

It seems like you're basing all your judgements on your familiarity with QBasic and lack of familiarity with other languages.
Daedalus is online now  
Old Today, 12:44   #32
Dunny
Registered User
 
Dunny's Avatar
 
Join Date: Aug 2006
Location: Scunthorpe/United Kingdom
Posts: 2,159
Here's my BASIC interpreter, written in Pascal: https://www.youtube.com/@ZXDunny/videos

I always wanted Spectrum BASIC but... more. Now I have it. I can do all the things I wanted to do when I was a kid but was too immature to learn asm



Dunny is online now  
Old Today, 13:49   #33
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,937
Quote:
Originally Posted by AestheticDebris View Post
C solved it by ignoring it and letting the coder keep track
The sane way.
Quote:
Originally Posted by AestheticDebris View Post
It wasn't really that big a problem, Pascal can use pointers to typed data structures so you can easily build your own structure for managing dynamic arrays if you really needed it.
It's still a shit design choice.

This is rather illuminating: Why Pascal is Not My Favorite Programming Language
Thorham is offline  
Old Today, 13:59   #34
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,884
I can't comment on Pascal like I say I've never tried it. I mean yeah QBasic isn't fantastic but something along those lines. I know it's still used in India as a teaching tool but anything more up to date is welcome. Like I say I don't like the scene it's all Elon Musk type wierdos So yeah I'm generlizing, there's no fun in it.

I've seen some of the junk on places like Code Academy and things like this were they try and persuade kids there gonna build flappy bird in Java or some nonsense but it's not the same.
Retro1234 is offline  
Old Today, 13:59   #35
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,937
Quote:
Originally Posted by Retro1234 View Post
most of these languages you're not going to be able to create a Pac-Man type game it's just not what there designed for
Like which ones?
Quote:
Originally Posted by Retro1234 View Post
It's left a huge gap. I'm not saying I would bother with ZxBasic etc but something like QBasic.
Just look for game engines. Unity and Godot support C#, for example.
Thorham is offline  
Old Today, 14:03   #36
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,884
Yeah I'm not into prebuilt engines. Yeah I written tile based games in Java Swing and could probably do it in C# but there not really designed for it.
Retro1234 is offline  
Old Today, 14:06   #37
fxgogo
Also known as GarethQ
 
fxgogo's Avatar
 
Join Date: May 2019
Location: Twickenham / U.K.
Posts: 745
Quote:
Originally Posted by Daedalus View Post
Wat? Why are you splitting things into either BASIC or OOP? They're not mutually exclusive. BASIC can be OOP and other languages can be procedural.
That is very true. BBC BASIC for example had procedures/functions. I would say it was easily the best 8bit version of BASIC. Even today, it is an amazingly well designed system.

Quote:
It's more nuanced than this, but I personally see it as 3 vague "generations" of BASIC that cover most variants:
We might need to add two extra generations that preceed the 8bit home micros. If you look at the original BASIC from Dartmouth, it was a language that needed compiling and was mainframe based.

Later, we had the mini-computers and that is where the interpreted approach started to happen, and that was mostly because it was a cost saving over the mainframes.
fxgogo is offline  
Old Today, 14:13   #38
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,884
I wouldnt really callthat OOP. OOP is just a ideology really that suppose to keep code tidy. I wouldn't call C OOP.

I'm all for procedures and methods etc but one you start forcing the idea of this is how we think code should be and we are really clever studying the theory of OOP. Most! People will just walk away. Tidy code is just good practice etc

Stuff like yeah an object is an instance of a class - it's just pretentious
nonsense. I think early C# documentation even said as much.
Retro1234 is offline  
Old Today, 14:28   #39
TCD
HOL/FTP busy bee
 
TCD's Avatar
 
Join Date: Sep 2006
Location: Germany
Age: 46
Posts: 32,448
But... an object *is* an instance of a class. Maybe if you would understand what that actually means it wouldn't be pretentious.
TCD is online now  
Old Today, 14:51   #40
Thorham
Computer Nerd
 
Thorham's Avatar
 
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,937
Quote:
Originally Posted by Retro1234 View Post
Yeah I written tile based games in Java Swing and could probably do it in C# but there not really designed for it.
C# and Java are just general purpose languages. Most games are written in languages that aren't specifically designed for writing games.
Quote:
Originally Posted by Retro1234 View Post
Stuff like yeah an object is an instance of a class - it's just pretentious nonsense. I think early C# documentation even said as much.
You don't really know what object orientation is, do you?
Thorham is offline  
 


Currently Active Users Viewing This Thread: 2 (0 members and 2 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Trying to find variant of this song Flow Res. Kenny Amiga scene 1 11 August 2023 21:58
A1200 case, desktop variant? Malakie Amiga scene 6 11 December 2021 18:12
Preferred Falcon variant eXeler0 Retrogaming General Discussion 19 20 November 2020 00:40
How to specify the game variant used in Arcade Mode? ketschak support.FS-UAE 2 07 March 2014 14:31

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 16:19.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.16835 seconds with 14 queries