Skip to content

Instantly share code, notes, and snippets.

View dginev's full-sized avatar

Deyan Ginev dginev

View GitHub Profile
@dginev
dginev / BasicAmbiguity.pl
Created September 3, 2013 02:41
Basic Math ambiguity - sin vs division
#!/usr/bin/env perl
use Marpa::R2;
use warnings;
use strict;
my $basic_math_grammar =
Marpa::R2::Scanless::G->new({
action_object => 'BasicMath',
default_action => '::first',
source => \(<<'END_OF_RULES'),
@dginev
dginev / nnexus_concept_list.txt
Created January 8, 2014 11:43
NNexus Concepts, 01.2014
1 homotopy theory
1-1 correspondence
1-4-2 problem
1-center problem
1-connected
1-dimensional euclidean space
1-factor
1-form
1-median
1-parameter subgroup
@dginev
dginev / names.rx
Created March 18, 2014 21:57
Unique Jacobs University names as of 2014
(?^u:(?:s(?:a(?:n(?:t(?:i(?:ago|s)|osh?)|(?:[jn]|kar)a|dr(?:ine|a)|(?:che|a)z|guineti)|r(?:(?:d[ao]|ka)r|i(?:anna|bay)|ukhanyan|a[hy]?|miento|wat)|l(?:a(?:nevich|uyova)|e(?:em|h)|i[bm]|zmann|gado|man?|ome)|m(?:a(?:n(?:eh|ta)|wi|d)|[uv]el|oilova|i[pt]|berg|yak)|(?:ty(?:anarayan)?|(?:fi|um)y)a|ch(?:i(?:konye|n)|senmaier)|a(?:vedra|ifan|mov|d)|b(?:yasachi|rina|ine)|y(?:e(?:da?|nju)|dun)|v(?:(?:chenk|i)o|u)|p(?:undzic|kota)|i(?:pira|ni|d)|(?:ee|ji)d|kenov|dler|hle)|c(?:h(?:w(?:e(?:(?:rtfeg|iz)er|n)|arz(?:(?:los)?e)?|i(?:ndenhamm)?er)|e(?:ll(?:inger|haas)|r(?:g?er|m)?|idegger|nk)|l(?:(?:e(?:ich|ng)|üt)er|i(?:chte|ep)|amp)|m(?:i(?:d(?:t(?:ke)?)?|tz)|älter)|a(?:(?:ef|u)er|llwig|mpera|al)|r(?:(?:(?:oe|ö)d|eib?)er|aink)|i(?:(?:ef|pp|rm)er|mank|ttko)|u(?:l(?:ze?|dt|te)|macher|pp)|o(?:field|mburg|o[pt])|ö(?:n(?:wälder)?|mann)|n(?:e(?:id|tz)e|oo)r|ä(?:tzchen|fer|ck)|ü(?:ller|tte))|ott|en)|t(?:e(?:f(?:an(?:o(?:(?:sk|v)a)?|a)?|f(?:en|ie))?|ph(?:an(?:ie)?|en)|in(?:inger)?|ckemetz|ngel|ven?|gen|lla|hr)|a(?:n(?:kovski|islav|c
@dginev
dginev / gist:10375765
Created April 10, 2014 12:19
SENNA with MKL BLAS
Compile with (on local laptop):
gcc -o senna -O3 -ffast-math *.c -DUSE_MKL_BLAS -I/opt/intel/composer_xe_2013_sp1.0.080/mkl/include/ -L /opt/intel/composer_xe_2013_sp1.0.080/mkl/lib/intel64 -Wl,--no-as-needed -lm -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -pthread
@dginev
dginev / binary_search.c
Created April 11, 2014 23:25
Binary Search C
#include<stdio.h>
#include<stdlib.h>
/* Just a sample binary search in C */
int binary_search(int sought_value, int* array, int array_size) {
int left,right=(0,array_size);
int middle;
while (left <= right) {
middle = (left + right) / 2;
if (array[middle] == sought_value) {
@dginev
dginev / events_example.pl
Created May 8, 2014 12:06
Simple Marpa events example
use 5.010;
use strict;
use warnings;
use Data::Dumper;
use English qw( -no_match_vars );
use Marpa::R2;
my $rules = <<'END_OF_GRAMMAR';
:start ::= sequence
sequence ::= FIRST SECOND
@dginev
dginev / paper_assigner.pl
Created May 22, 2014 15:46
Paper Assigner for the NTCIR query brainstorming
use strict;
use warnings;
use File::Slurp qw(read_file);
use Archive::Zip qw(:CONSTANTS :ERROR_CODES);
my @names = sort qw/Andrea Michael Mihnea Prode Constantin Fulya Florian Deyan/;
my $needed_papers = 3 * scalar(@names);
my @papers = split("\n",read_file('/arXMLiv/NTCIR_files.txt'));
my @chosen = map {$papers[$_]} sort map {int(rand(100_000))} 1..$needed_papers;
@dginev
dginev / HULK_setup.md
Last active August 29, 2015 14:02
HULK setup
  1. Build a perl 5.16 via perlbrew

  2. Building XML::LibXML

  • cpanm XML::LibXML
  • if fails, cd to the work directory
  •  perl Makefile.PL LIBS='-L/home/dginev/usr/lib64 -L/usr/lib -lm -lz -lxml2'
      INC='-I/home/dginev/usr/include/libxml2 -I/home/dginev/usr/include -I/usr/include'
    
  • During make, delete offending assert files to run cleanly (???)
@dginev
dginev / id_unbind_test.pl
Last active August 29, 2015 14:11
libxml 2.9.2 ID conflicts
#!/usr/perl/bin -w
use strict;
use warnings;
use XML::LibXML;
my $xml_content = <<EOL;
<?xml version="1.0" encoding="UTF-8"?>
<a xml:id="a">
<b xml:id="b"></b>
@dginev
dginev / megalogical.js
Created May 22, 2015 23:06
Logical JS
for el in clickable_things_to_track
$( document ).on "click", el, (e) ->
mixpanel.track(el)