Jump to content
IGNORED

Programming


zlemflolia

Recommended Posts

Oh man Prolog. I don't miss that stuff. I think even as we were being taught it my prof was telling us he didn't like it.

I guess people thought it would be useful when the mentality in problem solving/CS/AI was that everything could be solved with a formal set of rules/axioms/logic. And then clearly we all lost our patience with that approach.

 

I wrote a package dependency checker thing a while back with it. Basically you would say "I want Application Version X.Y.Z" and it would go into a database of packages and figure out all the dependencies, and dependencies' dependencies etc. Kind of like something that would run if you typed "apt-get 'some java application'" in Linux, and it would download the Java application, and all the Java runtime that you need to run the applet, and anything else you might need.

 

I'm looking back at it now and I don't have a fucking clue what I am doing with all this list parsing. I think you recursively check the head/tail of a list? And I remember being completely thrown off by how recursion works in Prolog. Its not the same as conventional "recursion."

 

Props to to goDel. Did you ever get it to work? for like a small range of inputs?

Link to comment
Share on other sites

  • Replies 467
  • Created
  • Last Reply

Recursion works largely the same as expected. You only have to take care the final clause to be positioned before the other clauses of a defined recursive function. But this is going into way too much detail already.

It can be pretty hard to understand in the beginning, but it kinda resembles to listening to a new ae album. You have to let it sink in before it "clicks".

 

The project was Ok. There was a list of queries defined beforehand with some grammatical/semantic structures which had to work. Each set of structures meant a better grade. In the end, i wasnt able to implement all grammatical/semantic structures to work, but it was good enough to pass the test with a safe margin.

 

Although I can see where you're coming from at the logical/axiom point in AI, I still think programming in prolog was pretty useful. It teaches how to solve problems in an entirely different way. Mastering prolog is kinda like mastering recursive functions and inductive reasoning. And it puts your face into the limits of logical programming/reasoning. Especially in the context of natural language. For some problems, prolog can be incredibly elegant. See the sudoku program, for instance. In others, not so much. In the end, natural language ( it starts out very elegant, but ends like a complete mindfuck.... In my case).

 

Also interesting was a different version of prolog called eclipse. Which is basically prolog with an additional layer which allows you to " program with constraints" . This can be handy when you try to solve (possible) np-problems. Simply put, you write a program which recognizes certain conditions in order for prolog to search for solutions in a more efficient way ( by putting constraints on the search space of the algorithm ).

 

Anyways, sorry for geeking out the thread (even though its about programming)...

Link to comment
Share on other sites

A classic functional programming book is Structure and Interpretation of Computer Programs. There are video lectures of it available as well. If you've only been programming procedural/OO it's a really mind bending exercise. It's a completely different way to think about algorithms. It can be very pretty too. I don't know if I could be productive in something like that though.

 

It has been mentioned in this thread before but Project Euler is really cool to discover other paradigms because after you finish an exercise you can look at other solutions. You've got people doing it in assembly, lisp dialects, mathematica and so on. It's quite humbling to see all those solutions next to my crude procedural approach. :)

Link to comment
Share on other sites

I already have an undergrad degree, but I wanted more marketable skills so I took night classes at my city college and got certified in java programming.

 

This past summer I was hired by a toy company to port an iOS app to Android. I was pretty damn proud that I did it all by myself having never worked on a large scale project before. I also don't know objective c, so looking at the iOS source was pretty useless... I just played with the iOS app figured out what it did and then made my own version of it.

 

Hundreds of thousands of lines of code with many classes and XML layout files... It was really massive. Lots of graphics related shit which is a serious pain in the ass, esp on something so open as Android. When I quit that job I had to spend basically all of my last 2 weeks explaining it all to the guy who was going to take over development for future updates.

 

I did like it a lot, but something else came up. Now I am working with Python and Javascript... Both are fun!

Link to comment
Share on other sites

Guest chunky

gameboy assembler

type the code in windows notepad

compile with a dos program

look up the opcodes and technical information from pandocs

i dont bother with gameboy color, it's interesting enough just messing about with the basics

 

it works by talking to registers, like you store an 8 bit number in a certain place and that will activate switches that control the palette/sound chip/ tiles of pixels and the map to arrange the tiles/ sprites

it's very lovely and fun from a hobbyist programmers point of view

 

i wouldnt mind doing c64 stuff ive looked it up but i cant find a way to write the code in notepad and then compile it quick in a dos program that will create a file that my emulator can use. bought an assembler software tape. it takes 15 minutes to load and the menus are a pain in the pussy

 

super nintendo has some good documentation now done by the no $ cash emulator geezer

but where do you find the time to program every machine? haha

 

x86 assembler for windows just seems to be a lot of operating system calls to windows

guess linux assembler is the same? kind of find it boring so far

 

from an enjoying something as a hobby point of view i enjoy gameboy programming the best

because it's simple and fun yet still challenging without being overbearing

 

i guess playstation and n64 are easy if you're good at advanced maths?

without a math degree 8-bit 4 colour is enough

