Sandbox

Created: 2011-07-11 01:32
Updated: 2018-05-20 11:48

README.md

Build Status

Sandbox

Copyright (C) 2011-2017 mailto:onlyuser@gmail.com

About

Sandbox is a collection of experimental code and tutorials.

Currently, it includes the following:

  • test_backtrace -- test for backtrace
  • test_c -- test for c-language curiosities
  • test_coroutine -- test for coroutine
  • test_fork -- test for fork
  • test_functor -- test for stl functor
  • test_lexyacc -- test for Lex-Yacc
  • test_llvm -- test for LLVM
  • test_math -- test for math libraries
  • test_ncurses -- test for ncurses
  • test_opengl -- test for OpenGL
  • test_pipe -- test for pipe
  • test_pthread -- test for pthread
  • test_regex -- test for posix regex
  • test_ticpp -- test for ticpp
  • test_tinyxml -- test for tinyxml
  • test_tokenize -- test for stl tokenize
  • test_variant -- test for boost variant
  • test_visitor -- test for visitor pattern

Requirements

Unix tools and 3rd party components (accessible from $PATH):

gcc boost llvm ticpp tinyxml coroutine

Environment variables:

  • $EXTERN_INCLUDE_PATH:

      where "coroutine/coroutine.h" resides
      where "ticpp/ticpp.h" resides
      where "tinyxml/tinyxml.h" resides
      
  • $EXTERN_LIB_PATH -- where "libticppd.a" resides

Make Targets

target action
all make binaries
test all + run tests
clean remove all intermediate files

References

"Coroutines in C"
http://www.chiark.greenend.org.uk/~sgtatham/coroutines.html
"Function Objects"
http://www.sgi.com/tech/stl/functors.html
"Lex & Yacc Tutorial"
http://epaperpress.com/lexandyacc/
"Kaleidoscope: Implementing a Language with LLVM"
http://llvm.org/docs/tutorial/index.html
"ticpp"
http://code.google.com/p/ticpp/
"tinyxml"
http://sourceforge.net/projects/tinyxml/
"Chapter 34. Boost.Variant"
http://www.boost.org/doc/libs/1_52_0/doc/html/variant.html
"Cooperative VisitorIFace: A Template Technique for VisitorIFace Creation"
http://www.artima.com/cppsource/cooperative_visitor.html
"Stack Backtracing Inside Your Program"
http://www.linuxjournal.com/article/6391
"Listing 3. Using the SA_SIGINFO Option"
http://www.linuxjournal.com/files/linuxjournal.com/linuxjournal/articles/063/6391/6391l3.html
"How to generate a stacktrace when my gcc C++ app crashes"
http://stackoverflow.com/questions/77005/how-to-generate-a-stacktrace-when-my-gcc-c-app-crashes/77336#77336
"C++ Code Snippet - Print Stack Backtrace Programmatically with Demangled Function Names"
http://panthema.net/2008/0901-stacktrace-demangled/
"How it's better to invoke gdb from program to print its stacktrace?"
http://stackoverflow.com/questions/3151779/how-its-better-to-invoke-gdb-from-program-to-print-its-stacktrace/4611112#4611112
"Stack trace for C++ using gcc"
http://stackoverflow.com/questions/4636456/stack-trace-for-c-using-gcc/4732119#4732119
"How do you capture a group with regex?"
http://stackoverflow.com/questions/2577193/how-do-you-capture-a-group-with-regex
"Universal References in C++11 - Scott Meyers"
http://isocpp.org/blog/2012/11/universal-references-in-c11-scott-meyers
"POSIX thread (pthread) libraries"
http://www.cs.cmu.edu/afs/cs/academic/class/15492-f07/www/pthreads.html
"Setting up an OpenGL development environment in Ubuntu Linux"
http://www.codeproject.com/Articles/182109/Setting-up-an-OpenGL-development-environment-in-Ub
"The Official Guide to Learning OpenGL, Version 1.1 - Chapter 1 - Introduction to OpenGL"
http://www.glprogramming.com/red/chapter01.html
"OpenGL Programming/Modern OpenGL Introduction"
http://en.wikibooks.org/wiki/OpenGL_Programming/Modern_OpenGL_Introduction
"Anton's OpenGL 4 Tutorials"
http://antongerdelan.net/opengl/
"OpenGL Mathematics (GLM) - A C++ mathematics library for graphics programming - Code samples"
http://glm.g-truc.net/0.9.4/code.html
"NCURSES Programming HOWTO"
http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/
"Most vexing parse"
https://en.wikipedia.org/wiki/Most_vexing_parse
"How to get file descriptor of buffer in memory?"
http://stackoverflow.com/questions/1558772/how-to-get-file-descriptor-of-buffer-in-memory

Keywords

stl, boost, functor, Lex, Yacc, OpenGL, glm, LLVM, visitor, variant, tinyxml, ticpp, regex, backtrace, Scott Meyer's "Most Vexing Parse", pipe
Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more