0% found this document useful (0 votes)
6 views58 pages

101379

The document is a comprehensive overview of the book 'Python Debugging for AI, Machine Learning, and Cloud Computing' by Dmitry Vostokov, which focuses on debugging techniques specific to Python in AI and cloud environments. It covers various debugging patterns, case studies, and challenges faced in debugging within these domains, aiming to equip developers and engineers with the necessary skills to build robust software. The book also discusses how advancements in AI and machine learning can enhance debugging processes.

Uploaded by

bradalikosua
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views58 pages

101379

The document is a comprehensive overview of the book 'Python Debugging for AI, Machine Learning, and Cloud Computing' by Dmitry Vostokov, which focuses on debugging techniques specific to Python in AI and cloud environments. It covers various debugging patterns, case studies, and challenges faced in debugging within these domains, aiming to equip developers and engineers with the necessary skills to build robust software. The book also discusses how advancements in AI and machine learning can enhance debugging processes.

Uploaded by

bradalikosua
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 58

Python Debugging for AI, Machine Learning, and

Cloud Computing: A Pattern-Oriented Approach 1st


Edition Vostokov download

https://textbookfull.com/product/python-debugging-for-ai-machine-
learning-and-cloud-computing-a-pattern-oriented-approach-1st-
edition-vostokov/

Download more ebook from https://textbookfull.com


We believe these products will be a great fit for you. Click
the link to download now, or visit textbookfull.com
to discover even more!

Biota Grow 2C gather 2C cook Loucas

https://textbookfull.com/product/biota-grow-2c-gather-2c-cook-
loucas/

Pragmatic AI An Introduction to Cloud Based Machine


Learning 1st Edition Noah Gift

https://textbookfull.com/product/pragmatic-ai-an-introduction-to-
cloud-based-machine-learning-1st-edition-noah-gift/

Thoughtful Machine Learning with Python A Test Driven


Approach 1st Edition Matthew Kirk

https://textbookfull.com/product/thoughtful-machine-learning-
with-python-a-test-driven-approach-1st-edition-matthew-kirk/

Thoughtful machine learning with Python a test driven


approach First Edition Kirk

https://textbookfull.com/product/thoughtful-machine-learning-
with-python-a-test-driven-approach-first-edition-kirk/
Practical Machine Learning and Image Processing: For
Facial Recognition, Object Detection, and Pattern
Recognition Using Python Himanshu Singh

https://textbookfull.com/product/practical-machine-learning-and-
image-processing-for-facial-recognition-object-detection-and-
pattern-recognition-using-python-himanshu-singh/

Python for Probability Statistics and Machine Learning


José Unpingco

https://textbookfull.com/product/python-for-probability-
statistics-and-machine-learning-jose-unpingco/

Machine Learning Q and AI: 30 Essential Questions and


Answers on Machine Learning and AI 1 / converted
Edition Sebastian Raschka

https://textbookfull.com/product/machine-learning-q-and-
ai-30-essential-questions-and-answers-on-machine-learning-and-
ai-1-converted-edition-sebastian-raschka/

Python Real World Machine Learning: Real World Machine


Learning: Take your Python Machine learning skills to
the next level 1st Edition Joshi

https://textbookfull.com/product/python-real-world-machine-
learning-real-world-machine-learning-take-your-python-machine-
learning-skills-to-the-next-level-1st-edition-joshi/

Machine Learning and AI Beyond the Basics Raschka

https://textbookfull.com/product/machine-learning-and-ai-beyond-
the-basics-raschka/
Dmitry Vostokov

Python Debugging for AI, Machine


Learning, and Cloud Computing
A Pattern-Oriented Approach
Dmitry Vostokov
Dalkey, Dublin, Ireland

ISBN 978-1-4842-9744-5 e-ISBN 978-1-4842-9745-2


https://doi.org/10.1007/978-1-4842-9745-2

© Dmitry Vostokov 2024

Apress Standard

The use of general descriptive names, registered names, trademarks,


service marks, etc. in this publication does not imply, even in the
absence of a specific statement, that such names are exempt from the
relevant protective laws and regulations and therefore free for general
use.

The publisher, the authors, and the editors are safe to assume that the
advice and information in this book are believed to be true and accurate
at the date of publication. Neither the publisher nor the authors or the
editors give a warranty, expressed or implied, with respect to the
material contained herein or for any errors or omissions that may have
been made. The publisher remains neutral with regard to jurisdictional
claims in published maps and institutional affiliations.

This Apress imprint is published by the registered company APress


