u/vadrer

▲ 13 r/perl

Perl-Conf . Ru: Russian Perl Conference (Moscow & Online) – Oct 24, 2026

The annual Russian Perl community conference, Perl-Conf . Ru / 26, is happening on October 24, 2026. It will be a hybrid event held live in Moscow with a global online stream.

Participation is completely free, but registration is required.

Talk Highlights:

  • GUI development with Perl: From the general landscape to practical use with Tcl::Tk (Vadim Konovalov, Gazprombank).
  • Perl as an AI Orchestrator: MCP integration for aggregation services (Nikita Komarov, VTB).
  • Writing a custom language and compiler: Keeping your developer edge in the age of AI (Vadim Goncharov, MTS).
  • Perfect window tiling on Perl: Making your desktop workflow seamless (Sergey Zhmylyov, conference organizer).

see also the latest post on r/RuPerl

reddit.com
u/vadrer — 9 days ago
▲ 8 r/Tcl

Please advice on some Tk demonstration but for the Perl audience

I am planning to prepare some Tk demo for the Perl conference. This would be some perl application but with accent into GUI.

The idea is to present something interesting and therefore to inspire people to pay more attention to Tk.

I have mixed feelings: on one side, I am "stealing" Tk application for some Perl usage, stealing isn't good.
On the other side, I want to attract people to use Tk, which is good.

Last time I tried this Tk demo, quite successfully:

package require Tk
pack [frame .f] -fill x -expand 0

pack [panedwindow .pw -showhandle 1 -sashrelief raised -orient horizontal] -fill both -expand 1
.pw add \
   [text .pw.st -width 20 -height 7] \
   [canvas .pw.sc -width 600 -height 400 -scrollregion {0 0 1000 1200}]
.pw.st insert end Hi!
pack [frame .fb]
pack [button .fb.b1 -text {proba 1 (F9)} -command perl::prouba1] -side left -expand 1
bind . <F9> {.fb.b1 invoke}

package require vtk
package require vtkrendering
package require vtkinteraction

[vtkRenderWindow renw] AddRenderer [vtkRenderer ren1]
ren1 SetBackground 0.1 0.2 0.4

# The Tk render widget
vtkTkRenderWidget .pw.sc.ren -width 450 -height 450 -rw renw
.pw.sc create window  5 5 -window .pw.sc.ren -anchor nw -width 350 -height 350 
::vtk::bind_tk_render_widget .pw.sc.ren

# enable user interface interactor
[[renw GetInteractor] GetInteractorStyle] SetCurrentStyleToTrackballCamera

vtkUnstructuredGridReader rdr
  rdr SetFileName "/usr/VTKData/Data/hexa.vtk"
  rdr SetFileName "/usr/VTKData/Data/blow.vtk"
  rdr SetFileName "/usr/VTKData/Data/PentaHexa.vtk"

vtkDataSetMapper moldMapper
    moldMapper SetInputConnection [rdr GetOutputPort]
vtkActor moldActor
    moldActor SetMapper moldMapper
    [moldActor GetProperty] SetColor .2 .2 .2
    moldActor SetScale 0.2

pack [button .f.b1 -text {SetRepresentationToWireframe} -command {[moldActor GetProperty] SetRepresentationToWireframe; ren1 Render }] -side left

# assign our actor to the renderer
ren1 AddActor moldActor

wm protocol . WM_DELETE_WINDOW {destroy renw; exit}

This code, although was visually appealing, still, was only a toy, whereas I am seeking something solid.

I wonder, what Tcl/Tk people could advice on that?

reddit.com
u/vadrer — 1 month ago
▲ 14 r/perl+1 crossposts

[OC] Vispen: A zero-socket, bloat-free Literate Programming plugin for Vim powered by native Perl integration

Hi r/vim!

I wanted to share a plugin I've been refining called Vispen. It brings the power of Polyglot Literate Programming right into your editor, but without the massive overhead, background daemons, or heavy dependencies of modern alternatives.

👉 GitHub Repository & Live Demo: github/vispen

💡 What is it?

If you love the concept of Jupyter Notebooks or Emacs Org-mode but hate the .ipynb JSON bloat, active server sockets, and constant context switching, Vispen is for you. It allows you to execute embedded snippets of SQL, data transformations, and templates directly from your source files or markdown documents, embedding the results straight back into the buffer.

🚀 Key Features:

  • Zero-Socket Architecture: No background servers, node processes, or active ports. It uses Vim's native interface to run seamlessly.
  • Smart Context Awareness: Execute a query under your cursor, format text, parse CSV/JSON, or dump structured database outputs into clean text tables, HTML, or ready-to-paste Jira markup.
  • Lightweight & Fast: Inherits architecture ideas from heavyweights like YCM but stripped down to be blazing fast and minimal.
  • Vim-Friendly Customization: Zero forced global keybindings. It uses proper <Plug> interfaces so it won't mess with your carefully crafted .vimrc.

🛠 Requirements

It works out of the box on lightweight systems (runs perfectly even on my Orange Pi single-board computer!):

  • Vim 8.0+ compiled with +perl support.
  • Perl 5.006+

I built this to scratch my own itch for a fast, predictable, and clean terminal workflow. I’d love to hear your feedback, feature requests, or thoughts on the architecture!

u/vadrer — 2 months ago