Link to comment
Share on other sites

has anyone here experience with something like an FPGA / HDL?

I'd like to play around with FPGA programming, it seems like an interesting concept...

Link to comment
Share on other sites

gameboy assembler

type the code in windows notepad

Pfff, that's for newbies. How about writing a compiler and programme in hex directly within a gameboy game using just the control pad. The action takes place at 10:45 -

 

Link to comment
Share on other sites

x86 assembler for windows just seems to be a lot of operating system calls to windows

guess linux assembler is the same? kind of find it boring so far

 

x86 assembler for MS-DOS was pretty fun when coding demos back in the day. Lots of direct VGA register manipulation. I also wrote a couple of viruses that I never released except for testing on my friends computer. :whistling: (Which I had to clean up later..)

 

I tried a bit of Z80 assembler for TI-85 calculator but never really got into it. I did some programming with TI-Basic in high school though, like fractals and a simple raytracer that rendered checkerboard tunnels and created an animation. They were slow as fuck and I had to constantly buy new batteries because I had to let the programs run over the night.

 

I've also done some 6502 machine code hacking with a hex editor (Action Replay mk VI for C64, baby!) and a bit of ARM assembler at work.

Link to comment
Share on other sites

Guest chunky

props to all assembler programmers, noobs or not ;-)

 

mcbpete, nice, wish i could see that video(youtube blocked in china :/ )

 

there was a great program made recently for gameboy which creates a sound that's similar to ring mod and osc sync, cant remember the damned name of it

guess everybody's seen that c64 video with the time stretch and pitch manipulation

there's another good video that shows er, 'free flowing tunnels' and other nice images. the programmers were all academic type of people, one guy had a phd in mathematics. do you guys agree that the more maths you know the easier it is program cool shit?

i know it's a major barrier for programming 3d type of stuff. one comment that made me smile about the c64 video was when the programmer said that ghz processors weren't interesting for him and he enjoyed programming the c64 a lot more.

with 64k or less of memory whats enjoyable is that you can remember most of the content of your program, at least the structure if not the details. with 2gb of ram, who knows what the heck his own program is doing? most of the code is probably borrowed from others. programming as a hobby for pleasure and programming for a job or academic work are two different things a lot of the time!

Link to comment
Share on other sites

Yes, if you want do program something, you should know how it works, mathematically speaking. But geometry in 3 dimensions is still pretty basic stuff, you could do it with just pythagoras if you wanted.

Link to comment
Share on other sites

Unless you make a very small program, I find that coding is about 90 % bureaucracy. This controls that, and is managed by that etc.

My math knowledge is very basic and I'd love to have the time to properly learn linear algebra for 3D, as well as the stuff that's good for DSP programming.

Link to comment
Share on other sites

Guest chunky

There was a good interview with a Japanese guy who worked for ?Capcom? and he was the head of a project to make zelda games for gameboy color. He thought it was going to be really easy and he planned to make 3 GB zelda games at the same time. In the end the project was a big mess and nintendo had to come in and manage things more. Then finally they cut it down to two different games. The games are called oracle of seasons and oracle of ages. They have some cool ideas but they're a little dull in places. Not as good as the original GB version which was very creative and interesting. Project management? Exactly. Even an 8 bit software project with a full development team can cause massive headaches

Link to comment
Share on other sites

Been programming since I was 8, various languages (in order...)

 

BBC Basic

BBC Basic V

ARM Assembly language

Fortran

SAS

Mathematica

Delphi

Java

VB6

T-SQL

C#

Flex/ActionScript

JavaScript

 

Mostly C# and Javascript these days, which are both nice for different reasons. JavaScript is actually pretty wild when you get right down into it.

 

Most mindblowing was Mathematica (by Wolfram), it can do Lisp-type functional programming or prolog-style rule based programming or general symbolic manipulation which is hard to explain.

Link to comment
Share on other sites

I'm learning Python "the hard way." Which is actually quite intuitive and easy.

 

I've also been fooling around with Unity and scripting in C#, since I want to make games, eventually.

 

It's been interesting and mostly rewarding. Sometimes I feel like I want to throw my computer across the room, but it's worth it when I figure out how to make something work.

Link to comment
Share on other sites

I haven't needed to yet, but it will definitely be useful in the future when I'm doing large projects.

 

It's kind of funny how many programmer-type people gravitate towards IDM.

Link to comment
Share on other sites

  • 5 months later...

I found out that you can program your own synthedit modules in C++, so I'm finally giving vst development a go, while letting synthedit take care of the boring stuff :D

 

Or maybe I'll just use JUCE but it seems a bit more complicated.

Link to comment
Share on other sites

Junior compsci student (also doing a music technology major). Nothing too complicated yet, just finished a simple file compression project where we used huffman coding. I think computer science theory is super interesting, and I want to study it more. My teachers had me on an np-completeness kick earlier this semester.

Link to comment
Share on other sites

Yeah, writing code in Python is actually pleasurable. Add a decent IDE with an integrated debugger and it's even better.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.