Media, LLC, part of Springer Nature.
The registered company address is: 1 New York Plaza, New York, NY
10004, U.S.A.
To Ekaterina, Alexandra, Kirill, and Maria
Introduction
Python is the dominant language used in AI and machine learning with
data and pipelines in cloud environments. Besides debugging Python
code in popular IDEs, notebooks, and command-line debuggers, this
book also includes coverage of native OS interfacing (Windows and
Linux) necessary to understand, diagnose, and debug complex software
issues.
The book begins with an introduction to pattern-oriented software
diagnostics and debugging processes that, before doing Python
debugging, diagnose problems in various software artifacts such as
memory dumps, traces, and logs. Next, it teaches various debugging
patterns using Python case studies that model abnormal software
behavior. Further, it covers Python debugging specifics in cloud native
and machine learning environments. It concludes with how recent
advances in AI/ML can help in Python debugging. The book also goes
deep for case studies when there are environmental problems, crashes,
hangs, resource spikes, leaks, and performance degradation. It includes
tracing and logging besides memory dumps and their analysis using
native WinDbg and GDB debuggers.
This book is for those who wish to understand how Python
debugging is and can be used to develop robust and reliable AI,
machine learning, and cloud computing software. It uses a novel
pattern-oriented approach to diagnosing and debugging abnormal
software structure and behavior. Software developers, AI/ML
engineers, researchers, data engineers, MLOps, DevOps, and anyone
who uses Python will benefit from this book.
Source Code: All source code used in this book can be downloaded
from github.com/Apress/Python-Debugging-for-AI-
Machine-Learning-and-Cloud-Computing.
Any source code or other supplementary material referenced by the
author in this book is available to readers on GitHub. For more detailed
information, please visit https://www.apress.com/gp/services/source-
code.
Table of Contents
Chapter 1:​Fundamental Vocabulary
Process
Thread
Stack Trace (Backtrace, Traceback)
Symbol Files
Module
Memory Dump
Crash
Hang
Summary
Chapter 2:​Pattern-Oriented Debugging
The History of the Idea
Patterns and Analysis Patterns
Development Process
Development Patterns
Debugging Process and Patterns
Elementary Diagnostics Patterns
Debugging Analysis Patterns
Debugging Architecture Patterns
Debugging Design Patterns
Debugging Implementation Patterns
Debugging Usage Patterns
Debugging Presentation Patterns
Summary
Chapter 3:​Elementary Diagnostics Patterns
Functional Patterns
Use-Case Deviation
Non-Functional Patterns
Crash
Hang
Counter Value
Error Message
Summary
Chapter 4:​Debugging Analysis Patterns
Paratext
State Dump
Counter Value
Stack Trace Patterns
Stack Trace
Runtime Thread
Managed Stack Trace
Source Stack Trace
Stack Trace Collection
Stack Trace Set
Exception Patterns
Managed Code Exception
Nested Exception
Exception Stack Trace
Software Exception
Module Patterns
Module Collection
Not My Version
Exception Module
Origin Module
Thread Patterns
Spiking Thread
Active Thread
Blocked Thread
Blocking Module
Synchronization Patterns
Wait Chain
Deadlock
Livelock
Memory Consumption Patterns
Memory Leak
Handle Leak
Case Study
Summary
Chapter 5:​Debugging Implementation Patterns
Overview of Patterns
Break-Ins
Code Breakpoint
Code Trace
Scope
Variable Value
Type Structure
Breakpoint Action
Usage Trace
Case Study
Elementary Diagnostics Patterns
Debugging Analysis Patterns
Debugging Implementation Patterns
Summary
Chapter 6:​IDE Debugging in the Cloud
Visual Studio Code
WSL Setup
Cloud SSH Setup
Case Study
Summary
Chapter 7:​Debugging Presentation Patterns
Python Debugging Engines
Case Study
Suggested Presentation Patterns
Summary
Chapter 8:​Debugging Architecture Patterns
The Where?​Category
In Papyro
In Vivo
In Vitro
In Silico
In Situ
Ex Situ
The When?​Category
Live
JIT
Postmortem
The What?​Category
Code
Data
Interaction
The How?​Category
Software Narrative
Software State
Summary
Chapter 9:​Debugging Design Patterns
CI Build Case Study
Elementary Diagnostics
Analysis
Architecture
Design
Implementation
Data Processing Case Study
Elementary Diagnostics
Analysis
Architecture
Design
Implementation
Summary
Chapter 10:​Debugging Usage Patterns
Exact Sequence
Scripting
Debugger Extension
Abstract Command
Space Translation
Lifting
Gestures
Summary
Chapter 11:​Case Study:​Resource Leaks
Elementary Diagnostics
Debugging Analysis
Debugging Architecture
Debugging Implementation
Summary
Chapter 12:​Case Study:​Deadlock
Elementary Diagnostics
Debugging Analysis
Debugging Architecture
Exceptions and Deadlocks
Summary
Chapter 13:​Challenges of Python Debugging in Cloud Computing
Complex Distributed Systems
Granularity of Services
Communication Channels Overhead
Inter-Service Dependencies
Layers of Abstraction
Opaque Managed Services
Serverless and Function as a Service
Container Orchestration Platforms
Continuous Integration/​Continuous Deployment
Pipeline Failures
Rollbacks and Versioning
Immutable Infrastructure
Diversity of Cloud Service Models
Infrastructure as a Service
Platform as a Service
Software as a Service
Evolving Cloud Platforms
Adapting to Changes
Staying Updated
Environment Parity
Library and Dependency Disparities
Configuration Differences
Underlying Infrastructure Differences
Service Variabilities
Limited Visibility
Transient Resources
Log Management
Monitoring and Alerting
Latency and Network Issues
Network Instabilities
Service-to-Service Communication
Resource Leaks and Performance
Resource Starvation
Concurrency Issues
Race Conditions
Deadlocks
Security and Confidentiality
Debugger Access Control Restrictions
Sensitive Data Exposure
Limited Access
Cost Implications
Extended Sessions
Resource Provisioning and Deprovisioning
Data Transfer and Storage Fees
State Management
Stateful Services
Data Volume
Limited Tooling Compatibility
Versioning Issues
Deprecations and Changes
SDK and Library Updates
Real-time Debugging and User Experience
External Service Dependencies
Dependency Failures
Rate Limiting and Quotas
Asynchronous Operations
Flow Tracking
Error Propagation
Scaling and Load Challenges
Load-Based Issues
Resource Contention
Multi-Tenancy Issues
Resource Contention
Data Security
Reliability and Redundancy Issues
Service Failures
Data Durability
Summary
Chapter 14:​Challenges of Python Debugging in AI and Machine
Learning
The Nature of Defects in AI/​ML
Complexity and Abstraction Layers
Non-Determinism and Reproducibility
Large Datasets
High-Dimensional Data
Long Training Times
Real-Time Operation
Model Interpretability​
Hardware Challenges
Version Compatibility and Dependency Hell
Data Defects
Inconsistent and Noisy Data
Data Leakage
Imbalanced Data
Data Quality
Feature Engineering Flaws
Algorithmic and Model-Specific Defects
Gradients, Backpropagation, and Automatic Differentiation
Hyperparameter Tuning
Overfitting and Underfitting
Algorithm Choice
Deep Learning Defects
Activation and Loss Choices
Learning Rate
Implementation Defects
Tensor Shapes
Hardware Limitations and Memory
Custom Code
Performance Bottlenecks
Testing and Validation
Unit Testing
Model Validation
Cross-Validation
Metrics Monitoring
Visualization for Debugging
TensorBoard
Matplotlib and Seaborn
Model Interpretability​
Logging and Monitoring
Checkpoints
Logging
Alerts
Error Tracking Platforms
Collaborative Debugging
Forums and Communities
Peer Review
Documentation, Continuous Learning, and Updates
Maintaining Documentation
Library Updates
Continuous Learning
Case Study
Summary
Chapter 15:​What AI and Machine Learning Can Do for Python
Debugging
Automated Error Detection
Intelligent Code Fix Suggestions
Interaction Through Natural Language Queries
Visual Debugging Insights
Diagnostics and Anomaly Detection
Augmenting Code Reviews
Historical Information Analysis and Prognostics
Adaptive Learning and Personalized Debugging Experience
Test Suite Integration and Optimization
Enhanced Documentation and Resource Suggestions
Problem Modeling
Generative Debugging Strategy
Help with In Papyro Debugging
Summary
Chapter 16:​The List of Debugging Patterns
Elementary Diagnostics Patterns
Debugging Analysis Patterns
Debugging Architecture Patterns
Debugging Design Patterns
Debugging Implementation Patterns
Debugging Usage Patterns
Debugging Presentation Patterns
Index
About the Author
Dmitry Vostokov
is an internationally recognized expert,
speaker, educator, scientist, inventor, and
author. He founded the pattern-oriented
software diagnostics, forensics, and
prognostics discipline (Systematic
Software Diagnostics) and Software
Diagnostics Institute (DA+TA:
DumpAnalysis.org + TraceAnalysis.org).
Vostokov has also authored multiple
books on software diagnostics, anomaly
detection and analysis, software, and
memory forensics, root cause analysis
and problem-solving, memory dump
analysis, debugging, software trace and log analysis, reverse
engineering, and malware analysis. He has over thirty years of
experience in software architecture, design, development, and
maintenance in various industries, including leadership, technical, and
people management roles. In his spare time, he presents multiple topics
on Debugging.TV and explores software narratology and its further
development as narratology of things and diagnostics of things (DoT),
software pathology, and quantum software diagnostics. His current
interest areas are theoretical software diagnostics and its mathematical
and computer science foundations, application of formal logic, artificial
intelligence, machine learning, and data mining to diagnostics and
anomaly detection, software diagnostics engineering and diagnostics-
driven development, diagnostics workflow, and interaction. Recent
interest areas also include cloud native computing, security,
automation, functional programming, applications of category theory to
software development and big data, and artificial intelligence
diagnostics.
About the Technical Reviewer
Krishnendu Dasgupta
is currently the Head of Machine
Learning at Mondosano GmbH, leading
data science initiatives focused on
clinical trial recommendations and
advanced patient health profiling
through disease and drug data. Prior to
this role, he co-founded DOCONVID AI, a
startup that leveraged applied AI and
medical imaging to detect lung
abnormalities and neurological
disorders.
With a strong background in
computer science engineering,
Krishnendu has more than a decade of experience in developing
solutions and platforms using applied machine learning. His
professional trajectory includes key positions at prestigious
organizations such as NTT DATA, PwC, and Thoucentric.
Krishnendu’s primary research interests include applied AI for
graph machine learning, medical imaging, and decentralized privacy-
preserving machine learning in healthcare. He also had the opportunity
to participate in the esteemed Entrepreneurship and Innovation
Bootcamp at the Massachusetts Institute of Technology, cohort of 2018
batch.
Beyond his professional endeavors, Krishnendu actively dedicates
his time to research, collaborating with various research NGOs and
universities worldwide. His focus is on applied AI and ML.
© The Author(s), under exclusive license to APress Media, LLC, part of Springer Nature 2024
D. Vostokov, Python Debugging for AI, Machine Learning, and Cloud Computing
https://doi.org/10.1007/978-1-4842-9745-2_1

1. Fundamental Vocabulary
Dmitry Vostokov1

(1) Dalkey, Dublin, Ireland

Debugging complex software issues in machine learning and cloud computing


environments requires not only the knowledge of the Python language and its interpreter
(or compiler), plus standard and external libraries, but also necessary and relevant
execution environment and operating system internals. In this chapter, you will review
some necessary fundamentals from software diagnostics and debugging languages to
have the same base level of understanding for the following chapters. In this book, I
assume that you are familiar with the Python language and its runtime environment.

Process
A Python script is interpreted by compiling it into bytecode and then executing it, or it
can even be precompiled into an application program. In both cases, this interpreter file
or the compiled application is an executable program (in Windows, it may have a .exe
extension) that references some operating system libraries (.dll in Windows and .so in
Linux). This application can be loaded into computer memory several times; each time, a
separate process is created with its own resources and unique process ID (PID, also
TGID), as shown in Figure 1-1. The process may also have a parent process that created it,
with a parent process ID (PPID).
Figure 1-1 Two python3 processes with two different PIDs
To illustrate, I executed the code in Listing 1-1 on both Windows and Linux twice.

import time

def main():
foo()

def foo():
bar()

def bar():
while True:
time.sleep(1)

if __name__ == "__main__":
main()
Listing 1-1 A Simple Script to Model Running Python Code

Figure 1-2 shows two processes on Windows.


Figure 1-2 Two running python3.11.exe processes on Windows
On Linux, you can also see two processes when you execute the same script in two
separate terminals:

~/Chapter1$ which python3


/usr/bin/python3

~/Chapter1$ ps -a
PID TTY TIME CMD
17 pts/0 00:00:00 mc
60 pts/2 00:00:00 python3
61 pts/1 00:00:00 python3
80 pts/3 00:00:00 ps

Note The operating system controls hardware and processes/threads. From a high
level, it is just a collection of processes with the operating system kernel as a process
too.

