すごくメモ帳

すごくほぼメモ帳ぐらいなブログ

Ruby

HEX to RGB (0~1) - Ruby

color=#FFFFFF ruby -e 'puts "#{ENV["color"]}"[1..-1].each_char.each_slice(2).to_a.map(&:join).map{|e| e.to_i(16)/255.0}'

書いたことがあるプログラミング言語

書いたことがあるプログラミング言語を紹介する。 C言語 まず、C言語。 C言語は高校からやり始めたけど、大学の講義で本格的に始めて今ではよく書く言語ベスト3の言語。 Arduino(電子工作で使うマイコンボード)でもCライクな言語を使う。 ポインタとか構造体…

rbenvのインストール方法 How to install rbenv on Ubuntu

依存 sudo apt install git gcc make ruby-dev libssl-dev zlib1g-dev -y rbenv / ruby-build のクローン git clone https://github.com/rbenv/rbenv ~/.rbenv mkdir -p ~/.rbenv/plugins git clone https://github.com/rbenv/ruby-build ~/.rbenv/plugins/r…

Rubyの拡張ライブラリー入門シリーズ③ (アクセサ: rb_define_attr)

アクセサを定義する アクセサとは アクセサとは、インスタンス変数に対して読み書きするものです。 def hoge @hoge end クラス内で上のように定義すると、インスタンス変数が示すものを読み込むことができます。 def hoge= val @hoge = val end とクラスで定…

Rubyの拡張ライブラリー入門シリーズ② (クラスの作成と定義と継承: rb_define_class, メソッドの定義: rb_define_method)

クラスを作る // hoge.c #include <stdio.h> #include <ruby.h> VALUE cHoge; static VALUE hoge_func(VALUE obj){ puts("Hello, world"); return Qtrue; } void Init_hoge(void){ cHoge = rb_define_class("Hoge", rb_cObject); rb_define_method(cHoge, "func", hoge_func, </ruby.h></stdio.h>…

Rubyの拡張ライブラリー入門シリーズ① (コンパイルしてHello, world)

Hello, world を書いてみる Hello, worldをC言語で書く // hoge.c #include <stdio.h> void Init_hoge(void){ puts("Hello, world!"); } extconf.rbを作る makefileを作るためにextconf.rbを作ります。 作ったら、実行してmake # extconf.rb require 'mkmf' create_ma</stdio.h>…

Rails はじめかた

細かいところはUbuntu向けです。 gemのインストール bundle init # Gemfileを作成する Gemfileが作成されるのでgem "rails"のコメントアウトを外す。 bundle # gemをインストールする railsプロジェクトの作成 エラーが出る場合 SQLiteのライブラリーがない…