![]() |
![]() |
#21 |
cheeky scoundrel
Join Date: Nov 2004
Location: Spijkenisse/Netherlands
Age: 43
Posts: 7,126
|
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?
|
![]() |
![]() |
#22 |
Registered User
Join Date: May 2023
Location: Norwich
Posts: 531
|
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.
|
![]() |
![]() |
#23 |
Lemon. / Core Design
Join Date: Mar 2016
Location: Tier 5
Posts: 1,221
|
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) |
![]() |
![]() |
#24 |
Lemon. / Core Design
Join Date: Mar 2016
Location: Tier 5
Posts: 1,221
|
Nowadays, my day to day paid work is C# which is the best language ever created. really!
![]() |
![]() |
![]() |
#25 |
Computer Nerd
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,975
|
|
![]() |
![]() |
#26 |
Computer Nerd
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,975
|
|
![]() |
![]() |
#27 | |
Registered User
Join Date: May 2023
Location: Norwich
Posts: 531
|
Quote:
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. |
|
![]() |
![]() |
#28 |
Computer Nerd
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,975
|
|
![]() |
![]() |
#29 |
Registered User
Join Date: May 2023
Location: Norwich
Posts: 531
|
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. |
![]() |
![]() |
#30 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
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. |
![]() |
![]() |
#31 | |||||||
Registered User
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,419
|
Quote:
![]() Quote:
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:
![]() Quote:
![]() Quote:
Quote:
Quote:
It seems like you're basing all your judgements on your familiarity with QBasic and lack of familiarity with other languages. |
|||||||
![]() |
![]() |
#32 |
Registered User
Join Date: Aug 2006
Location: Scunthorpe/United Kingdom
Posts: 2,190
|
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 ![]() ![]() ![]() |
![]() |
![]() |
#33 | ||
Computer Nerd
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,975
|
Quote:
Quote:
This is rather illuminating: Why Pascal is Not My Favorite Programming Language |
||
![]() |
![]() |
#34 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
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. |
![]() |
![]() |
#35 | |
Computer Nerd
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,975
|
Quote:
Just look for game engines. Unity and Godot support C#, for example. |
|
![]() |
![]() |
#36 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
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.
|
![]() |
![]() |
#37 | ||
Also known as GarethQ
Join Date: May 2019
Location: Twickenham / U.K.
Posts: 750
|
Quote:
Quote:
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. |
||
![]() |
![]() |
#38 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
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. |
![]() |
![]() |
#39 |
Global Moderator
Join Date: Sep 2006
Location: Germany
Age: 46
Posts: 32,594
|
But... an object *is* an instance of a class. Maybe if you would understand what that actually means it wouldn't be pretentious.
|
![]() |
![]() |
#40 | |
Computer Nerd
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 48
Posts: 3,975
|
Quote:
You don't really know what object orientation is, do you? |
|
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
![]() |
||||
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 |
|
|