Thread
From an operating system perspective, a process is just a memory container for a Python
interpreter, its code, and data. But the interpreter code needs to be executed, for example,
to interpret the Python bytecode. This unit of execution is called a thread. A process may
have several such units of execution (several threads, the so-called multithreaded
application). Each thread has its own unique thread ID (TID, also LWP or SPID), as shown
in Figure 1-3. For example, one thread may process user interface events and others may
do complex calculations in response to UI requests, thus making the UI responsive. On
Windows, thread IDs are usually different from process IDs, but in Linux, the thread ID of
the main thread is the same as the process ID for a single-threaded process.

Figure 1-3 Two python3 processes with different numbers of threads


To model multithreading, I executed the code in Listing 1-2 on both Windows and
Linux.

import time
import threading

def thread_func():
foo()

def main():
t1 = threading.Thread(target=thread_func)
t1.start()
t2 = threading.Thread(target=thread_func)
t2.start()
t1.join()
t2.join()
def foo():
bar()

def bar():
while True:
time.sleep(1)

if __name__ == "__main__":
main()
Listing 1-2 A Simple Script to Model Multiple Threads
Figure 1-4 shows that in Windows, you can see 11 threads at the beginning (this
number later changes to 7 and then to 5). You see that the number of threads may be
greater than expected.

Figure 1-4 The number of threads in the running python3.11.exe process on Windows

In Linux, you can see the expected number of threads – 3:

~/Chapter1$ ps -aT
PID SPID TTY TIME CMD
17 17 pts/0 00:00:00 mc
45 45 pts/2 00:00:00 python3
45 46 pts/2 00:00:00 python3
45 47 pts/2 00:00:00 python3
54 54 pts/1 00:00:00 ps
Stack Trace (Backtrace, Traceback)
I should distinguish Python source code tracebacks (which we call managed stack traces)
and unmanaged (native) ones from the Python compiler and interpreter that compiles to
and executes Python byte code. You will see this distinction in some chapters for several
case studies and how to get both traces. But, for now, I will just show the difference.
Listing 1-3 shows managed stack trace. Listing 1-4 shows the corresponding unmanaged
Linux stack trace with debugging symbols (the most recent call first). Listing 1-5 shows
the corresponding unmanaged Windows stack trace without debugging symbols (the
most recent call first).

Traceback (most recent call last):


File "process.py", line 14, in <module>
main()
File "process.py", line 4, in main
foo()
File "process.py", line 7, in foo
bar()
File "process.py", line 11, in bar
time.sleep(1)
Listing 1-3 Managed Stack Trace from the Execution of the Python Script from Listing 1-1

#0 0x00007f6bc84e6b97 in __GI___select (nfds=0, readfds=0x0,


writefds=0x0, exceptfds=0x0, timeout=0x7ffc60288fe0)
at ../sysdeps/unix/sysv/linux/select.c:41
#1 0x00000000004e8965 in pysleep (secs=<optimized out>) at
../Modules/timemodule.c:1829
#2 time_sleep (self=<optimized out>, obj=<optimized out>,
self=<optimized out>, obj=<optimized out>)
at ../Modules/timemodule.c:371
#3 0x00000000005d8711 in _PyMethodDef_RawFastCallKeywords
(method=0x82dbe0 <time_methods+288>,
self=<module at remote 0x7f6bc800dc78>,
args=0x7f6bc80c4550, nargs=<optimized out>, kwnames=<optimized
out>)
at ../Objects/call.c:644
#4 0x000000000054b330 in _PyCFunction_FastCallKeywords
(kwnames=<optimized out>, nargs=<optimized out>,
args=0x7f6bc80c4550, func=<built-in method sleep of module
object at remote 0x7f6bc800dc78>)
at ../Objects/call.c:730
#5 call_function (pp_stack=0x7ffc60289150, oparg=<optimized
out>, kwnames=<optimized out>) at ../Python/ceval.c:4568
#6 0x00000000005524cd in _PyEval_EvalFrameDefault (f=
<optimized out>, throwflag=<optimized out>)
at ../Python/ceval.c:3093
#7 0x00000000005d91fc in PyEval_EvalFrameEx (throwflag=0,
f=Frame 0x7f6bc80c43d8, for file process.py, line 11, in
bar ()) at ../Python/ceval.c:547
#8 function_code_fastcall (globals=<optimized out>, nargs=
<optimized out>, args=<optimized out>, co=<optimized out>)
at ../Objects/call.c:283
#9 _PyFunction_FastCallKeywords (func=<optimized out>, stack=
<optimized out>, nargs=<optimized out>,
kwnames=<optimized out>) at ../Objects/call.c:408
#10 0x000000000054e5ac in call_function (kwnames=0x0, oparg=
<optimized out>, pp_stack=<synthetic pointer>)
at ../Python/ceval.c:4616
#11 _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=
<optimized out>) at ../Python/ceval.c:3124
#12 0x00000000005d91fc in PyEval_EvalFrameEx (throwflag=0,
f=Frame 0x7f6bc80105e8, for file process.py, line 7, in foo
()) at ../Python/ceval.c:547
#13 function_code_fastcall (globals=<optimized out>, nargs=
<optimized out>, args=<optimized out>, co=<optimized out>)
at ../Objects/call.c:283
#14 _PyFunction_FastCallKeywords (func=<optimized out>, stack=
<optimized out>, nargs=<optimized out>,
kwnames=<optimized out>) at ../Objects/call.c:408
--Type <RET> for more, q to quit, c to continue without paging-
-
#15 0x000000000054e5ac in call_function (kwnames=0x0, oparg=
<optimized out>, pp_stack=<synthetic pointer>)
at ../Python/ceval.c:4616
#16 _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=
<optimized out>) at ../Python/ceval.c:3124
#17 0x00000000005d91fc in PyEval_EvalFrameEx (throwflag=0,
f=Frame 0x205ade8, for file process.py, line 4, in main ())
at ../Python/ceval.c:547
#18 function_code_fastcall (globals=<optimized out>, nargs=
<optimized out>, args=<optimized out>, co=<optimized out>)
at ../Objects/call.c:283
#19 _PyFunction_FastCallKeywords (func=<optimized out>, stack=
<optimized out>, nargs=<optimized out>,
kwnames=<optimized out>) at ../Objects/call.c:408
#20 0x000000000054e5ac in call_function (kwnames=0x0, oparg=
<optimized out>, pp_stack=<synthetic pointer>)
at ../Python/ceval.c:4616
#21 _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=
<optimized out>) at ../Python/ceval.c:3124
#22 0x000000000054bcc2 in PyEval_EvalFrameEx (throwflag=0,
f=Frame 0x7f6bc80ab9f8, for file process.py, line 14, in
<module> ()) at ../Python/ceval.c:547
#23 _PyEval_EvalCodeWithName (_co=<optimized out>, globals=
<optimized out>, locals=<optimized out>,
args=<optimized out>, argcount=<optimized out>,
kwnames=0x0, kwargs=0x0, kwcount=<optimized out>, kwstep=2,
defs=0x0, defcount=0, kwdefs=0x0, closure=0x0, name=0x0,
qualname=0x0) at ../Python/ceval.c:3930
#24 0x000000000054e0a3 in PyEval_EvalCodeEx (closure=0x0,
kwdefs=0x0, defcount=0, defs=0x0, kwcount=0, kws=0x0,
argcount=0, args=0x0, locals=<optimized out>, globals=
<optimized out>, _co=<optimized out>)
at ../Python/ceval.c:3959
#25 PyEval_EvalCode (co=<optimized out>, globals=<optimized
out>, locals=<optimized out>) at ../Python/ceval.c:524
#26 0x0000000000630ce2 in run_mod (mod=<optimized out>,
filename=<optimized out>,
globals={'__name__': '__main__', '__doc__': None,
'__package__': None, '__loader__':
<SourceFileLoader(name='__main__', path='process.py') at remote
0x7f6bc803dfd0>, '__spec__': None, '__annotations__': {},
'__builtins__': <module at remote 0x7f6bc8102c28>, '__file__':
'process.py', '__cached__': None, 'time': <module at remote
0x7f6bc800dc78>, 'main': <function at remote 0x7f6bc80791e0>,
'foo': <function at remote 0x7f6bc7f69c80>, 'bar': <function at
remote 0x7f6bc7f69d08>},
locals={'__name__': '__main__', '__doc__': None,
'__package__': None, '__loader__':
<SourceFileLoader(name='__main__', path='process.py') at remote
0x7f6bc803dfd0>, '__spec__': None, '__annotations__': {},
'__builtins__': <module at rem--Type <RET> for more, q to quit,
c to continue without paging--
ote 0x7f6bc8102c28>, '__file__': 'process.py', '__cached__':
None, 'time': <module at remote 0x7f6bc800dc78>, 'main':
<function at remote 0x7f6bc80791e0>, 'foo': <function at remote
0x7f6bc7f69c80>, 'bar': <function at remote 0x7f6bc7f69d08>},
flags=<optimized out>, arena=<optimized out>) at
../Python/pythonrun.c:1035
#27 0x0000000000630d97 in PyRun_FileExFlags (fp=0x2062390,
filename_str=<optimized out>, start=<optimized out>,
globals={'__name__': '__main__', '__doc__': None,
'__package__': None, '__loader__':
<SourceFileLoader(name='__main__', path='process.py') at remote
0x7f6bc803dfd0>, '__spec__': None, '__annotations__': {},
'__builtins__': <module at remote 0x7f6bc8102c28>, '__file__':
'process.py', '__cached__': None, 'time': <module at remote
0x7f6bc800dc78>, 'main': <function at remote 0x7f6bc80791e0>,
'foo': <function at remote 0x7f6bc7f69c80>, 'bar': <function at
remote 0x7f6bc7f69d08>},
locals={'__name__': '__main__', '__doc__': None,
'__package__': None, '__loader__':
<SourceFileLoader(name='__main__', path='process.py') at remote
0x7f6bc803dfd0>, '__spec__': None, '__annotations__': {},
'__builtins__': <module at remote 0x7f6bc8102c28>, '__file__':
'process.py', '__cached__': None, 'time': <module at remote
0x7f6bc800dc78>, 'main': <function at remote 0x7f6bc80791e0>,
'foo': <function at remote 0x7f6bc7f69c80>, 'bar': <function at
remote 0x7f6bc7f69d08>}, closeit=1, flags=0x7ffc6028989c) at
../Python/pythonrun.c:988
#28 0x00000000006319ff in PyRun_SimpleFileExFlags
(fp=0x2062390, filename=<optimized out>, closeit=1,
flags=0x7ffc6028989c) at ../Python/pythonrun.c:429
#29 0x000000000065432e in pymain_run_file (p_cf=0x7ffc6028989c,
filename=<optimized out>, fp=0x2062390)
at ../Modules/main.c:427
#30 pymain_run_filename (cf=0x7ffc6028989c,
pymain=0x7ffc60289970) at ../Modules/main.c:1627
#31 pymain_run_python (pymain=0x7ffc60289970) at
../Modules/main.c:2877
#32 pymain_main (pymain=<optimized out>, pymain=<optimized
out>) at ../Modules/main.c:3038
#33 0x000000000065468e in _Py_UnixMain (argc=<optimized out>,
argv=<optimized out>) at ../Modules/main.c:3073
#34 0x00007f6bc841a09b in __libc_start_main (main=0x4bc560
<main>, argc=2, argv=0x7ffc60289ab8, init=<optimized out>,
fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7ffc60289aa8) at ../csu/libc-start.c:308
#35 0x00000000005e0e8a in _start () at ../Modules/main.c:797
Listing 1-4 Unmanaged Linux Backtrace from the Execution of the Python Script from Listing 1-1 with
Debugging Symbols

