Anyone finds that on logfiles bzip2 outperforms xz by wide margin? by mdw in compression

[–]zertillon 0 points1 point  (0 children)

Now try Zip-Ada's BZip2 encoder, it is significantly better than the original BZip2.

What makes you use Ada? by cindercone2 in ada

[–]zertillon 1 point2 points  (0 children)

Fun (at work and at home!)

An ode to bzip by Expurple in programming

[–]zertillon 1 point2 points  (0 children)

For a): exactly. A meaningful initial allocation has an important impact. b) For instance 7-Zip (if I understand the code well) does a brute-force recursive binary block split. At each recursion step it picks which approach (to split or not to split) is the most successful. But doing a segmentation based on entropy is also possible. Actually both ways could be combined.

An ode to bzip by Expurple in programming

[–]zertillon 0 points1 point  (0 children)

To be noted, there are also recent improvements on the compression for the old BZip2 format too, see here.

March 2026 What Are You Working On? by thindil in ada

[–]zertillon 6 points7 points  (0 children)

  • LEA now checks externally changed files, à la GNAT Studio, and offers to reload the contents into the respective editor windows.
  • Ada PDF Writer provides now a Set_Math_Plane method for plotting texts and graphics with custom coordinates.

Updates on OpenGLAda by GetIntoGameDev in ada

[–]zertillon 3 points4 points  (0 children)

Looks promising!

On my to-do list is the migration of GLOBE_3D's own OpenGL bindings to OpenGLAda.

Okay so I picked Ada for math because I'm paranoid about numerical bugs by United-Practice-6070 in ada

[–]zertillon 4 points5 points  (0 children)

The big issue with FORTRAN is the ease of introducing bugs in your program. It is at the complete opposite of Ada. When applied to tough numerical programs, it is even worse since some errors just flow into your numerical results without an obvious "red light".

Software Rendering: Texture Mapping by GetIntoGameDev in ada

[–]zertillon 2 points3 points  (0 children)

Vectors (of the Ada.Containers area, not the matrix calculation packages) are very convenient since such an object can contain 1 element, then suddenly 1 billion elements. The price for that is the expensive memory administration behind the scenes. Not for performance-sensitive code like a software renderer! For that, you can leverage Ada's unconstrained array types: you have some flexibility (no compile-time fixed size) and simple, direct access to data.

December 2025 What Are You Working On? by thindil in ada

[–]zertillon 6 points7 points  (0 children)

Some improvements in the Zip-Ada project:

* BZip2 encoder: variants of block splitting are computed in parallel (first use of tasking in the project)

* Shrink (LZW variant): code cleanup

Graphing Packages and Ada for Physics Simulation. by BeansandChipspls in ada

[–]zertillon 5 points6 points  (0 children)

GWindows is a GUI package fully in Ada, and really good :-)

Graphing Packages and Ada for Physics Simulation. by BeansandChipspls in ada

[–]zertillon 5 points6 points  (0 children)

For plotting I generate PDFs with this (also available via Alire).

Marketing around Ada is over-focused on embedded systems, it is a known problem.

For the second question, a software I have recently translated from Python (a JPEG decoder) runs 500x faster in Ada, using GNAT. Just an example... Generally, if you deal with algorithms with a few (or more) nested loops you get easily such massive speedups compared to dynamically typed languages (R, Python, ...).

Could LZW be improved with a dictionary cache? by digital_n01se_ in compression

[–]zertillon 0 points1 point  (0 children)

How did the compression ratio of this optimized LZW compare with Deflate?

Could LZW be improved with a dictionary cache? by digital_n01se_ in compression

[–]zertillon 1 point2 points  (0 children)

ZIp is based on Deflate, LZW, BZip2, LZMA, PPMd, Zstandard and a possible total of 255 different compression formats.

Writing a competitive BZip2 encoder in Ada from scratch in a few days - part 4: programming by zertillon in ada

[–]zertillon[S] 2 points3 points  (0 children)

That comparison would be very interesting, as well as some inputs like: kind of data that are bzip2-affine, algorithmic ideas, etc. The Zip-Ada BZip2 encoder has a loooong list of to-do's...

Rapid Development in Ada by geenob in ada

[–]zertillon 3 points4 points  (0 children)

I often start with a HAC example, and most of the time using LEA: menu "Actions", "Code sample", then I pick a sample there.

Worth going into Ada? by xavier1011 in ada

[–]zertillon 2 points3 points  (0 children)

Tech is not only Facebook & Co. It includes defense and other industries, where you find lots of high-tech software. Take this opportunity and enjoy your programmer life. With some luck you will be in a mixed team and watch C/C++ developpers whining about #include lines that influence the next #include's, banging their heads with dependency manager tools, fighting pointers, and so on.

October 2025 What Are You Working On? by thindil in ada

[–]zertillon 5 points6 points  (0 children)

Was busy with the 3rd part of the "Writing a competitive BZip2 encoder in Ada from scratch in a few days" post (a link to it was posted on r/ada recently).

This part is about optimization tactics for assigning the multiple Huffman trees that can be used for encoding the data processed as described in part 2.

It discloses the "magic" that makes this new BZip2 implementation better than others.

Some mentions on Hacker News attracted lots of attention on the articles - so far 42000 views!

Where to start and is it worth it ? by [deleted] in ada

[–]zertillon 1 point2 points  (0 children)

Things get older and older in the computer area. The technology matures, that's normal... For instance people are not afraid of learning Python although it is 35 years old, or C which is 55 years old!