Paternoster of Programmers Reloaded



Download 0.51 Mb.
Page5/5
Date30.04.2017
Size0.51 Mb.
#16979
1   2   3   4   5
. # # Ez a program szabad
szoftver; terjeszthető illetve módosítható a # Free Software
Foundation által kiadott GNU General Public License # dokumentumában
leírtak; akár a licenc 3-as, akár (tetszőleges) későbbi # változata
szerint. # # Ez a program abban a reményben kerül közreadásra, hogy
hasznos lesz, # de minden egyéb GARANCIA NÉLKÜL, az ELADHATÓSÁGRA
vagy VALAMELY CÉLRA # VALÓ ALKALMAZHATÓSÁGRA való származtatott
garanciát is beleértve. # További részleteket a GNU General Public
License tartalmaz. # # A felhasználónak a programmal együtt meg kell
kapnia a GNU General # Public License egy példányát; ha mégsem kapta
meg, akkor # tekintse meg a
oldalon. # # Version history: # # 0.0.1 Találkozás, búcsúzás és
udvariassági formulák. Kerüljük a "kivezető" # mondatokat, például:
# person1: Hogy vagy? # person2: Jól, tegnap olvastam egy jó
könyvet. // mert erre a várható válasz, hgy mit... # illetve ahol
kivezetünk jelezzük, hogy milyen lefedő állomány kell majd. -->
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://alicebot.org/2001/AIML-1.0.1
http://aitools.org/aiml/schema/AIML.xsd"> -->

SZIA

_ SZIA


_ SZIA *



SZIA
*

HELLO


SZEVA



SZEVA
*

SZEVASZ


SZEVASZ *


SZIÓKA


SZIÓKA *


ÜDV


ÜDV *


ÜDVÖZÖLLEK




ÜDVÖZÖLLEK *


SZERVUSZ


SZERVUSZ *



HELLO
*

HELLÓ


HELLÓ *


JÓNAPOT


JÓNAPOT *


ÖRÜLÖK

ÖRÜLÖK *

VISZLÁT


VISZLÁT
*
csevegő robot téma kivezet, majd le kell fedni, l. konyvtar.aiml.xml
robot.aiml.xml -->
KI
VAGY


KI VAGY
*

KÖNYVTÁROS VAGY




* KÖNYVTÁROS VAGY



TE EMBER
*

TE ROBOT *




TE EGY ROBOT *



ROBOT
VAGY


MI A FELADATOD



MI A MUNKÁD

MIVEL FOGLALKOZOL




MI A
FIGLALKOZÁSOD


MIKOR SZÜLETTÉL



VAN SZÜLINAPOD

MIKOR VAN A SZÜLINAPOD



MIKOR VAN A SZÜLETÉSNAPOD



VAN SZÜLETÉSNAPOD




KI
TANÍTOTT

KI TANÍTOTT *





HOGY VAGY



JÓL


NEM
JÓL

ROSSZUL


SEHOGY



HOGY VAGY
*


HOGY ÉRZED MAGAD

*

Example 7.3. Create your own chatterbot

Choose your interest area and create the appropriate AIML XML files for your own chat bot.
Part V. AspectJ Case Studies

In this part we introduce two AspectJ aspects. One is an analytic aspect the other is a robot soccer aspect.


Chapter 8. What is the mother tongue of the object oriented programs?

The aim of the analytic aspect to be developed is to analyse large object oriented software systems. Now we investigate the Program W that was already used in the previous case study. This theme is presented in detail in the paper [ASZ] or in online form at http://hiradastechnika.hu/data/upload/file/2012/HT2011_2_05.pdf

„NAGY TESTVÉR SZEMMEL TART”

—1984 [ORWELL]

1. An analytical weaving

Like the previous case study, this one is also based on a publication, see [ASZ] . The related source codes and resources can be found at the author's website http://www.inf.unideb.hu/~nbatfai/asz/.

The idea is that we regard the logging of a running program as a corpus of an unknown language and the aspect to be developed simply listens to method calls. The form of the words of the unknown language is the following:

the name of the caller class -> the name of the called class


and in another given case

caller class.caller method -> called class.called method

We are going to investigate the question: whether this language has the same word frequency distribution as can be observed in case of spoken languages?

We use the next pointcut to capture all method calls

pointcut fgvHivas() : call(* *(..))


&& !cflow(adviceexecution());

then the advice