00 00000090`7e1ef0a8
00007ff9`8c44fcf9 ntdll!NtWaitForMultipleObjects+0x14
01 00000090`7e1ef0b0
00007ff9`8c44fbfe KERNELBASE!WaitForMultipleObjectsEx+0xe9
02 00000090`7e1ef390
00007ff8`ef943986 KERNELBASE!WaitForMultipleObjects+0xe
03 00000090`7e1ef3d0
00007ff8`ef94383d python311!PyTraceBack_Print_Indented+0x35a
04 00000090`7e1ef430
00007ff8`ef81a6b2 python311!PyTraceBack_Print_Indented+0x211
Random documents with unrelated
content Scribd suggests to you:
on the principle of free individualism; for we wish to treat all men
and women with the respect due to ourselves, if not to themselves.
The chief actors in the movement we have formerly known, and
some of them intimately. We have no doubt of their sincerity and
earnestness; but we must be permitted to say that we have found
nothing new or striking in their speeches, and we cannot remember
the time when we were not perfectly familiar with all their doctrines
and pretensions. Their views and aims were set forth in the New
England metropolis nearly forty years ago, if with less mental
refinement and polish, with an originality and freshness, a force and
energy, which they can hardly hope to rival. They were embodied in
1836, and attempted to be realized in the Society for Christian Union
and Progress, which its founder abandoned because he would not
suffer it to grow into a sect, because he saw his movement was
leading no whither, and could accomplish nothing for the glory of
God or the good of mankind here or hereafter, and because, through
the grace and mercy of God, he became convinced of the truth and
sanctity of the Catholic Church against which the Protestant
reformers in the sixteenth century rebelled. He may not now be very
proud of these radicals, but they are, to a great extent, the product
of a movement of which he and Ralph Waldo Emerson were the
earliest and principal leaders in Boston.
We readily acknowledge that the pretensions of these radical men
and women are very great, but they show no great intellectual
ability, and are painfully narrow and superficial. The ministers and
ex-ministers who figured on the occasion exhibited neither depth nor
breadth of view, neither strength nor energy of mind. They proved
themselves passable rhetoricians, but deplorably ignorant of the past
and the present, of the religions they believed themselves to have
outgrown, and especially of human nature and the wants of the
human soul. They appeared to know only their own theories
projected from themselves, and which are as frail and as attenuated
as any spider's web ever rendered visible by the morning dew. They
pretend to have studied, mastered, and exhausted all the past
systems, religions, and mythologies; they pride themselves on the
universality of their knowledge, and their having lost all bigotry,
intolerance, or severity toward any sect or denomination. They
speak even patronizingly of the church, and are quite ready to
concede that she was good and useful to humanity in her day, in
barbarous times, and in the infancy of the race; but humanity,
having attained its majority, has outgrown her, and demands now a
more manly and robust, a purer and broader and a more living and
life-giving religion—a religion, in a word, more Christian than
Christianity, more Catholic than Catholicity. Ignorant or worse than
ignorant of the lowest elements of Catholic teaching, they fancy they
have outgrown it, as the adult man has outgrown the garments of
his childhood. Their self-conceit is sublime. Why, they are not large
enough to wear the fig-leaf aprons fabricated by the reformers of
the sixteenth century with which to cover their nakedness. The
tallest and stoutest among them is a dwarf by the side of a Luther or
a Calvin, or even of the stern old Puritan founders of New England;
nay, they cannot bear an intellectual comparison even with the
originators of New England Unitarianism.
Take the Reverend Colonel Higginson, a man of good blood and rich
natural gifts, one who, if he had been trained in a Christian school,
and had had his mind elevated and expanded by the study of
Christian dogmata, could hardly have failed to be one of the great
men, if not the greatest man of his age. He has naturally true
nobility of soul, rare intellectual power, and genius of a high order;
yet he is so blinded, and so dwarfed in mind by his radicalism, that
he can seriously say, "There is no affirmation except the belief in
universal natural religion; all else is narrowness and sectarianism."
He has, then, no views broader than nature, no aspirations that rise
higher than nature, and labors under the delusion that men, reduced
to nature alone, would really be elevated and ennobled. He has
never learned that nature is not self-sufficing—is dependent; that it
has both its origin and end as well as its medium in the
supernatural, and could not act or subsist a moment without it—a
truth which the Catholic child has learned before a dozen years old,
and which is a simple commonplace with the Christian; so much so,
that he rarely thinks it necessary to assert it, far less to prove it.
This utterance of the reverend colonel is accepted by all the radicals.
None of them get above second causes; for them all God and nature
appear to be identical and indistinguishable; and this appears to be
their grand and all-reconciling doctrine. Hence the religion which
they propose has no higher origin than man, and no higher end than
the natural development and well-being of man, individual and
social, in this earthly life. It is the religion of humanity, not the
religion of God, and man, not God, is obeyed and worshipped in it;
yet it seems never to occur to these wise men and women that
nature either separated from or identified with God vanishes into
nothing, and their religion with it. But is a religion that is simply
evolved from humanity, that has no element above the human, and
is necessarily restricted to man in this life, and that contemplates
neither fore nor after, higher, deeper, and more universal than
Christianity which asserts for us the nature and essence of God,
teaches us the origin and end of all things, the real relations of man
to his Maker and to universal nature through all the degrees and
stages of his existence? No; it is your naturism that is "narrowness
and sectarianism."
Radicalism has heard of the mystery of the Incarnation, and
interprets it to mean not the union of two for ever distinct natures,
the divine and human, in one divine person, but one divine nature in
all human persons. Hence, while the person is human,
circumscribed, and transitory, nature in all men is divine, is God
himself, permanent, universal, infinite, immortal. This is what the
Christian mystery, according to them, really means, though the
ignorant, narrow-minded, and blundering apostles never knew it,
never understood its profound significance. The church took the
narrow and shallow view of the apostles; and hence our radicals
have outgrown the church, and instead of looking back or without,
above or beyond themselves, they look only within, down into their
own divine nature, whence emanates the universe, and in which is
all virtue, all good, all truth, all force, all reality. The aim of all moral
and religious discipline must be to get rid of all personal distinction,
all circumscription, and to sink all individuality in the divine nature,
which is the real man, the "one man," the "over-soul" of which Mr.
Emerson in his silvery tones formerly discoursed so eloquently and
captivated so many charming Boston girls, who understood him by
sympathy with their hearts, not their heads, though what he said
seemed little better than transcendental nonsense to the elder,
graver, and less susceptible of both sexes. Impersonal nature is
divine; hence the less of persons we are the more divine we are,
and the more we act from the promptings of impersonal nature the
more god-like our acts. Hence instinct, which is impersonal, is a
safer guide than reason, which is personal; the logic of the heart is
preferable to the logic of the head, and fools and madmen superior
to the wise and the sane. Hence, are fools and madmen profoundly
reverenced by Turks and Arabs.
But impersonal nature is one and identical in all men, and identical,
too, with the divine nature. There are no distinct, specific, or
individual natures; there is only one nature in all men and things; for
all individuality, all difference or distinction, is in the personality.
Hence when you get rid of personality, which, after all, has no real
subsistence, and sink back into impersonal nature, you attain at
once to absolute unity, always and ever present under all the
diversity of beliefs, views, or persons. Men and women are mere
bubbles floating on the face of the ocean, and nothing distinguishes
them from the ocean underlying them but their bubbleosity. Destroy
that, and they are the ocean itself. Get rid of personality, sink back
into impersonal nature, and all men and women become one, and
identical in the one universal nature. Vulgar radicals and reformers
seek to reform society by laboring to ameliorate the condition of
men and women as persons, and are less profitably employed than
the boy blowing soap-bubbles; for the reality is in the ocean on the
face of which the bubble floats, not in the bubbleosity. The true
radicals, who radicalize in satin slippers and kid gloves, seek not to
ameliorate the bubbleosity which is unreal, an unveracity, a mere
apparition, a sense-show, but to ameliorate man and society by
sinking it, and all differences with it, in universal impersonal nature.
Yet what amelioration is possible except personal? If you get rid of
men and women as persons, you annihilate them in every sense in
which they are distinguishable from the one universal nature; and
suppose you to succeed in doing it, your reform, your amelioration
would be the annihilation of man and society; for you can have
neither without men and women as individuals—that is, as persons.
To reform or ameliorate them in their impersonal nature is both
impossible and unnecessary; for in their impersonal nature they are
identical with universal nature, and universal nature is God, infinite,
immutable, immortal, incapable of being augmented or diminished.
Nothing can be done for or against impersonal nature. We see, then,
nothing that these refined and accomplished radicals can propose as
the object of their labors but the making of all men and women, as
far as possible, talk and act like fools and madmen. This would seem
to be their grand discovery, and the proof of their having outgrown
the church.
But we should be ourselves the fool and madman if we attempted to
reason with them. They discard logic, reject reason, and count the
understanding as one of the poorest of our faculties; as mean,
narrow, personal. Reason and understanding are personal; and all
truth, all knowledge, all wisdom, all that is real is impersonal. Is not
the impersonality of God, that is, of nature, a primary article of their
creed? How, then, reason with them or expect them to listen to the
voice of reason? Reason is too strait for them, and they have
outgrown it, as they have outgrown the church! They do not even
pretend to be logically consistent with themselves. No one holds
himself bound by his own utterances, any more than he does by the
utterances of another. They are free religionists, and scorn to be
bound even by the truth.
But suppose they wish to retain men and women—or women and
men, for with them woman is the superior—as persons, how do they
expect by restricting, as they do, their knowledge to this life, and
making their happiness consist in the goods of this world alone, to
effect their individual amelioration? Socialism secures always its own
defeat. The happiness of this life is attainable only by living for
another. Restricted to this life and this world, man has play for only
his animal instincts, propensities, and powers. There is no object on
which his higher or peculiarly human affections and faculties can be
exerted, and his moral, religious, rational nature must stagnate and
rot, or render him unspeakably miserable by his hungering and
thirsting after a spiritual good which he has not, and which is
nowhere to be had. The happiness of this life comes from living for a
supernatural end, the true end of man, in obedience to the law it
prescribes. When we make this life or this world our end, or assume,
with Mr. Emerson, that we have it within, in our own impersonal
nature, we deny the very condition of either individual or social
happiness, take falsehood for truth; and no good ever does or can
come from falsehood.
It will be observed by our readers, from the extracts we have made,
that the radicals not only confine their views to humanity and to this
life, but proceed on the assumption of the sufficiency of man's
nature for itself. They appear to have, with the exception of Mrs.
Howe, no sense of the need of any supernatural help. They have no
sense of the incompleteness and insufficiency of nature, as they
have no compassion for its weakness. They never stumble, never
fall, never sin, are never baffled, are never in need of assistance. It
is not so with ordinary mortals. We find nature insufficient for us,
our own strength inadequate; and, voyaging over the stormy ocean
of life, we are often wrecked, and compelled to cry out in agony of
soul, "Lord, save or we perish." Whosoever has received any
religious instruction knows that it is not in ourselves but in God that
we live and move and have our being, and that not without
supernatural assistance can we attain true beatitude.
In conclusion, we may say, these radical men and women set forth
nothing not familiar to us before the late Theodore Parker was an
unfledged student of the Divinity School, Cambridge, and even
before most of them were born. We know their views and aims
better than they themselves know them, and we have lived long
enough to learn that they are narrow and superficial, false and vain.
We have in the church the freedom we sighed for but found not, and
which is not to be found, in radicalism. God is more than man, more
than nature, and never faileth; Christ the God-man, at once perfect
God and perfect man, two distinct natures in one divine person, is
the way, the truth, and the life; and out of him there is no salvation,
no true life, no beatitude. We do not expect these radicals to believe
us; they are worshippers of man and nature, and joined to their
idols. Esteeming themselves wise, they become fools; ever learning,
they are never able to come to the knowledge of the truth, any more
than the child is able to grasp the rainbow.
MEMENTO MORI.
"Come and see how a Christian can die."—Addison to his step-son.
We read that the celebrated Montaigne wished to make a
compilation of remarkable death-bed scenes; for, as he said, "he
who should teach men how to die would teach them how to live." It
may not be unprofitable for us to recall the last moments of some
who have died in the Catholic Church. It may give us some new idea
of the power of faith to sustain the soul in that supreme moment,
and show us in what a super-eminent degree the spirit of the church
fits one for the last great change, and fortifies him to meet it
hopefully if not triumphantly. Let us, then, in this month,
consecrated by so many pious Catholic hearts to the memory of the
dead, draw around the death-beds of some who are remarkable in
various ways, and see if we would not have our last end like theirs.
There is a horrid curiosity, if no higher feeling, which attracts us to
the side of the dying, "to observe their words, their actions, and
what sort of countenance they put upon it." It is as if we would read
the final conflict of the soul, obtain some new insight into the great
mystery of death, and perhaps catch some glimpse of what awaits
us beyond its shadows. Even the unbeliever at such a moment,
forced to reflect on the destiny of the soul, exclaims, "Soul, what art
thou? Flame that devourest me, wilt thou live after me? Must thou
suffer still? Mysterious guest, what wilt thou become? Seekest thou
to reunite thyself to the great flame of day? Perhaps from this fire
thou art only a spark, only a wandering ray which that star recalls.
Perhaps, ceasing to exist when man dies, thou art only a moisture
more pure than the animated dust the earth has produced." The
mind thus excited to doubt and question is already on the road to
conviction. To see how a good man meets his fate, is a lesson of
heavenly love which fastens itself in the memory; the words that
consoled him and that he uttered sink into the heart, perhaps to
diffuse light when our own time comes.
If Addison found nothing more imposing, nothing more affecting,
than accounts of the last moments of the dying; if the great
Montaigne loved the most minute details respecting them, we need
not turn with repugnance from what we have a vital interest in, and
what may give us some new idea of the blessing of dying in the
arms of our Holy Mother the Church, fortified by her sacraments and
sustained by her spirit. The French historian Anquetil, in giving an
account of the death of Montmorenci, says, "It is instructive for
persons of all conditions in life to witness the death of a great man
who unites noble sentiments with Christian humility." It is true Dr.
Johnson says, "It matters not how a man dies, but how he lives;"
but a holy death is generally the crown of a good life, though "there
are dark, dark deaths which even the saints have died, the aspect of
whose brightness was all turned heavenward, so we could not see
it."[38]
I do not believe that "there is more or less of affectation in every
death-bed scene." Young, rather, is right:

