Skip to content

Instantly share code, notes, and snippets.

View mydoghasworms's full-sized avatar

Martin Ceronio mydoghasworms

View GitHub Profile
@mydoghasworms
mydoghasworms / turbol.reb
Last active September 12, 2017 18:10
Little Rebol program that demonstrates using 'parse' to interpret some rudimentary Logo commands with a turtle and visual interface
REBOL [
title: "Rudimentary implementation of Logo Turtle"
date: 2015-02-16
author: "Martin Ceronio"
]
{ Load the turtle image; you can find the original at https://edu.kde.org/images/icons/kturtle_32.png Thanks, KTurtle! }
turtle-img: do to-string debase
{bWFrZSBpbWFnZSEgWzMyeDMyICN7CjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAowMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAowMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxMDAwNjdBMDcwNjdBMDcwNjdBMDcwNjdBMDcKMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAowMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxMDAwNjdBMDcwNjdBMDcKMDY3QTA3MDY3QTA3MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD
@mydoghasworms
mydoghasworms / boggle.rb
Created September 8, 2018 07:05
Boggle Solver in Ruby
class Trie < Hash
def initialize
super
end
def build(string)
string << '.' #Terminator indicating end of a complete word
string.chars.inject(self) do |h, char|
h[char] ||= { }
end
@mydoghasworms
mydoghasworms / zslsord_extr_to_es.abap
Last active October 2, 2018 12:44
Proof-of-concept ABAP Program to extract sales order data to an Elasticsearch server as seen on http://ceronio.net
*--------------------------------------------------------------------*
* Example program to extract data to Elasticsearch
*--------------------------------------------------------------------*
* Be sure to read the accompanying article:
* http://ceronio.net/2015/02/sap-business-intelligence-with-elasticseach-and-kibana/
*&---------------------------------------------------------------------*
*& WARNING!: This program is just a proof of concept. For a proper
*& production-quality extraction program, you would:
*& 1. Use a database cursor for selection
*& 2. Do bulk updates to Elasticsearch for better performance
Red [needs: view]
turtle: #()
win: layout [ panel [
tfield: base 500x500 white draw []
origin tfield/offset tlayer: base 500x500 255.255.255.255 draw [] ]
panel [
text "History" return history: text-list 200x350 data [] return
panel [ button "Save" [save request-file history/data]
@mydoghasworms
mydoghasworms / post_acc_doc.rb
Last active July 23, 2019 18:19
Example of using Ruby nwrfc gem to post documents to an SAP ECC system using BAPI_ACC_DOCUMENT_POST
#!/usr/bin/ruby
require 'nwrfc'
require 'logger'
include NWRFC
# This is an example of a Ruby script using the nwrfc gem to post Accounting documents to
# an SAP ECC system using BAPI_ACC_DOCUMENT_POST. You can obviously easily adapt it to
# your needs
*&---------------------------------------------------------------------*
*& Include ZLIBREGISTRY
*&---------------------------------------------------------------------*
* Implementation of a registry for storing arbitrary values (similar
* to the MS Windows registry)
* Author: Martin Ceronio (2015), http://ceronio.net
* Released under MIT License: http://opensource.org/licenses/MIT
class lcx_registry_err definition inheriting from cx_dynamic_check.
endclass. "lcx_registry_err DEFINITION
@mydoghasworms
mydoghasworms / json_parser.abap
Last active March 11, 2020 11:11
ABAP JSON parser and mapper
*&---------------------------------------------------------------------*
*& Include ZTEMPJSON_INCL
*&---------------------------------------------------------------------*
* A clean, reliable and compliant JSON parser and mapper to ABAP data;
* the kind your mother would have encouraged you to hang out with.
*----------------------------------------------------------------------*
* CLASS json_error DEFINITION
*----------------------------------------------------------------------*
class json_error definition inheriting from cx_static_check.
public section.
@mydoghasworms
mydoghasworms / json_util.abap
Last active February 19, 2023 14:46
ABAP Utility class for mapping JSON to ABAP data and vice versa - Rather use https://gist.github.com/mydoghasworms/4888a832e28491c3fe47
* Rather use https://gist.github.com/mydoghasworms/4888a832e28491c3fe47
* The alternative is a better parser although it is not an emmitter)
*----------------------------------------------------------------------*
* CLASS json_util DEFINITION
*----------------------------------------------------------------------*
class json_util definition.
public section.
class-methods:
data_to_json importing data type any
returning value(json) type string,