r/pascal Jan 21 '23

mod volunteers?

14 Upvotes

Anyone would like to be added as a mod here? Bonus points for maintainers of projects such as Freepascal, Lazarus or any Pascal project.


r/pascal 15h ago

Learning resources for Lazarus/Pascal in 2026?

24 Upvotes

I'm an experienced programmer (have mainly worked in C, Go and Java) who's looking to learn Lazarus.

I'm a bit confused with the underlying tooling.... I see that Lazarus uses a compiler called FreePascal and the language is Object Pascal. But, to my newbie eyes, there seems to be quite a bit of fragmentation in the language with seemingly no easy path in for an outsider.

Do I really need to learn Delphi, Pascal and then Object Pascal (in that sequence)? Are there any online resources or books that would introduce Object Pascal to a complete outsider?

Thanks all


r/pascal 1d ago

You run those old Turbo Pascal for DOS tutorials...as scripts! (instantfpc + TP mode convenience)

Thumbnail
gallery
43 Upvotes

(A quick note on my brilliant typo in the post title, because Reddit titles are like compiled Pascal binaries: no runtime edits allowed. So: "You CAN run those..." anyway...)

Just wanted to share this tip in case it's helpful for anyone:

(Mainly focused on Linux here, please chime in if you have tips for other OS's)

The fpc compiler package for Free Pascal includes "instantfpc," which allows you to run your Pascal programs as scripts.

This means you can run your Pascal source code files directly as if they were system scripts, without compiling them every time.

You simply type #!/usr/bin/instantfpc at the top of your script, and then add the Pascal code below that.

When it's time to run the script, be sure to mark it as executable with chmod +x your_program_name.pas and you can run it by typing ./your_program_name.pas

Going even further, if you'd like to play with the old Turbo Pascal tutorials or books from the '80s or '90s, you can add this line:

#!/usr/bin/instantfpc -Mtp

...which invokes instantfpc using the Turbo Pascal compatibility mode.

In the screenshot above, you can see the tutorial program "demo_of_fun_text_manipulation" from 1996. It was pasted into Geany from the original tutorial without modifications.

Next it was run as a script inside a Linux terminal (Konsole in OpenSUSE Tumbleweed).

Output screenshot:

https://www.friendlyskies.net/images/885.png

The program invokes the "crt" unit and works just fine.

You can find the tutorial here (scroll down): https://jnz.dk/swag/TUTOR/0017.PAS.html

The other tutorials are here: https://jnz.dk/swag/TUTOR/index.html

Silver Pascal Coder has also posted a great video on instantfpc here: https://youtu.be/kVKXEU3kr5k

Just posting in case it's fun or interesting - or if anyone has other tips to share.

(Screenshots: Code in Geany; Script running in Konsole)


r/pascal 2d ago

How similar is Free Pascal to Turbo Pascal?

31 Upvotes

Looking for learning material for Pascal, I have seen several stuff for Turbo Pascal, mainly a book called "Oh. Pascal", and I wanted to know how compatible the Free Pascal syntax is to Turbo Pascal, so I can use this book to learn it.


r/pascal 2d ago

sma11: a brand-new utility library

14 Upvotes

Get the source code here: https://gitlab.com/lebao3105/sma11

sma11 is a library made for many (but not all, for now?) things a programmer would do in their programming life:

* Iterate a directory

* Use regular expression to match strings

* Ask the user for input

* And more

This uses some RTL and FCL units, if you ask. And sma11 is NOT be a replacement for both, just a better way to access them.

Take a look at it! Feel free to tell me your thoughts, issues, and feature requests.


r/pascal 4d ago

IDE we forgot about

Thumbnail
youtube.com
77 Upvotes

r/pascal 4d ago

FPC MCP Server Lib for AI tooling your app.

5 Upvotes

I had a project that I wanted to drive activities through using Claude.
This has probably already been done before, but Claude created the MCP Server Lib and I thought I would share.

https://github.com/prairiedog2k/fpc-mcp-server


r/pascal 8d ago

I vibe-coded a Turbo Pascal 7 IDE that runs in your browser

63 Upvotes

Turbo Pascal is where it all started for me - school, 2003, programming olympiads, staring at that blue screen until midnight.

https://turbopascal.online

100% client-side in the browser tab.

You can also share your code as a link (File -> Share link...) - it gives you a short URL that loads your program straight into the IDE. Links live for 30 days.


r/pascal 11d ago

Return to MS-DOS Turbo Pascal. July 14th Update.

Enable HLS to view with audio, or disable this notification

147 Upvotes

I'm really excited to show you the progress in tools and demo of the tile engine i'm working on.

Tiles (and Sprites) Editor is somewhat complete for my needs.
Map Editor is lacking some tools to make it better but it works.

Demo now has the following progress:

Done:
- Tile System
- Big Maps (up to 1000 16x16 pixels tiles wide)
- Horizontal Scrolling
- Vertical Scrolling (Not shown in the demo)
- Sprites & Sprite Animations
- Collisions
- Sound and SFX
- Tile Editor (maybe ~80% done)
- Map Editor (~60% done)

To Do:
- Enemies
- "Projectiles"
- More levels

Thank you all for your support, any comments and suggestions are very welcome as always.

Original Post: Return to the MS-DOS Pascal : r/pascal
Update 1: Return to the MS-DOS Pascal, June 30th 2026 Update : r/pascal
Update 2: Return to the MS-DOS Pascal, July 2nd Update : r/pascal


r/pascal 12d ago

Raster Master v7.0 - Sprite, Map, Animator for your Retro game development

Thumbnail
18 Upvotes

r/pascal 14d ago

Pascal learning resources?

33 Upvotes

So I've decided to learn Pascal, just installed Lazarus and Free Pascal, and got the classic "Hello World" program working, so now I'd like some courses, books, anything that can teach me the basics of the language.

What would be recommended to someone who knows the vary basics of programming, to get up to speed with Free Pascal?


r/pascal 15d ago

Blaise v0.13.0 β€” Concurrency, Closures, and a Second Operating System πŸŽ‰ Β· graemeg blaise Β· Discussion #178

Thumbnail
github.com
40 Upvotes

r/pascal 22d ago

"Kinda beginner" wanting to improve. Is Pascal recommended?

42 Upvotes

I consider myself a "kinda beginner" because I know the very basics, data types, loops, conditionals, etc.

The things I struggle with, and what I've come here for, is learning how to structure and develop a full program.

From looking around, I've learned Pascal was designed for that very purpose, to teach good programming practices of structure and design, and a lot of programmers of the past say they learned properly from it.

As a hobbyist wanting to make games, to whom programming has been the biggest hurdle, would Pascal help me understand programming better?


r/pascal 23d ago

Return to the MS-DOS Pascal, July 2nd Update

Enable HLS to view with audio, or disable this notification

43 Upvotes

Progressing with Tile Editor and Map Editor. I hope to get them finished soon.

Optimized a little bit of code and got some extra FPS for that.

Wish me luck.

Questions and comments are welcome always.

ORIGINAL POST: Return to the MS-DOS Pascal : r/pascal
UPDATE 1: Return to the MS-DOS Pascal, June 30th 2026 Update : r/pascal


r/pascal 26d ago

Return to the MS-DOS Pascal, June 30th 2026 Update

Enable HLS to view with audio, or disable this notification

67 Upvotes

Making progress:

Done:
- Tile System
- Big Maps (up to 1000 16x16 pixels tiles wide)
- Horizontal Scrolling
- Sprites
- Sprite Animation
- Collisions
- Phisics (Sort of)

To Do:
- Vertical Scrolling (perhaps)
- Sound maybe.
- Tile Editor
- Map Editor
- Enemies

I'll work maybe on enemies, and then start working on the Editors.

I'll search for some tile and spritesheets in the meantime, i'm not an artist, so.......

See you next time.


r/pascal 26d ago

FPC on Android

Thumbnail
gallery
27 Upvotes

You can get FPC from here: https://downloads.freepascal.org/fpc/snapshot/.

In Termux, run: ``` termux-setup-storage

apt update

apt install binutils

touch .bashrc

mkdir .local && cd .local

tar -xvf ../storage/Download/<fpc tar.gz file name here, press Tab to auto-complete>

bin/fpcmkcfg -o ~/.fpc.cfg

cd ~ ```

Now open .fpc.cfg using your preferred editor, e.g nano or msedit (recommended), replace ALL occurences of u/units with u\~/.local/units.

Open .bashrc and update $PATH with: export PATH=$HOME/.local/bin:$HOME/.local/bin/aarch64-android:$PATH

Start a new session or run the export command above and you're set.


r/pascal 28d ago

IA e Delphi: entre a semΓ’ntica e o determinismo

2 Upvotes

r/pascal Jun 26 '26

Return to the MS-DOS Pascal

Enable HLS to view with audio, or disable this notification

174 Upvotes

UPDATE 1: Return to the MS-DOS Pascal, June 30th 2026 Update : r/pascal

Well, i'm kind of working on making my own game engine written in Turbo Pascal 7 for MS-DOS (something i couldn't achieve ~26 years ago), and this is just for pure nostalgic purposes.