"A death-bed's a detector of the heart.


Here tired dissimulation drops her mask
Through life's grimace, that mistress of the
scene!"

Father Faber says:

"Every Christian death-bed is a world—a complete world—of


graces, interferences, compensations, lights, struggles, victories,
supernatural gestures, and the action of grand spiritual laws.
Each death-bed, explained to us as God could explain it, would
be in itself an entire science of God—a summa of the most
delicate theology. The varieties of grace in the individual soul
are so many infinities of the one infinite life of God. No two
deaths are quite alike. The most delicate shades of difference
between one death and another would probably disclose to us
more of the ways of God, and more of the capabilities of the
soul than philosophy has ever taught. Some deaths are so
beautiful that they can hardly be recognizable for punishments.
Such was the death of St. Joseph, with his head pillowed on the
lap of Jesus. The twilight bosom of Abraham was but a dull
place compared with the house of Nazareth which the eyes of
Jesus lighted. Such was Mary's death, the penalty of which was
rather in its delay. It was a soft extinction, through the noiseless
flooding of her heart with divine love. As nightingales are said to
have sung themselves to death, so Simeon died, not of the
sweet weariness of his long watching, but of the fulness of his
contentment, of the satisfaction of his desires, of the very new
youth of soul which the touch of the Eternal Child had infused
into his age, and, breaking forth into music which heaven itself
might envy and could not surpass, he died with his world-
soothing song upon his lips—a song so sunset-like that one
might believe all the beauty of all earth's beautiful evenings
since creation had gone into it to fill it full of peaceful spells.
Age after age shall take up the strain. All the poetry of Christian
weariness is in it. It gives a voice to the heavenly detachment
and unworldliness of countless saints. It is the heart's evening
light after the working hours of the day to millions and millions
of believers. The very last compline that the church shall sing,
before the midnight when the doom begins and the Lord breaks
out upon the darkness from the refulgent east, shall overflow
with the melodious sweetness of Simeon's pathetic song."

