Reminds me I need to watch more closely my daily tools
Reminds me I need to watch more closely my daily tools
How do you handle exceptions in CSharp?
Read more here:
https://www.devleader.ca/2023/10/22/how-to-handle-exceptions-in-csharp-tips-and-tricks-for-streamlined-debugging/
Exception Handling ist ein wichtiger Bestandteil der (Java)-Programmierung da Fehler und Unerwartetes jederzeit auftreten kann. Ein gutes Exception Handling stellt in solchen Fällen sicher, dass Programme stabil und benutzerfreundlich bleiben. In diesem Beitrag erkläre ich, was Exceptions sind und
https://magicmarcy.de/exception-handling-in-java-grundlagen-und-best-practices
#Exception_Handling #Exceptions #Fehler #Ausnahme #checked #unchecked #try #catch #finally

Exception Handling ist ein wichtiger Bestandteil der (Java)-Programmierung da Fehler und Unerwartetes jederzeit auftreten kann. Ein gutes Exception Handling stellt in solchen Fällen sicher, dass Programme stabil und benutzerfreundlich bleiben. In diesem Beitrag erkläre ich, was Exceptions sind und wie wir sie in Java einsetzen können.
I’m working on adding some support for Haskell exceptions to agda2hs. I needed to do something so make throw not break soundness so I added an (erased instance) argument of some postulated type MayThrow exc, essentially making all exceptions be checked exceptions on the Agda side.
I know there’s much nicer ways to exceptions in dependent type theory (i.e. exceptional type theory by PMP et al) but given that Agda doesn’t implement that, this seems like a decent first step. I’m curious to hear any comments you have!

Some time ago, I played around with decompiling Java class files in a more efficient manner than traditional solutions like Vineflower allow. Eventually, I wrote an article on my approach to decompiling control flow, which was a great performance boost for my prototype. At the time, I believed that this method can be straightforwardly extended to handling exceptional control flow, i.e. decompiling try…catch blocks. In retrospect, I should’ve known it wouldn’t be so easy. It turns out that there are many edge cases, ranging from strange javac behavior to consequences of the JVM design and the class file format, that significantly complicate this. In this post, I’ll cover these details, why simple solutions don’t work, and what approach I’ve eventually settled on.
JVM exceptions are weird: a decompiler perspective
https://purplesyringa.moe/blog/jvm-exceptions-are-weird-a-decompiler-perspective/
#HackerNews #JVM #exceptions #decompiler #perspective #programming #blog #tech #insights

Some time ago, I played around with decompiling Java class files in a more efficient manner than traditional solutions like Vineflower allow. Eventually, I wrote an article on my approach to decompiling control flow, which was a great performance boost for my prototype. At the time, I believed that this method can be straightforwardly extended to handling exceptional control flow, i.e. decompiling try…catch blocks. In retrospect, I should’ve known it wouldn’t be so easy. It turns out that there are many edge cases, ranging from strange javac behavior to consequences of the JVM design and the class file format, that significantly complicate this. In this post, I’ll cover these details, why simple solutions don’t work, and what approach I’ve eventually settled on.
Programming in MicroPython is interesting, in multiple ways.
If you're not familiar with it, it's a port of the Python language to run on very small systems - primarily microcontrollers of various types. Programming for any of these types of systems, in any language/environment, always poses some challenges because of the limited resources. Forget 32-bit machines limited to 1GB of user-mode address space - think 256 KB of RAM being unimaginably vast for many MCUs, even today.
They did a pretty amazing job getting Python to run on these MCUs. It even supports a lot of the standard library, with restrictions, limits, and various missing bits an unavoidable side-effect.
The specific things that have tickled me about it recently include:
* Missing stdlib modules that a modern Python programmer just takes for granted.
* Don't do more than basic type hints / annotations, because MicroPython won't like them.
* Get used to running into out-of-memory errors if you build lots of complex data structures at runtime.
* Some of the more modern features and syntax aren't supported.
It actually feels kind of like programming in Python 1.1 or so did. I haven't checked, but it wouldn't surprise me if exceptions were strings 😉
#MicroPython #Python #microcontroller #MCU #software #programming #resources #nostalgia #exceptions
Любовь, смерть и жизненный цикл: считаем, сколько люди проводят времени в вашем Android-приложении
Приветствую всех заглянувших трудяг! Помните, как вы готовились к первым собеседованиям на должность Android-разработчика? Жизненный цикл, пересоздание Activity, коллбеки ЖЦ: все эти понятия хорошо знакомы каждому молодому специалисту в нашей с вами области. Однако одна из прилетевших от аналитиков задач на отправку событий, связанных с длительностью нахождения пользователя в приложении, ввела меня в ступор, заставила провести небольшое исследование, проявить чудеса ведения переговоров и узнать много интересных нюансов. Об этом увлекательном путешествии сегодня расскажу вам я, Александр Лебедь, Android-разработчик Core команды приложения WB Partners.
https://habr.com/ru/companies/wildberries/articles/963618/
#android #lifecycle #синхронизация #concurrency #exceptions #configuration_changes #analytics #activity #process

Приветствую всех заглянувших трудяг! Помните, как вы готовились к первым собеседованиям на должность Android-разработчика? Жизненный цикл, пересоздание Activity, коллбеки ЖЦ: все эти понятия хорошо...
JVM exceptions are weird: a decompiler perspective
https://purplesyringa.moe/blog/jvm-exceptions-are-weird-a-decompiler-perspective/
#HackerNews #JVM #exceptions #decompiler #programming #tech #blog

Some time ago, I played around with decompiling Java class files in a more efficient manner than traditional solutions like Vineflower allow. Eventually, I wrote an article on my approach to decompiling control flow, which was a great performance boost for my prototype. At the time, I believed that this method can be straightforwardly extended to handling exceptional control flow, i.e. decompiling try…catch blocks. In retrospect, I should’ve known it wouldn’t be so easy. It turns out that there are many edge cases, ranging from strange javac behavior to consequences of the JVM design and the class file format, that significantly complicate this. In this post, I’ll cover these details, why simple solutions don’t work, and what approach I’ve eventually settled on.
The young man knows the rules, but the old man knows the exceptions.
-- Oliver Wendell Holmes