If you were going to prototype a combat loop for a game that was going to be centered around a stack based data structure with mechanics also requiring quick inserts, reorders, expansion and contraction based on game state attributes (NPCs and Players and Battlefield Terrain) what language would you use:
#gamedev #rustlang #ocaml #clang #typescript #datastructure
E-graphs from A to almost Z. Very well-written and easy to understand.
* may use a similar approach in my own writing. Thanks @ Cole-K. 🙌 #datastructures #datastructure https://www.cole-k.com/2023/07/24/e-graphs-primer/#fnref:6
#datastructures #datastructure
Ok so turns out I actually do need to create my own data structure from scratch in rust. This will be hard #rust #datastructure #programming #graphicsprogramming
#rust #datastructure #programming #graphicsprogramming
I blogged: https://neon.tech/blog/persistent-structures-in-neons-wal-indexing
HN discussion here: https://news.ycombinator.com/item?id=36043657
#postgresql #datastructure #algorithm #systems #rust #hiring
#postgresql #datastructure #algorithm #systems #rust #hiring
Dropping a blog post next week. Follow if you don't want to miss this piece of professionally cursed #DataStructure content
Theme One Program • Exposition 1.2
• https://inquiryintoinquiry.com/2022/06/15/theme-one-program-exposition-1-2/
The Idea↑Form Flag
The graph-theoretic data structures used by the program are built up from a basic data structure called an “idea-form flag”. That structure is defined as a pair of Pascal data types by means of the following specifications.
Figure 1. Type Idea = ^Form
• https://inquiryintoinquiry.files.wordpress.com/2022/06/theme-exposition-type-idea-5eform.png
Figure 2. Code Box
• type idea = ^form;
• form = record
• sign: char;
• as, up, on, by: idea;
• code: numb
• end;
An “idea” is a pointer to a “form”.
• A “form” is a record consisting of:
• A “sign” of type “char”;
• Four pointers, “as”, “up”, “on”, “by”, of type “idea”;
• A “code” of type “numb”, that is, an integer in [0, max integer].
Represented in terms of digraphs, or directed graphs, the combination of an idea pointer and a form record is most easily pictured as an arc, or directed edge, leading to a node labeled with the other data, in this case, a letter and a number.
#ThemeOneProgram #Learning #Reasoning
#Logic #LogicalGraphs #FormalLanguages
#Algorithm #DataStructure #GraphTheory
#Peirce #PragmaticSemioticInformation
#Empiricism #Rationalism #Pragmatism
#pragmatism #rationalism #empiricism #pragmaticsemioticinformation #Peirce #graphtheory #datastructure #algorithm #formallanguages #LogicalGraphs #logic #reasoning #learning #ThemeOneProgram
Theme One Program • Exposition 1.1
• https://inquiryintoinquiry.com/2022/06/15/theme-one-program-exposition-1-2/
Theme One is a program for constructing and transforming a particular species of graph‑theoretic data structures, forms designed to support a variety of fundamental learning and reasoning tasks.
The program evolved over the course of an exploration into the integration of contrasting types of activities involved in learning and reasoning, especially the types of algorithms and data structures capable of supporting all sorts of inquiry processes, from everyday problem solving to scientific investigation. In its current state, Theme One integrates over a common data structure fundamental algorithms for one type of inductive learning and one type of deductive reasoning.
We begin by describing the class of graph-theoretic data structures used by the program, as determined by their local and global features. It will be the usual practice to shift around and view these graphs at many different levels of detail, from their abstract definition to their concrete implementation, and many points in between.
The main work of the Theme One program is achieved by building and transforming a single species of graph-theoretic data structures. In their abstract form these structures are closely related to the graphs called cacti and conifers in graph theory, so we’ll generally refer to them under those names.
#ThemeOneProgram #Learning #Reasoning
#Logic #LogicalGraphs #FormalLanguages
#Algorithm #DataStructure #GraphTheory
#Peirce #PragmaticSemioticInformation
#Empiricism #Rationalism #Pragmatism
#pragmatism #rationalism #empiricism #pragmaticsemioticinformation #Peirce #graphtheory #datastructure #algorithm #formallanguages #LogicalGraphs #logic #reasoning #learning #ThemeOneProgram
Theme One Program • Motivation 6
• https://inquiryintoinquiry.com/2022/08/20/theme-one-program-motivation-6-2/
Comments I made in reply to a correspondent’s questions about delimiters and tokenizing in the Learner module may be worth sharing here.
In one of the projects I submitted toward a Master’s in psychology I used the Theme One program to analyze samples of data from my advisor’s funded research study on family dynamics. In one phase of the study observers viewed video-taped sessions of family members (parent and child) interacting in various modes (“play” or “work”) and coded qualitative features of each moment’s activity over a period of time.
The following page describes the application in more detail and reflects on its implications for the conduct of scientific inquiry in general.
Exploratory Qualitative Analysis of Sequential Observation Data
• https://oeis.org/wiki/User:Jon_Awbrey/Exploratory_Qualitative_Analysis_of_Sequential_Observation_Data
In this application a “phrase” or “string” is a fixed-length sequence of qualitative features and a “clause” or “strand” is a sequence of such phrases delimited by what the observer judges to be a significant pause in the action.
In the qualitative research phases of the study one is simply attempting to discern any significant or recurring patterns in the data one possibly can.
In this case the observers are tokenizing the observations according to a codebook that has passed enough intercoder reliability studies to afford them all a measure of confidence it captures meaningful aspects of whatever reality is passing before their eyes and ears.
#ThemeOneProgram #Learning #Reasoning
#Logic #LogicalGraphs #FormalLanguages
#Algorithm #DataStructure #GraphTheory
#Peirce #PragmaticSemioticInformation
#Empiricism #Rationalism #Pragmatism
#pragmatism #rationalism #empiricism #pragmaticsemioticinformation #Peirce #graphtheory #datastructure #algorithm #formallanguages #LogicalGraphs #logic #reasoning #learning #ThemeOneProgram
Theme One Program • Motivation 5
• https://inquiryintoinquiry.com/2022/08/20/theme-one-program-motivation-5-2/
Since I’m working from decades-old memories of first inklings I thought I might peruse the web for current information about Zipf’s Law. I see there is now something called the Zipf–Mandelbrot (and sometimes –Pareto) Law and that was interesting because my wife Susan Awbrey made use of Mandelbrot’s ideas about self-similarity in her dissertation and communicated with him about it. So there’s more to read up on.
Just off-hand, though, I think my Learner is dealing with a different problem. It has more to do with the savings in effort a learner gets by anticipating future experiences based on its record of past experiences than the savings it gets by minimizing bits of storage as far as mechanically possible. There is still a type of compression involved but it’s more like Korzybski’s “time-binding” than space-savings proper. Speaking of old memories …
The other difference I see is that Zipf’s Law applies to an established and preferably large corpus of linguistic material, while my Learner has to start from scratch, accumulating experience over time, making the best of whatever data it has at the outset and every moment thereafter.
#ThemeOneProgram #Learning #Reasoning
#Logic #LogicalGraphs #FormalLanguages
#Algorithm #DataStructure #GraphTheory
#Peirce #PragmaticSemioticInformation
#Empiricism #Rationalism #Pragmatism
#pragmatism #rationalism #empiricism #pragmaticsemioticinformation #Peirce #graphtheory #datastructure #algorithm #formallanguages #LogicalGraphs #logic #reasoning #learning #ThemeOneProgram
Theme One Program • Motivation 4
• https://inquiryintoinquiry.com/2022/08/19/theme-one-program-motivation-4-2/
From Zipf’s Law and the category of “things that vary inversely with frequency” I got my first brush with the idea that keeping track of usage frequencies is part and parcel of building efficient codes.
In its first application the environment the Learner has to learn is the usage behavior of its user, as given by finite sequences of characters from a finite alphabet, which sequences of characters might as well be called “words”, together with finite sequences of those words which might as well be called “phrases” or “sentences”. In other words, Job One for the Learner is the job of constructing a “user model”.
In that frame of mind we are not seeking anything so grand as a Universal Induction Algorithm but simply looking for any approach to give us a leg up, complexity wise, in Interactive Real Time.
#ThemeOneProgram #Learning #Reasoning
#Logic #LogicalGraphs #FormalLanguages
#Algorithm #DataStructure #GraphTheory
#Peirce #PragmaticSemioticInformation
#Empiricism #Rationalism #Pragmatism
#pragmatism #rationalism #empiricism #pragmaticsemioticinformation #Peirce #graphtheory #datastructure #algorithm #formallanguages #LogicalGraphs #logic #reasoning #learning #ThemeOneProgram
Theme One Program • Motivation 3
• https://inquiryintoinquiry.com/2022/08/18/theme-one-program-motivation-3-2/
Sometime around 1970 John B. Eulenberg came from Stanford to direct Michigan State’s Artificial Language Lab, where I would come to spend many interesting hours hanging out all through the 70s and 80s. Along with its research program the lab did a lot of work on augmentative communication technology for limited mobility users and the observations I made there prompted the first inklings of my Learner program.
Early in that period I visited John’s course in mathematical linguistics, which featured Laws of Form among its readings, along with the more standard fare of Wall, Chomsky, Jackendoff, and the Unified Science volume by Charles Morris which credited Peirce with pioneering the pragmatic theory of signs. I learned about Zipf’s Law relating the lengths of codes to their usage frequencies and I named the earliest avatar of my Learner program XyPh, partly after Zipf and playing on the xylem and phloem of its tree data structures.
#ThemeOneProgram #Learning #Reasoning
#Logic #LogicalGraphs #FormalLanguages
#Algorithm #DataStructure #GraphTheory
#Peirce #PragmaticSemioticInformation
#Empiricism #Rationalism #Pragmatism
#pragmatism #rationalism #empiricism #pragmaticsemioticinformation #Peirce #graphtheory #datastructure #algorithm #formallanguages #LogicalGraphs #logic #reasoning #learning #ThemeOneProgram
Theme One Program • Motivation 2.2
• https://inquiryintoinquiry.com/2022/08/17/theme-one-program-motivation-2-2/
As I mentioned, work on those two projects proceeded in a parallel series of fits and starts through interwoven summers for a number of years, until one day it dawned on me how the Learner, one of whose aliases was Index, could be put to work helping with sundry substitution tasks the Modeler needed to carry out.
So I began integrating the functions of the Learner and the Modeler, at first still working on the two component modules in an alternating manner, but devoting a portion of effort to amalgamating their principal data structures, bringing them into convergence with each other, and unifying them over a common basis.
Another round of seasons and many changes of mind and programming style, I arrived at a unified graph-theoretic data structure, strung like a wire through the far‑flung pearls of my programmed wit. But the pearls I polished in alternate years maintained their shine along axes of polarization whose grains remained skew in regard to each other. To put it more plainly, the strategies I imagined were the smartest tricks to pull from the standpoint of optimizing the program’s performance on the Learning task I found the next year were the dumbest moves to pull from the standpoint of its performance on the Reasoning task. I gradually came to appreciate that trade-off as a discovery.
#ThemeOneProgram #Learning #Reasoning
#Logic #LogicalGraphs #FormalLanguages
#Algorithm #DataStructure #GraphTheory
#Peirce #PragmaticSemioticInformation
#Empiricism #Rationalism #Pragmatism
#pragmatism #rationalism #empiricism #pragmaticsemioticinformation #Peirce #graphtheory #datastructure #algorithm #formallanguages #LogicalGraphs #logic #reasoning #learning #ThemeOneProgram
Theme One Program • Motivation 2.1
• https://inquiryintoinquiry.com/2022/08/17/theme-one-program-motivation-2-2/
A side-effect of working on the Theme One program over the course of a decade was the measure of insight it gave me into the reasons why empiricists and rationalists have so much trouble understanding each other, even when those two styles of thinking inhabit the very same soul.
The way it came about was this. The code from which the program is currently assembled initially came from two distinct programs, ones I developed in alternate years, at first only during the summers.
In the Learner program I sought to implement a Humean empiricist style of learning algorithm for the adaptive uptake of coded sequences of occurrences in the environment, say, as codified in a formal language. I knew all the theorems from formal language theory telling how limited any such strategy must ultimately be in terms of its generative capacity, but I wanted to explore the boundaries of that capacity in concrete computational terms.
In the Modeler program I aimed to implement a variant of Peirce’s graphical syntax for propositional logic, making use of graph-theoretic extensions I had developed over the previous decade.
#ThemeOneProgram #Learning #Reasoning
#Logic #LogicalGraphs #FormalLanguages
#Algorithm #DataStructure #GraphTheory
#Peirce #PragmaticSemioticInformation
#Empiricism #Rationalism #Pragmatism
#pragmatism #rationalism #empiricism #pragmaticsemioticinformation #Peirce #graphtheory #datastructure #algorithm #formallanguages #LogicalGraphs #logic #reasoning #learning #ThemeOneProgram
https://www.kaniyam.com/event/workshop-on-data-structures-algorithms-part-5/
வா நண்பா DSA படிக்கலாம் – பகுதி 5 – GIT அறிமுகம் (Data Structures & Algorithms)
நாள், நேரம் – மார்ச் 1 2023 இரவு 7 – 8 IST
வகுப்பு இணைப்பு – https://meet.jit.si/VaNanbaDsaPadikalam
பாடத்திட்டம்: https://github.com/makereading/Batch-1-DSA-with-python/blob/main/syllabus.md
Youtube: www.youtube.com/watch?v=pvVsnpYDqh8&list=PLiutOxBS1MiyuqZfRH-NGv2GcbIn1mmZ2
#Python #GIT #DSA #DataStructure #Algorithms #Tamil #KanchiLUG
#python #git #dsa #datastructure #algorithms #tamil #KanchiLUG
A basic linked list of words in Ada (ii) https://craftofcoding.wordpress.com/2023/02/25/a-basic-linked-list-of-words-in-ada-ii/ #ada #programming #linkedlistofwords #datastructure #linkedlist #codingAda #Ada
#ada #programming #linkedlistofwords #datastructure #LinkedList #codingAda
A basic linked list of words in Ada (i) https://craftofcoding.wordpress.com/2023/02/23/a-basic-linked-list-of-words-in-ada-i/ #ada #programming #linkedlistofwords #datastructure #linkedlist #codingAda #Ada
#ada #programming #linkedlistofwords #datastructure #LinkedList #codingAda
–––
Day 2: Understanding… Sequence
It’s easy to get sequence & iterable confused. They seem similar at first
A sequence is an iterable which you can index using an integer, such as `some_sequence[0]`
––– Etymology Corner –––
The term “sequence” comes from the Latin 'sequi' which means “to follow”
Each item in a sequence follows the other one.
Here's the full post with more detail about sequences:
https://typefully.com/s_gruppetta_ct/understanding-sequence-7IFcRa9
#programming #datastructure #Python
#ITByte: Algorithms and data structures are central to #ComputerScience.
Here is a quick refresher on #DataStructure and #Algorithms. #CS101
#cs101 #algorithms #datastructure #computerscience #itbyte
Bloom Filters တွေဆိုတာ ဘာများလဲ
https://www.saryay.club/posts/introduction-to-bloom-filters/ #datastructure #compscience