Thus do our words—even dying words—go on vibrating for ever.


How many have died like St. Oswald, Archbishop of York, and the
Venerable Bede, repeating the Gloria Patri—that act of praise which
St. Jerome found in constant use among the oriental monks, and
was the means of introducing it into the western church, where it is
now daily repeated by countless tongues.
St. Ignatius Loyola died with the holy name of Jesus on his lips, that
watchword of his glorious order so full of sweetness to the heart. So
did that angelic youth, St. Aloysius. St. Hubert died repeating the
Lord's Prayer; St. Stephen of Grandmont while saying, "Into thy
hands, O Lord, I commend my spirit." So did St. John of the Cross,
St. Catharine of Genoa, and hundreds of others.
St. Arsenius, after more than fifty years spent in the desert,
regarded death with fear. His brethren, seeing him weep in his
agony, asked him if, like other men, he feared to die. "I am seized
with great fear," he answered, "nor has this dread ever left me since
I first came into the desert." Nevertheless, he expired, in peace and
humble confidence, in his ninety-fifth year.
St. John Chrysostom, when dying, had all his clothes changed, even
to his shoes, putting on his best garments, which were white, as for
his heavenly nuptials; for "to one who loves," says Novalis, "death is
a mystery of sweet mysteries—it is a bridal night." He then received
the blessed sacrament and prayed, ending according to his custom,
with, "Glory be to God for all things." Then making the sign of the
cross, he gave up his soul.[39]
We read of the poet-monk Cædmon, "That tongue, which had
composed so many holy words in praise of the Creator, uttered its
last words while he was in the act of signing himself with the cross,
and thus he fell into a slumber to awaken in paradise and join in the
hymns of the holy angels whom he had imitated in this world, both
in his life and in his songs."[40]
The account of the death of the Venerable Bede is well known, but it
is one that can always be read again and again with renewed profit,
and never without emotion.

"About a fortnight before the feast of Easter," says his disciple


Cuthbert, "he was reduced to a state of great debility, with
difficulty of breathing, but without much pain, and in that
condition he lasted till the day of the Lord's Ascension. This time
he passed cheerfully and joyfully, giving thanks to Almighty God
both by day and night, or rather at all hours of the day and
night. He continued to give lessons to us daily, spending the
rest of his time in psalmody, and the night also in joy and
thanksgiving, unless he were interrupted by a short sleep; and
yet, even then, the moment he awaked he began again, and
never ceased, with outstretched hands, to return thanks to God.
I can declare with truth that I never saw with my eyes, nor
heard with my ears, of any man who was so indefatigable in
giving thanks to the living God.
"O truly happy man! He chanted the passage from the blessed
Apostle Paul, 'It is a dreadful thing to fall into the hands of the
living God,' and several other passages from Holy Writ, warning
us to throw off all torpor of soul, in consideration of our last
hour. And being conversant with Anglo-Saxon poetry, he
repeated several passages and composed the following lines in
our tongue:

'Before the need-fare


None becometh
Of thought more wise
Than is his need.
To search out
Ere his going hence,
What his spirit
For good or evil
After his death-day
Doomed may be.'

He also chanted the antiphons according to his and our custom.


One of these is, 'O King of glory, Lord of hosts, who on this day
didst ascend in triumph above all the heavens, leave us not
orphans, but send upon us the Spirit of truth, the promised of
the Father. Alleluia.' When he came to the words 'leave us not
orphans,' he burst into tears and wept much; and after a while
he resumed where he had broken off, and we who heard him
wept with him. We wept and studied by turns; or rather wept all
the time that we studied.
"Thus we passed in joy the quinquagesimal days till the
aforesaid festival, and he rejoiced greatly, and gave thanks to
God for the infirmities under which he suffered, often repeating,
'God scourgeth every son whom he receiveth,' with other
passages of Scripture, and the saying of St. Ambrose, 'I have
not lived so as to be ashamed to live among you; nor do I fear
to die, for we have a gracious God.'
"During these days, beside the lessons which he gave us, and
the chant of the psalms, he undertook the composition of two
memorable works; that is, he translated into our language the
Gospel of St. John as far as 'But what are those among so
many?' [St. John vi. 9,] and made a collection of extracts from
the notes of Isidore the bishop, saying, 'I will not suffer my
pupils to read falsehoods, and labor without profit in that book,
after my death.' But on the Tuesday before the Ascension his
difficulty of breathing began to distress him exceedingly, and a
slight tumor appeared in his feet. He spent the whole day and
dictated to us with cheerfulness, saying occasionally, 'Lose no
time; I know not how long I may last. Perhaps in a very short
time my Maker may take me.' In fact, it seemed to us that he
knew the time of his death. He lay awake the whole night
praising God, and at dawn on the Wednesday morning ordered
us to write quickly, which we did till the hour of tierce. At that
hour we walked in procession with the relics, as the rubric for
the day prescribed; but one of us remained to wait on him, and
said to him, 'Dearest master, there still remains one chapter
unwritten; will it fatigue you if I ask more questions?' 'No,' said
Bede; 'take your pen and mend it, and write quickly.' This he
did.
"At noon he said to me, 'I have some valuables in my little chest
—pepper, handkerchiefs, and incense. Run quickly and bring the
priests of the monastery to me, that I may make to them such
presents as God hath given to me. The rich of this world give
gold and silver and other things of value; I will give to my
brethren what God hath given to me, and will give it with love
and pleasure.' I shuddered, but did as he had bidden. He spoke
to each one in his turn, reminding and entreating them to
celebrate masses, and to pray diligently for him, which all
readily promised to do.
"When they heard him say that they would see him no more in
this world, all burst into tears; but their tears were tempered
with joy when he said, 'It is time that I return to Him who made
me out of nothing I have lived long, and kindly hath my merciful
Judge forecast the course of my life for me. The time of my
dissolution is at hand. I wish to be released and to be with
Christ.' In this way he continued to speak cheerfully till sunset,
when the fore-mentioned youth said, 'Beloved master, there is
still one sentence unwritten.' 'Then write quickly,' said Bede. In
a few minutes the youth said, 'It is finished.' 'Thou hast spoken
truly,' replied Bede; 'take my head between thy hands, for it is
my delight to sit opposite to that holy place in which I used to
pray; let me sit and invoke my Father.' Sitting thus on the
pavement of the cell, and repeating, 'Glory be to the Father, and
to the Son, and to the Holy Ghost,' as he finished the word
'Ghost,' he breathed his last and took his departure for heaven."
[41]