before() : fgvHivas() { ... String
honnan =
thisEnclosingJoinPointStaticPart.getSignature().getDeclaringType().toString();
String hova =
thisJoinPointStaticPart.getSignature().getDeclaringType() .toString();
...

logs the honnan -> hova-shaped, or in English from -> to words.

Example 8.1. Weaving this aspect into ALICE

Weave this aspect into ALICE, simply use the Ant script provided in the package http://www.inf.unideb.hu/~nbatfai/asz/.

2. A robot soccer weaving

This is a regular exercise of the course Magas szintű programozási nyelvek 2, in the robot soccer team called GoldenTeamFC-0.0.4sumkick-project.zip, where itself the Maven's pom.xml file itself weaves the AspectJ aspect into the code of the team. In the case of GoldenTeam we need the average of the powers of all performed passes and the average of the angles of the passes. In order to compute these quantities we would need to process the all kick commands. It is a crosscutting concept and it can be implemented easily with AspectJ.

public aspect
NagytesoKick { private long szamlalo = 1; private long eroSum = 0;
private double szogSum = 0.0; before(int ero, double szog): call(*
kick(int, double)) && !cflow(adviceexecution()) &&
args(ero, szog) { System.out.println("Nagyteso> " +
thisJoinPointStaticPart.getSourceLocation());
System.out.println("Nagyteso> " +
thisJoinPointStaticPart.getKind()); System.out.println("Nagyteso> "
+ thisJoinPointStaticPart.getSignature()); ++szamlalo; eroSum += ero;
szogSum += szog; System.out.println("Nagyteso> " + (szamlalo-1));
System.out.println("Nagyteso> " + (double)eroSum / szamlalo);
System.out.println("Nagyteso> " + szogSum / szamlalo); } }

If the reader has any question about this aspect please comment on the blog post: http://progpater.blog.hu/2011/12/04/a_nagytestver_beleszott_egy_aspektust_a_csapatomba.

Example 8.2. Try this AspectJ aspect yourself

All you have to do is to download the GoldenTeam. Then let's build it and run it and see:

2519280 [GoldenFC3 Player # 6] INFO
hu.fersml.magyarfc.Jatekos - LATOM A MASIK KAPUT 6 tavolsaga = 21.5
iranya = 22.0 Nagyteso> Jatekos.java:512 Nagyteso> method-call
Nagyteso> void atan.model.ActionsPlayer.kick(int, double)
Nagyteso> 53 Nagyteso> 45.648148148148145 Nagyteso>
-1.3333333333333333

Bibliography

Quotes

[SZIRE] Jenő Wigner. Szimmetriák és reflexiók/A tudomány növekedése - kedvező kilátások és várható veszélyek (Ákos Károllyal, 1968). Gondolat, Budapest. 1972.

[METAMATH] Gregory Chaitin. META MATH! The Quest for Omega. http://arxiv.org/PS_cache/math/pdf/0404/0404335v7.pdf . 2004.

[FBB] David Kirkpatrick. The Facebook Effect: The Inside Story of the Company That Is Connecting the World. Virgin Publishing. 2011.

[IROBOT] Alex Proyas. I, Robot. http://www.imdb.com/title/tt0343818/ http://www.imdb.com/title/tt0343818/quotes . 2004.

[ORWELL] George Orwell. 1984. Európa mek.oszk.hu/00800/00896/00896.pdf. 1989.

Operating systems

[ULK] Daniel P. Bovet and Marco Cesati. Understanding the Linux Kernel. 0-596-00565-2. O'Reilly, 3rd edition. 2005.

[KERNELDEV] Jonathan Corbet, Greg Kroah-Hartman, and Amanda McPherson. Linux Kernel Development: How Fast it is Going, Who is Doing It, What They are Doing, and Who is Sponsoring It. Linux Foundation http://go.linuxfoundation.org/who-writes-linux-2012. 2012.

[MINIX] Andrew S. Tanenbaum. A UNIX clone with source code for operating systems courses. SIGOPS Operation System Rev.. Vol. 21, Issue 1. 20-29. 1987. ACM, SIGOPS Operating Systems Review http://dl.acm.org/citation.cfm?id=24596. 21. 1. 20-29. 1987.

[OS3] Andrew S. Tanenbaum and Albert S. Woodhull. Operációs rendszerek: tervezés és implementáció. PANEM. 2007.

[MINIX3_OS_BOOK] Andrew S. Tanenbaum and Albert S. Woodhull. Operating Systems Design and Implementation, Third Edition. Prentice Hall. 2006.

[OS] Andrew S. Tanenbaum and Albert S. Woodhull. Operációs rendszerek. PANEM. 1999.

[KMGUIDE] Peter Jay Salzman, Michael Burian, and Ori Pomerantz. The Linux Kernel Module Programming Guide. Linux Documentation Project http://tldp.org/LDP/lkmpg/2.6/html/index.html. 2007.

[LDD] Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman. Linux Device Drivers. O'Reilly Media, 3-rd http://lwn.net/Kernel/LDD3/. 2005.

Programming

[POPR] Norbert Bátfai. Paternoster of Programmers Reloaded: C, C++, Java, Python and AspectJ Case Studies. Kempelen Farkas Digitális Felsőoktatási Tankönyvtár http://www.tankonyvtar.hu. A szerző honlapján elérhető a saját pdf, html és epub konverziója: http://www.inf.unideb.hu/~nbatfai/konyvek. 2011.

[PARP] Norbert Bátfai. Párhuzamos programozás GNU/Linux környezetben: SysV IPC, P-szálak, OpenMP. Kempelen Farkas Digitális Felsőoktatási Tankönyvtár http://www.tankonyvtar.hu. A szerző honlapján elérhető a saját pdf, html és epub konverziója: http://www.inf.unideb.hu/~nbatfai/konyvek. 2011.

[UDPROG] Norbert Bátfai. The Yearbook of the Programmers of University of Debrecen. Kempelen Farkas Digitális Felsőoktatási Tankönyvtár http://sourceforge.net/projects/udprog/. 2014.

[MIRC] Norbert Bátfai. Mesterséges intelligencia a gyakorlatban: bevezetés a robotfoci programozásba. Kempelen Farkas Digitális Felsőoktatási Tankönyvtár http://www.tankonyvtar.hu. A szerző honlapján elérhető a saját pdf, html és epub konverziója: http://www.inf.unideb.hu/~nbatfai/konyvek. 2011.

[MOBP] Norbert Bátfai. Mobil programozás - Nehogy már megint a mobilod nyomkodjon Téged!. Kempelen Farkas Digitális Felsőoktatási Tankönyvtár http://www.tankonyvtar.hu. A szerző honlapján elérhető a saját pdf, html és epub konverziója: http://www.inf.unideb.hu/~nbatfai/konyvek. 2011.

[PP] Norbert Bátfai. Programozó Páternoszter. http://www.inf.unideb.hu/~nbatfai/ProgramozoPaternoszter.pdf . 2007.

[JAVATTANITOK] Norbert Bátfai and István Juhász. Javát tanítok. Bevezetés a programozásba a Turing gépektől a CORBA technológiáig. Kempelen Farkas Digitális Felsőoktatási Tankönyvtár http://www.tankonyvtar.hu/site/upload/pdf/b10108.pdfhttp://www.tankonyvtar.hu/informatika/javat-tanitok-javat-080904. 2007.

[NEHOGY] Norbert Bátfai. Nehogy már a mobilod nyomkodjon Téged!. 978 963 473 094 1. Debrecen, DEENK http://www.eurosmobil.hu/NehogyMar. 2008.

[COP] Norbert Bátfai. Conscious Machines and Consciousness Oriented Programming. http://arxiv.org/abs/1108.2865 . 2011.

[HELIOS] Hidehisa Akiyama and Hiroki Shimora. HELIOS2010 Team Description. http://julia.ist.tugraz.at/robocup2010/tdps/2D_TDP_HELIOS.pdf . 2010.

[UNP] W. Richard Stevens. UNIX Network Programming.. Prentice Hall PTR. 1998.

[LINUXPROG] Bányász Gábor and Tihamér Levendovszky. LINUX programozás. Szak Kiadó. 2003.

[HELIOS2011] Hidehisa Akiyama, Hiroki Shimora, Tomoharu Nakashima, Yosuke Narimoto, and Tomohiko Okayama. HELIOS2011 Team Description. http://mephisto.ist.tugraz.at/storage/f10dc198b15f91ef023c354d90b1a993_helios2011_tdp.pdf . 2011.

[EDINFERNO2D] Majd Hawasly and Subramanian Ramamoorthy. EdInferno.2D Team Description Paper for RoboCup 2011 2D Soccer Simulation League. http://wcms.inf.ed.ac.uk/ipab/robocup/research/TDP-Edinferno2D.pdf . 2011.

[PARANOID] Vahid Khodabakhshi, Mojtaba Mesri, Navid KeyhaniRad, and Hosein Zolanvar. ParaNoid 2D Soccer Simulation Team Description Paper 2011. 2011.

[NADCO2D] Mohammad Ali Sadeghi Marasht. NADCO-2D Soccer 2D Simulation Team Description Paper 2011. http://robolab.cse.unsw.edu.au/conferences/RoboCup-2011/TDPs/Soccer/Simulation/2d/S2D_NADCO-2D_TDP.pdf . 2011.

[AUA2D] Lei Tao and Runmei Zhang. AUA2D Soccer Simulation Team Description Paper for RoboCup 2011. http://mephisto.ist.tugraz.at/storage/104280b00fc97e0a88e79b36052499ea_AUA2D.pdf . 2011.

[PHOTON] Morteza Barati, Zahra Hakimi, and Amir Homayoun Javadi. Photon 2D Soccer Simulation Team Description Paper. https://sites.google.com/site/ahjavadi/Attachments/Photon%2CTPD.pdf?attredirects=0 . 2011.

[RCSSMANUAL] Mao Chen, Klaus Dorer, Ehsan Foroughi, Fredrik Heintz, ZhanXiang Huang, Spiros Kapetanakis, Kostas Kostiadis, Johan Kummeneje, Jan Murray, Itsuki Noda, Oliver Obst, Pat Riley, Timo Steffens, Yi Wang, and Xiang Yin. Users Manual RoboCup Soccer Server for Soccer Server Version 7.07 and later. https://sourceforge.net/projects/sserver/files/rcssmanual/ . 2003.

[LINUXPROG] Bányász Gábor and Tihamér Levendovszky. LINUX programozás. Szak Kiadó. 2003.

Football

[SRCSS] N. Bátfai, R. Dóczi, J. Komzsik, A. Mamenyák, Cs. Székelyhídi, J. Zákány, M. Ispány, and Gy. Terdik. Applications of a simplified protocol of RoboCup 2D Soccer Simulation. Infocommunications Journal. 5/1. 15-20. 2013. 2013.

[DEIKFOCI] Norbert Bátfai, Márton Ispány, Péter Jeszenszky, Sándor Széll, and Gábor Vaskó. A Debreceni Egyetem labdarúgást szimuláló szemináriuma. Híradástechnika. 66/1. 32-36. 2011. Híradástechnika http://www.hiradastechnika.hu/data/upload/file/2011/2011_01_01magyar/batfain.pdf. 2011.

[FERSML] Norbert Bátfai. Footballer and Football Simulation Markup Language and related Simulation Software Development. Journal of Computer Science and Control Systems. III/1. 13-18. 2010. Journal of Computer Science and Control Systems http://electroinf.uoradea.ro/reviste%20CSCS/volumes/JCSCS_Nr_1_integral.pdf. 2010.

Math

[BRILLPOT] D. R. Brillinger. A potential function approach to the flow of play in soccer. Journal of Quantitative Analysis in Sports http://www.stat.berkeley.edu/~brill/Papers/jqas.pdf. 3. 1. . 2007.

[SZSZTEK] Gábor Tusnády. Sztochasztikus számítástechnika. KLTE http://www.math-inst.hu/~tusnady/mind.pdf. 1996.

For children

[JAVACSKA] Erika Bátfai and Norbert Bátfai. Fantasztikus programozás. Debreceni Egyetem Egyetemi és Nemzeti Könyvtár http://javacska.lib.unideb.hu/konyv/bv-naploja-kezirat-I-5_0_0.pdf. 2004.

Background

[KK] Norbert Bátfai and Erika Bátfai. Virtuális könyvtáros segítheti majd a kutatókat kézirataik beküldésében a Debreceni Egyetemen. Tudományos és Műszaki Tájékoztatás. 58/1. . 2011. Tudományos és Műszaki Tájékoztatás Virtuális könyvtáros segítheti majd a kutatókat kézirataik beküldésében a Debreceni Egyetemen. 2010.

[KATEDRALIS] Eric S. Raymond. The Cathedral and the Bazaar. O'Reilly Media http://magyar-irodalom.elte.hu/robert/szovegek/bazar/ magyar fordítás: http://magyar-irodalom.elte.hu/robert/szovegek/bazar/. 1999.

[CSASZAR] Roger Penrose. A császár új elméje. Akadémiai. 1993.

[VOLF] H. H. Kornhuber, L. Deecke, and P. Scheid. Voluntary finger movement in man: Cerebral potentials and theory. Biological Cybernetics. 23. 2. 99-119. 1976.

[TCON] B. Libet, E. Wright, B. Feinstein, and D. K. Pearl. Subjective referral of the timing for a conscious sensory experience. Brain. 102. 1. 193-224. 1979.

[RUSSELLNORVIG] S. J. Russel and P. Norvig. Artificial Intelligence: a Modern Approach. 0 13 103805 2. New Jersey, Prentice-Hall, Inc.. 1995.

[AIML] R. S. Wallace. The Elements of AIML Style. http://www.alicebot.org/style.pdf . 2003.



[ASZ] Norbert Bátfai. Van-e az objektum orientált programoknak anyanyelve: avagy egy analitikai szövés bevezetése. Híradástechnika. 66/2. 27-32. 2011. Híradástechnika http://hiradastechnika.hu/data/upload/file/2012/HT2011_2_05.pdf. 2011.

Created by XMLmind XSL-FO Converter.


Download 0.51 Mb.

Share with your friends:
1   2   3   4   5




The database is protected by copyright ©ininet.org 2024
send message

    Main page