top of page
Search
Compiling Marcel to Python
Marcel is interpreted. A command like this: gen 100 | map (x: (x, x**0.5)) | write gives rise to objects of type marcel.op.Gen,...

Jack Orenstein
Oct 26, 20242 min read
11 views
0 comments


Generating graphs from the marcel command line
I was working on a project in which I needed to munge some data, producing a stream of (x, y) tuples, and then graph the data. I had...

Jack Orenstein
Mar 8, 20243 min read
54 views
0 comments
Marcel in more places
Thanks to two different pilot errors on my part, I have broken the packaging system of two OSes that package marcel. I would have had no...

Jack Orenstein
Feb 15, 20241 min read
18 views
0 comments
Marcel and Jupyter
For years, I kept hearing about iPython, as a vastly improved Python REPL. I played with it a little bit, and yes, I saw that. I found...

Jack Orenstein
Feb 9, 20243 min read
81 views
0 comments
8 Queens as a Marcel One-Liner
Yes, the 8 Queens problem can be solved in marcel, as a one-liner even. If you want the details, you can find them here. But the basic...

Jack Orenstein
Jan 4, 20241 min read
73 views
0 comments
Workspaces! (Not "sessions")
I was ruminating about adding "sessions" to marcel, in the last blog post. It's done! They're called workspaces, not sessions. A...

Jack Orenstein
Dec 22, 20231 min read
13 views
0 comments
Thinking about sessions
A number of ideas floating around in my head are coming together around the idea of adding sessions to marcel. Here are the pieces:...

Jack Orenstein
Oct 31, 20232 min read
16 views
1 comment
Hi, Hacker News!
Wow! Somebody submitted another project of mine, Object Shell to Hacker News. Marcel supercedes Object Shell, and I guess someone on HN...

Jack Orenstein
Oct 26, 20231 min read
27 views
0 comments


Throwaway functions
Suppose you need to read a CSV file and fix the data in one of the columns. Maybe a column has strings that may contain spaces and...

Jack Orenstein
Aug 4, 20232 min read
78 views
0 comments


Building new commands
grep is very useful, and you can call it from marcel, e.g. grep "def render_compact" *.py Running this in marcel's marcel/object...

Jack Orenstein
Oct 30, 20201 min read
78 views
0 comments


Streams and Variables
Marcel pipes carry streams of data between operators. In the same way that you find it useful to store lists or arrays or sets of objects...

Jack Orenstein
Aug 13, 20202 min read
37 views
0 comments


Pipelines and Variables
Most interaction with marcel involves the execution of a pipeline. For example: ls -fr | select (f: now() - f.mtime < days(1)) ls...

Jack Orenstein
Aug 13, 20201 min read
51 views
0 comments


Database Access
Marcel pipes streams of tuples between operators. Relational databases operate on tables, which are sets of tuples, and queries yield...

Jack Orenstein
Jun 21, 20202 min read
70 views
0 comments


Marcel the Shell
Welcome to marcel! Marcel is yet another shell that pipes objects between commands, instead of strings. What is different about marcel is...

Jack Orenstein
Jun 16, 20202 min read
150 views
5 comments
bottom of page