Skip to content

Instantly share code, notes, and snippets.

@jeffreykegler
jeffreykegler / kv_extend.pl
Created Mar 11, 2014
Hypothetical extension to Perl 5's hash initialization
View kv_extend.pl
use 5.010;
use strict;
use warnings;
use Data::Dumper;
use Marpa::R2 2.082000;
my $input = <<'END_OF_STRING';
{
name => 'test hash 1',
@worldmind
worldmind / gist:2724846
Created May 18, 2012
Perl $SIG{CHLD} handler
View gist:2724846
# see http://perldoc.perl.org/perlipc.html#Signals
# http://www.calpoly.edu/cgi-bin/man-cgi?wait+2
# and Perl Cookbook, part 16.19. Avoiding Zombie Processes
sub REAPER {
local ($!, $?);
while ( (my $pid = waitpid(-1, WNOHANG)) > 0 ) {
say "Process $pid send CHLD with status $?";
if ( WIFEXITED($?) or WIFSIGNALED($?) ) {
if ( $kids{$pid} ) {
View .ru.md

oshlibot

  • Как вызвать бота? В Telegram ник @oshlibot

  • Как запустить своего бота? Скопировать код. Получить [apikey][BotFather link]. Добавить apikey в свойства скрипта. Опубликовать скрипт как веб-приложение для всех. Запустить вручную setWebhook() из модуля ScriptService.gs

  • Важно. В настройках необходимо в свойства скрипта добавить apikey

  • Как получить apikey? Необходимо спросить у [@BotFather][BotFather link]

  • Какие бывают способы доступа для бота? Два метода API определяют будущее поведение приложения: [getUpdates][getUpdates link] или [setWebhook][setWebhook link]

  • @oshlibot использует подписку на [Webhooks][setWebhook link]

@jef-sure
jef-sure / positive_int.pl
Created Dec 9, 2017
Check for Positive Integer entry
View positive_int.pl
#!/usr/bin/perl
use B;
use Scalar::Util::LooksLikeNumber 'looks_like_number';
sub positive_int {
my $lln = looks_like_number($_[0]);
($lln == 1 || $lln & B::SVf_IOK) && $_[0] > 0;
}
for (0, "0", 123, "123", 123.45, "123.45", "yolki-palki", "nancy") {
print "$_ -> " . (positive_int($_) ? "true" : "false");
@R-omk
R-omk / tnteval
Created Jan 24, 2020
Print output from tarantool to stdout
View tnteval
#!/usr/bin/env tarantool
local CONSOLE_SOCKET_PATH = 'unix/:/var/run/tarantool/tarantool.sock'
local os = require("os")
console = require('console')
console.on_start(function(self)
local status, reason
status, reason = pcall(function() require('console').connect(CONSOLE_SOCKET_PATH) end)
if not status then
View ls.lua
_G.ls = setmetatable({}, {
__serialize = function()
local res = {}
for _, sp_info in box.space._space:pairs(512, { iterator = "GE" }) do
local sp = box.space[sp_info.name]
local info = {}
info.name = tostring(sp.name)
info.engine = tostring(sp.engine)
info.len = tostring(sp:len())
@ochaton
ochaton / bad_tarantool.sh
Created Jul 6, 2021
Monitoring fiber of latency of single ev_once
View bad_tarantool.sh
> tarantool -l fiber -l clock -e 'fiber.create(function() while true do while clock.time() < fiber.time()+0.1 do end fiber.sleep(0.01) end end)' test.lua
entering the event loop
e:100.011µs p:0.017µs t:99.998µs
e:100.042µs p:0.010µs t:100.035µs
e:100.013µs p:0.015µs t:100.004µs
e:100.005µs p:0.006µs t:99.994µs
e:100.007µs p:0.004µs t:99.996µs
e:100.010µs p:0.009µs t:99.993µs
e:100.012µs p:0.016µs t:100.000µs
e:100.009µs p:0.050µs t:99.999µs
@NikolayS
NikolayS / abstracts_writings.md
Last active Jul 15, 2021
Как написать хорошие тезисы для доклада на конференции
View abstracts_writings.md

Рекомендации для докладов типа Case Study (компания/проект делится своим опытом)

Недостаточно просто описать задачу в тезисах. Довольно часто бывает так, что заинтересованные слушатели могут это сделать не хуже докладчика. Хорошие же тезисы отличает конкретика: конкретные названия, конкретные числовые показатели (последнее особенно важно для Highload++).

Главное — приоткрыть суть вашего доклада, оставаясь при этом в рамках сжатых тезисов.

И это не так сложно. При подготовке доклада и его тезисов нужно сделать всего лишь три шага.

View rsa.lua
--- RSA bindings for Tarantool
--- Carefully adapted from https://github.com/spacewander/lua-resty-rsa
local bit = require "bit"
local band = bit.band
local ffi = require "ffi"
local ffi_new = ffi.new
local ffi_gc = ffi.gc
local ffi_copy = ffi.copy
local ffi_str = ffi.string
View perl7faq.md

Perl 7 FAQ

last updated 2022-05-26

Is Perl 7 coming?

It is the current plan that this version number will be used for Perl at some point in the future.

When is Perl 7 coming?