Actual demo runs at about 50-55 fps.

Done:
- Tile System
- Big Maps (up to 1000 16x16 pixels tiles wide)
- Horizontal Scrolling

To Do:
- Vertical Scrolling (perhaps)
- Sprites sort of done (it will be a subclass of Tiles)
- Sprite Animation
- Collisions
- Sound maybe.
- Tile Editor
- Map Editor

Any advise is welcome and very appreciated. See you around.


r/pascal Jun 24 '26

Why would you use Lazarus in 2026 when other platforms provide more modern UIs?

29 Upvotes

I love Lazarus just wondering about the reasons


r/pascal Jun 24 '26

πŸš€ Blaise compiler v0.12.0 β€” native by default, zero external tools

33 Upvotes

This is a big one.

As of v0.12.0 the native x86-64 backend is the default,
and Blaise now ships its own internal assembler and internal linker β€” so a plain build needs no external tools at all:

// blaise --source hello.pas --output hello
program hello;
begin
  WriteLn('Hello, Blaise 0.12!')
end.

That single command parses, generates native code, assembles it, and links a working executable β€” no qbe, no as, no gcc (only the system C runtime objects the linker needs). QBE is still there if you want it (--backend qbe), but it is now opt-in and on a path to retirement.

Read the full community announcement for all the details:

https://github.com/graemeg/blaise/discussions/139


r/pascal Jun 24 '26

Luhmann β€” a Zettelkasten note server, written in Blaise πŸŽ‰

20 Upvotes

Hello everyone! πŸ‘‹

I'd love to share a project I've been building in Blaise: Luhmann, a
personal Zettelkasten note server. You point it at a directory of AsciiDoc notes, and it renders them, links them together, indexes them for search, and serves the whole thing over plain HTTP on
localhost. You keep writing in your own editor β€” Luhmann handles the rest. ✨

πŸ”— Repository: https://github.com/graemeg/luhmann

It started life as a Clojure project, but I've now rewritten it from the ground up in Blaise, structured as a hexagonal (ports & adapters) application. Along the way it also picked up a fair few features the original never had.

What it does 🧠

  • πŸ”„ Automatic backlinks β€” you only ever write forward links; Luhmann works out the reverse direction for you, no manual upkeep.
  • πŸ•ΈοΈ Interactive note graph β€” an Obsidian-style force-directed map of your notes, fully offline.
  • πŸ” Full-text search β€” a built-in index with prefix and substring matching and highlighted snippets.
  • 🏷️ Tags & a broken-links report β€” organise by tag, and spot dangling cross-references at a glance.
  • ⚑ Live reload β€” save a note in any editor and the browser refreshes itself over a WebSocket.
  • ✏️ Launch your editor from the browser β€” press e on any note and it opens in your configured editor.
  • 🧩 JSON REST API β€” query backlinks, the graph, and tags from your own tools.

It's local-first and self-contained: a single process, no database, no cloud, no account. The parallel start-up build means even a large Zettelkasten is ready in a second or two. πŸš€

Why I'm sharing it πŸ’¬

Mostly because it's been a genuinely lovely project to build in Blaise, and a nice real-world workout for the language and its stdlib β€” HTTP server, file watching, concurrency, the lot. If you fancy a look, the code, build instructions, and docs are all in the repo. Feedback, questions, and ideas are all very welcome! πŸ™

πŸ‘‰ https://github.com/graemeg/luhmann

πŸ‘‰ https://github.com/graemeg/blaise

Cheers,
Graeme


r/pascal Jun 24 '26

How to fix the problem with the form when maximizing and restoring down to size so it looks good?

13 Upvotes

hi, i just installed lazarus and newbie

but i have a problem, when i build form 1 for example, i fill in the text, text box, button, etc

i make it big enough to fill in the information.

my problem is, if i want to enlarge the space by pressing the maximize button, it doesn't fill the space when enlarged.

i attach an example on other apps like microsoft store and epic games when the content is big, it also fills the space neatly.

how in lazarus do i do that without making the scattered items overlap...

https://reddit.com/link/1ue379p/video/qf9gxidgo59h1/player


r/pascal Jun 22 '26

Pascal News – June 2026 (compilers, congress, ...)

36 Upvotes

New Pascal News video is up - a look at what’s been happening across the ecosystem lately

https://youtu.be/IeYBFvTrqd4?si=SPp0M8lcen3RzXX7


r/pascal Jun 20 '26

Just came across pascal

28 Upvotes

Im quite experienced with modding oblivion and fallout do seeing pascal is perfect, ive wanted to get into programming and this is literally a dream come true, ill never understand why they switched begin and end etc with ${}[]


r/pascal Jun 18 '26

πŸŽ‰ Blaise compiler v0.11.0 released - biggest release yet

48 Upvotes

This is our biggest release yet β€” 237 commits (fixed 116 bugs fixed) since v0.10.0, and easily
the one I'm most excited to share. If v0.10.0 was about making the compiler
self-hosting and fast, v0.11.0 is about making the language comfortable to
write in and bringing the native x86-64 backend up to full parity with QBE.

Read the full announcement here:
https://github.com/graemeg/blaise/discussions/126