We read that St. Dunstan had Mass celebrated in his room on the
day of his death; and after communicating, he broke forth into the
following prayer, "Glory be to thee, Almighty Father, who hast given
the bread of life from heaven to those that fear thee, that we may
be mindful of thy wonderful mercy to man in the incarnation of thine
only-begotten Son, born of the Virgin. To thee, Holy Father, for that
when we were not, thou didst give to us a being, and when we were
sinners, didst grant to us a Redeemer, we give due thanks through
the same thy Son, our Lord and God, who with thee and the Holy
Ghost maketh all things, governeth all things, and liveth through
ages and ages without end." Shortly afterward he died in the sixty-
fourth year of his age.
The Cistercian abbot Aelred of Yorkshire died in wonderful peace
after eight years of monastic life, repeating with his last breath, "I
will sing eternally, O Lord, thy mercy, thy mercy, thy mercy!"
While St. Wilfrid of York lay dying in the fair town of Oundle, the
monks did not cease chanting night and day around his bed, though
with much ado, so bitterly they wept. When they came to the one
hundred and third psalm, and were sweetly and solemnly singing the
words, "Emittes spiritum tuum, et creabuntur, et renovabis faciem
terræ," "Thou shalt send forth thy spirit, and they shall be created;
and thou shalt renew the face of the earth," the words stirred the
soul of the careworn abbot, by whose pillow lay the Lord's body and
blood; he turned his head gently, and without a sigh gave back his
soul to God.[42]
St. Gilbert, when he was more than a century old, used to exclaim,
"How long, O Lord, wilt thou forget me for ever? Woe is me, for the
time of my sojourning is prolonged!" His soul was at last released
one morning at the hour of dawn, while the monks were repeating
the verse of the office, "The night is far spent, the day is at hand."
Twenty abbots assembled to witness the death of St. Stephen
Harding at Citeaux. Hearing them whisper that he had nothing to
fear after so holy and austere a life, he said to them trembling, "I
assure you I go to God in fear and trembling. If my baseness should
be found to have ever done any good, even in this I fear lest I
should not have preserved that grace with the humility and care I
ought."
St. Francis of Assisi, when he found he was dying, wished to be laid
on the bare ground. When this was done, he crossed his arms and
said, "Farewell, my children. I leave you in the fear of God. Abide
therein. The time of trial and tribulation cometh. Happy are they
who persevere in well-doing. For me, I go to God joyfully,
recommending you all to his grace." He had the passion according to
the Gospel of St. John read to him, and then repeated in a feeble
voice the one hundred and forty-first psalm. Having said the final
verse, "Bring my soul out of prison," he breathed his last.
St. Thomas Aquinas died lying on ashes sprinkled on the floor. When
he saw the holy viaticum in the priest's hands, he said, "I firmly
believe that Jesus Christ, true God and true man, is present in this
august sacrament. I adore thee, my God and my Redeemer. I
receive thee, the price of my redemption, the viaticum of my
pilgrimage, for whose honor I have studied, labored, preached, and
taught. I hope I have never advanced any tenet as thy word which I
had not learned from thee. If through ignorance I have done
otherwise, I revoke it all and submit my writings to the judgment of
the holy Roman Church." Thus lying in peace and joy, he received
the last sacraments, and was heard to murmur, "Soon, soon will the
God of all consolation crown his mercy to me and satisfy all my
desires. I shall shortly be satiated in him, and drink of the torrent of
my delights; be inebriated from the abundance of his house; and in
him, the source of life, I shall behold the true light."
When the viaticum was brought to St. Theresa, she rose up in her
bed and exclaimed, "My Lord and my Spouse! the desired hour has
at length come. It is time for me to depart hence." Her confessor
asked her if she wished to be buried in her own convent at Avila.
She replied, "Have I any thing of my own in this world? Will they not
give me a little earth here?" She died with the crucifix in her hands,
repeating, as long as she could speak, the verse of the Miserere, "A
contrite and humble heart, O God, thou wilt not despise!"
There is a touching account of a renowned and pious knight who, in
the ages of faith, made a pilgrimage to the Holy Land. Following
lovingly the traces of our Saviour's steps, his heart became so
broken with sorrow and love that his life flowed out through the
wound. He visited with tender devotion Nazareth, whose hills leaped
for joy when the Divine Word became incarnate in the womb of a
Virgin; Mount Tabor, whose summit was lit up by God glorifying his
only Son; the river Jordan, consecrated by the baptism our Lord
received at the hands of St. John the Baptist; Bethlehem, where in a
poor manger were heard the first cries of the Infant Word; the
Garden of Gethsemane, which Jesus bedewed with a bloody sweat;
Golgotha, where by his blood the Redeemer reconciled earth with
heaven; and the glorious tomb whence the God-man issued
triumphant over death. Finally, he came to the Mount of Olives. Here
contemplating the sacred foot-prints left on the rock by the
ascending Saviour, he pressed his lips upon them with loving
gratitude; then gathering together all the strength of his love, raising
his eyes and hands toward heaven, and longing to ascend by the
way taken by our Saviour, "O Lord Jesus!" he cried in all the ardor of
his love, "I can no longer find thee or follow thee in this land of
exile; grant that my heart may ascend to thee on high!" And, as he
uttered these ardent words, his soul fled to God like an arrow direct
to its aim.
I find in an old book the following affecting account of the death of
Friar Benedict, who died at La Trappe on the twentieth of August,
1674:

"Brother Benedict, of the diocese of Rouen, died five years and


a half after his profession, the day of the fête of our father St.
Bernard, aged thirty-two years. And as God visited him
peculiarly with his grace in the progress of his disease, and at
the time of his death, it has been thought desirable, in order
both to recognize the mercy of Christ and for the edification of
his community, to record the principal circumstances of his life
and death.
"He fell sick nearly four years before his death of a disease upon
his chest, and although, after that time, he was almost
continually oppressed with a violent cough, with extreme pain,
and with an intermitting fever, he never manifested even the
slightest impatience of his suffering or the least desire to be
cured. About Christmas of the year 1673, which preceded his
death a few months, his disease increased. But he did not cease
to discharge the peculiar offices prescribed to penitents in the
monastery. The fever which seized him about the middle of
Christmas did not prevent his following the same course of life
he had long pursued. Five days after Easter, his disease having
considerably advanced, the reverend father abbot ordered him
to be conducted to the infirmary. There his fever immediately
increased, his limbs inflamed, his cough became more violent,
and the struggles in which he passed his nights quite exhausted
him. Notwithstanding this, he continued to lie on a hard bed of
straw till the moment when they removed him to the ashes, five
hours before his death. He rose at four in the morning; he dined
at the table of the infirmary, though his weakness was such that
he was evidently unable to sustain the weight of his own head.
During this time nothing was to be discovered upon his
countenance which did not evidence the most complete
tranquillity. He had been remarkably ingenious, and had nothing
about him which he had not both invented and executed. Three
weeks before his death, he said to the father abbot that, as he
had been in the habit of constructing many things for the
convenience of the monastery, and as it might be troublesome
to the abbot to find and introduce workmen into the house after
his death, he would on this account, if agreeable to the abbot,
instruct one of the brothers in his various arts. The abbot having
consented, he instructed a monk in less than a fortnight in the
different arts in which he had been accustomed to be employed.
And notwithstanding his weakness and pain, he did all this with
so much patience and collectedness that he seemed to have lost
all remembrance of his sufferings. The father abbot, knowing
the grace which God had given to him, and the degree in which
God had detached him from the world, thought it his duty to
follow up what he believed to be the designs of Providence in
regard to him. This led him in the various ordinances of religion
to maintain all the rigor which charity and prudence would
permit; though in all private communications with him he
treated him with the tenderness of a father. One day, when so
overcome with pain that he could take nothing, he described his
state to the father abbot, accompanying his description with
certain expressions of countenance which it is almost impossible
to restrain in such circumstances. The father abbot, however,
said with severity, (as though he had no compassion for those
sufferings in which he sympathized so truly,) that 'he spoke like
a man of the world, and that a monk ought to manifest under
the worst circumstances the constancy of his soul.' Benedict in
an instant assumed that air of severity that never afterward
quitted him. The fear lest the great exertions which he made by
day and by night, combined with his extreme debility, might
suddenly remove him, led them to give him the holy sacrament
and extreme unction. He received both with every
demonstration of piety. Such, however, was his weakness that
he immediately fainted away. The father abbot having asked,
before they brought him the extreme unction, if he desired that
the whole community should be present at the ceremony, he
answered that, 'exterior ceremonies were not of vital
importance; that his brethren would derive little edification from
him; and that he had more need of their prayers than their
presence.' All his conversation during his malady was on the
necessity of separation from worldly things, of the joy which he
anticipated in death, and of the mercy which God had shown
him in suffering him to end his days in the society of the father
abbot.
"Some days before his death, the father abbot inquired minutely
into the state of his mind; he answered in these very words, 'I
consider the day of my death as a festival; I have no desire for
any thing here, and I cannot better express my total separation
from things below than by comparing myself to a leaf which the
wind has lifted from the earth. All that I have read in the sacred
Scriptures comes home to me and fills me with joy.
Nevertheless, I can in no action of my life see any thing which
can sustain the judgment of God, and which is not worthy of
punishment; but the confidence which I have in his goodness
gives me hope and consolation.' He added, 'How can it be that
God should show such compassion to a man who has so
miserably served him? I desire death alone; what can a man be
thinking of, not always to desire it? What joy, my father, when I
remember that I am about to refresh myself in the waters of
life.'
"His ordinary reading, for many years of his life, had been the
sacred Scriptures, which were so familiar to him that he spoke
of little else. He mentioned to the father abbot so many
passages, and repeated them in a manner so touching, so
animated, and so devotional, that his hearers were at once
edified and astonished. Those passages which were uppermost
in his mind respected chiefly the majesty of God; but as he had
a most humble opinion of his own life, which had however been,
in the main, faithful and pure, he always reverted to the subject
of the divine compassion. It was in that he found peace and
repose.
"On the day of the Assumption, he felt himself so weak that he
was unable to leave the infirmary. The father abbot carried him
our Lord, whom he received upon his knees, leaning on two of
his brethren. Two days afterward, he fell into strong
convulsions, and imagined that the hour of his deliverance was
come. The father abbot asked, 'Is it with joy that you depart?'
'Yes,' said he, 'from my very heart.' He then added, 'Into thy
hands I commend my spirit.'
"The customary prayers were then offered up for the dying; but
the convulsions having left him, the father abbot said that the
hour of God was not arrived; and having given orders to remove
him from the ashes to his bed, he turned to the father abbot
with a serene countenance, and said, 'The will of God be done.'
He lived three days waiting with anxiety the time when God
would have mercy upon him. And such was his desire of death
that the father abbot was obliged more than once to say to him
that it was not for him to anticipate the designs of Providence.
His pangs lasted till within an hour of his death, but he endured
them with his accustomed patience and serenity. He said three
days before his death that the most dangerous moments were
the last, and that he did not doubt the great enemy of man
would seek to disquiet him, and therefore requested the prayers
of the community. The father abbot, having asked, after some
other general discourse, if he knew the guilt of sin, he answered
sighing, and, as it were, looking into the recesses of his own
soul, and in language expressive of the intensity of his feelings,
'Alas! once I knew it not; but now I see in the Scripture that
God claims, as one of his chief attributes, the power of
pardoning sin; "I am he who blotteth out your iniquities." I am
therefore convinced that sin is a tremendous offence. I am far,
indeed, from being like those who are always overwhelmed with
a consciousness of their offences, but yet I believe, upon the
testimony of faith and Scripture, that sin is a fathomless gulf of
ruin.' These words were accompanied with a manner so
extraordinary that they touched the very hearts of those who
surrounded him.
"His bones having pierced his skin, and his shirt of serge
sticking to his wounds, he begged them to move him a little;
but at the end of the day, when the person who had the care of
him wished again to ease his body, he said, 'My brother, you
give me too much ease.' The father abbot having ordered some
milk to be brought him, which was the only nourishment he
took, he said, 'You wish then, my father, to prolong my life, and
are unwilling I should die on the day of St. Bernard.' The father
abbot having quitted him, he begged, perceiving that his death
approached, that he might be called back. As soon as he saw
him, he said, 'Father, my eyes fail me—it is finished.' The father
having asked him in what state he found himself, and if he was
about to approach Christ, 'Yes, father,' said he, 'by the grace of
God, I am. I am not indeed sensible of any extraordinary
elevation of my mind to God; but through his mercy I am in
perfect peace. God be thanked!' This he repeated three times.
The father abbot having asked him if he wished to die upon the
cross and upon the ashes, 'Yes,' said he, 'from my heart.' With
these words he lost his speech, or, at all events, it was
impossible to hear any thing intelligible from him except the
name of Jesus, which he pronounced repeatedly. They carried
him to the straw spread out in his chamber. He was nearly four
hours in a dying state, and preserved his recollection during the
whole time. His eyes indicating a wandering state of mind, the
father arose, took some holy water, and, having scattered it
around him, repeated these words, 'Let God arise and let his
enemies be scattered.' His face at this moment resumed its
serenity. He kissed the cross several times, and, wanting
strength to lay hold of it, they observed that he advanced his
head to reverence it every time that it was presented to him. At
length all his disquietudes ceased; they beheld him calm,
peaceful, serene; and he breathed his last sigh with so much
tranquillity that those who watched him scarcely perceived his
death."

When William the Conqueror was on his death-bed, he confessed all


the sins of his life, from his youth up, aloud and before a large
number of priests and nobles from England and Normandy. We read
that, after a long agony, on Thursday, the ninth of September, as the
sun rose in glorious splendor, William awoke, and presently heard
the great bell of the metropolitan church. He asked why it was
ringing. "Seigneur," replied his servants, "it is ringing for prime at the
church of our Lady St. Mary." Then the king raised his eyes to
heaven and, lifting up his hands, said, "I recommend myself to holy
Mary, Mother of God, that by her holy prayers she may reconcile me
to her dear and beloved Son, our Lord Jesus Christ." With these
words he expired.[43]
Peter, King of Aragon, at the approach of death, devoutly confessed
all his sins and received the sacraments. After bidding his family
farewell, he took a cross in his hands, lifted his streaming eyes to
heaven, crossed himself three times, kissed the cross, and then said,
"O Lord our Father, Jesus Christ our true God! into thy hands I
commend my spirit. Deign by thy holy passion to receive my soul
into paradise with the blessed St. Martin, whose festival Christians
this day celebrate." And with his eyes still raised heavenward, he
departed.[44]
When James, an unlearned lay brother of the order of St. Francis,
came to die, he begged pardon of all his brethren, took a wooden
cross from the head of his bed, kissed it, put it to his eyes, and then
said, with tenderness, "Dulce lignum, dulces clavos, dulcia ferens
pondera, quæ sola fuisti digna sustinere Regem cœlorum et
Dominum," "O sweet wood, sweet nails, supporting a sweet burden!
Thou alone wast worthy to sustain the King and Lord of the
heavens." All around him were greatly astonished, for he was
unlearned, and they had never heard him speak in Latin.[45]
We read in the life of St. Gertrude of the death of a young person,
who from her infancy upward had always shown a real spirit of
detachment from the world. When she found herself in the agony of
death, she bade farewell to all who were present, promising to be
mindful of them before God. Then turning in her sufferings toward
the Heavenly Bridegroom, she earnestly said, "O Lord, who knowest
the most secret thoughts of my heart, thou hast known how eagerly
I have longed to spend all the powers of my being, even unto old
age, in thy service; now that I feel thou desirest to recall me to
thyself, all my desire of serving thee in this world is changed to such
an ardent longing to behold thee, and be united to thee, that death,
however bitter it may be to others, only seems sweet to me." She
wished the sisters to read to her the account of the sufferings of our
Saviour in the Gospel of St. John, and when they came to the words,
"He bowed his head and gave up the ghost," she asked for a
crucifix. She lovingly kissed the feet of the image of our Saviour,
thanked him for his graces, commended her soul to his care, and
then slept peacefully in our Lord.
Our own Mother Seton, though she saw the intense grief of all the
community, and heard the sobs of her daughter, who fainted at her
side, died with the most profound composure. Her whole appearance
indicated peace and resignation. Lifting her hands and eyes to
heaven, she said, "May the most just, the most high, and the most
amiable will of God be accomplished for ever." Her last words were
the sacred names of Jesus, Mary, and Joseph.
The poet Tasso, when informed that his last hour was at hand, not
only received the warning without alarm, but, embracing the
physician, thanked him for tidings so agreeable, and, raising his eyes
to heaven, returned tender and devout thanks to his Creator that,
after so tempestuous a life, he now brought him to a calm haven.
From this time he did not speak willingly on terrestrial subjects, not
even of that fame after death of which through life he had been
most solicitous; but resigned himself wholly and with the liveliest
devotion to the last solemn offices prescribed by his religion. After
confessing with great contrition, and receiving twice the sacrament
with a reverence and humility that affected all the beholders, he
received the papal benediction humbly and gratefully, saying this
was the chariot upon which he hoped to go crowned, not with laurel
as a poet into the capital, but with glory as a saint to heaven. When
he had arranged all his earthly affairs, he begged to be left alone
with his crucifix and one or two spiritual advisers, who by turns sung
psalms, in which he sometimes joined. When his voice failed, his
eyes still remained fixed upon the image of the crucified Redeemer.
His last act was to embrace it closely. His last words, "Into thy
hands, O Lord."
I quote the following account of the death of the great Raphael, in
the form of a letter from Cardinal Bibbiena:

"As I entered, he held in his hand a few spring flowers, which


he let fall as I handed him the rosary. He pressed the cross to
his lips and whispered, 'Maria.' His voice had a peculiar sound,
clear but so low as to be scarcely audible. In the sick-room I
found Count Castiglione, the good fathers Antonio and
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

textbookfull.com

You might also like